Author: remm Date: Thu Jun 18 12:57:13 2015 New Revision: 1686209 URL: http://svn.apache.org/r1686209 Log: Make sslImplementationName a special attribute (like protocol) so that it is set before any other and can be used to validate.
Modified: tomcat/trunk/java/org/apache/catalina/startup/ConnectorCreateRule.java tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties Modified: tomcat/trunk/java/org/apache/catalina/startup/ConnectorCreateRule.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/ConnectorCreateRule.java?rev=1686209&r1=1686208&r2=1686209&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/startup/ConnectorCreateRule.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/ConnectorCreateRule.java Thu Jun 18 12:57:13 2015 @@ -28,6 +28,7 @@ import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; import org.apache.tomcat.util.IntrospectionUtils; import org.apache.tomcat.util.digester.Rule; +import org.apache.tomcat.util.res.StringManager; import org.xml.sax.Attributes; @@ -38,6 +39,7 @@ import org.xml.sax.Attributes; public class ConnectorCreateRule extends Rule { private static final Log log = LogFactory.getLog(ConnectorCreateRule.class); + protected static final StringManager sm = StringManager.getManager(ConnectorCreateRule.class); // --------------------------------------------------------- Public Methods @@ -60,20 +62,33 @@ public class ConnectorCreateRule extends ex = svc.getExecutor(attributes.getValue("executor")); } Connector con = new Connector(attributes.getValue("protocol")); - if ( ex != null ) _setExecutor(con,ex); - + if (ex != null) { + setExecutor(con, ex); + } + String sslImplementationName = attributes.getValue("sslImplementationName"); + if (sslImplementationName != null) { + setSSLImplementationName(con, sslImplementationName); + } digester.push(con); } - public void _setExecutor(Connector con, Executor ex) throws Exception { + private static void setExecutor(Connector con, Executor ex) throws Exception { Method m = IntrospectionUtils.findMethod(con.getProtocolHandler().getClass(),"setExecutor",new Class[] {java.util.concurrent.Executor.class}); if (m!=null) { m.invoke(con.getProtocolHandler(), new Object[] {ex}); }else { - log.warn("Connector ["+con+"] does not support external executors. Method setExecutor(java.util.concurrent.Executor) not found."); + log.warn(sm.getString("connector.noSetExecutor", con)); } } + private static void setSSLImplementationName(Connector con, String sslImplementationName) throws Exception { + Method m = IntrospectionUtils.findMethod(con.getProtocolHandler().getClass(),"setSslImplementationName",new Class[] {String.class}); + if (m != null) { + m.invoke(con.getProtocolHandler(), new Object[] {sslImplementationName}); + } else { + log.warn(sm.getString("connector.noSetSSLImplementationName", con)); + } + } /** * Process the end of this element. Modified: tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties?rev=1686209&r1=1686208&r2=1686209&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties (original) +++ tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties Thu Jun 18 12:57:13 2015 @@ -137,3 +137,7 @@ versionLoggerListener.arg versionLoggerListener.env =Environment variable: {0} = {1} versionLoggerListener.prop =System property: {0} = {1} webAnnotationSet.invalidInjection=Invalid method resource injection annotation. + +connector.noSetExecutor=Connector [{0}] does not support external executors. Method setExecutor(java.util.concurrent.Executor) not found. +connector.noSetSSLImplementationName=Connector [{0}] does not support changing the SSL implementation. Method setSslImplementationName(String) not found. + \ No newline at end of file --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org