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: [email protected]
For additional commands, e-mail: [email protected]