Author: markt Date: Thu Sep 3 13:40:48 2015 New Revision: 1701020 URL: http://svn.apache.org/r1701020 Log: Refactor. Move C2BConverter creation into a dedicated method.
Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java?rev=1701020&r1=1701019&r2=1701020&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Thu Sep 3 13:40:48 2015 @@ -572,28 +572,33 @@ public class OutputBuffer extends Writer conv = encoders.get(charset); if (conv == null) { - if (Globals.IS_SECURITY_ENABLED){ - try { - conv = AccessController.doPrivileged( - new PrivilegedExceptionAction<C2BConverter>(){ + conv = createNewConverter(charset); + encoders.put(charset, conv); + } + } - @Override - public C2BConverter run() throws IOException{ - return new C2BConverter(charset); - } + + private static C2BConverter createNewConverter(Charset charset) throws IOException { + if (Globals.IS_SECURITY_ENABLED){ + try { + return AccessController.doPrivileged( + new PrivilegedExceptionAction<C2BConverter>(){ + @Override + public C2BConverter run() throws IOException{ + return new C2BConverter(charset); } - ); - } catch (PrivilegedActionException ex) { - Exception e = ex.getException(); - if (e instanceof IOException) { - throw (IOException)e; - } + } + ); + } catch (PrivilegedActionException ex) { + Exception e = ex.getException(); + if (e instanceof IOException) { + throw (IOException) e; + } else { + throw new IOException(ex); } - } else { - conv = new C2BConverter(charset); } - - encoders.put(charset, conv); + } else { + return new C2BConverter(charset); } } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org