Author: markt
Date: Tue Mar  8 14:03:20 2011
New Revision: 1079360

URL: http://svn.apache.org/viewvc?rev=1079360&view=rev
Log:
Add the hooks (no implementation yet) for BIO and NIO to share the code that is 
currently in JSSESocketFactory

Added:
    tomcat/trunk/java/org/apache/tomcat/util/net/SSLUtil.java   (with props)
Modified:
    tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java
    tomcat/trunk/java/org/apache/tomcat/util/net/SSLImplementation.java
    tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java
    tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java

Modified: tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java?rev=1079360&r1=1079359&r2=1079360&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java Tue Mar  8 
14:03:20 2011
@@ -94,6 +94,8 @@ public class NioEndpoint extends Abstrac
      */
     protected ServerSocketChannel serverSock = null;
     
+    protected SSLUtil sslUtil = null;
+
     /**
      * use send file
      */
@@ -477,6 +479,9 @@ public class NioEndpoint extends Abstrac
 
         // Initialize SSL if needed
         if (isSSLEnabled()) {
+            if (sslUtil == null) {
+                sslUtil = handler.getSslImplementation().getSSLUtil(this);
+            }
             // Initialize SSL
             String keystorePass = getKeystorePass();
             if (keystorePass == null) {

Modified: tomcat/trunk/java/org/apache/tomcat/util/net/SSLImplementation.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/SSLImplementation.java?rev=1079360&r1=1079359&r2=1079360&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/SSLImplementation.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/SSLImplementation.java Tue Mar 
 8 14:03:20 2011
@@ -86,4 +86,6 @@ public abstract class SSLImplementation 
     public abstract SSLSupport getSSLSupport(Socket sock);
 
     public abstract SSLSupport getSSLSupport(SSLSession session);
+
+    public abstract SSLUtil getSSLUtil(AbstractEndpoint ep);
 }

Added: tomcat/trunk/java/org/apache/tomcat/util/net/SSLUtil.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/SSLUtil.java?rev=1079360&view=auto
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/SSLUtil.java (added)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/SSLUtil.java Tue Mar  8 
14:03:20 2011
@@ -0,0 +1,21 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.tomcat.util.net;
+
+public interface SSLUtil {
+
+}

Propchange: tomcat/trunk/java/org/apache/tomcat/util/net/SSLUtil.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: 
tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java?rev=1079360&r1=1079359&r2=1079360&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java 
Tue Mar  8 14:03:20 2011
@@ -25,6 +25,7 @@ import javax.net.ssl.SSLSocket;
 import org.apache.tomcat.util.net.AbstractEndpoint;
 import org.apache.tomcat.util.net.SSLImplementation;
 import org.apache.tomcat.util.net.SSLSupport;
+import org.apache.tomcat.util.net.SSLUtil;
 import org.apache.tomcat.util.net.ServerSocketFactory;
 
 /* JSSEImplementation:
@@ -56,4 +57,8 @@ public class JSSEImplementation extends 
         return new JSSESupport(session);
     }
 
+    @Override
+    public SSLUtil getSSLUtil(AbstractEndpoint endpoint) {
+        return new JSSESocketFactory(endpoint);
+    }
 }

Modified: 
tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java?rev=1079360&r1=1079359&r2=1079360&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java 
Tue Mar  8 14:03:20 2011
@@ -62,6 +62,7 @@ import javax.net.ssl.X509KeyManager;
 
 import org.apache.tomcat.util.net.AbstractEndpoint;
 import org.apache.tomcat.util.net.Constants;
+import org.apache.tomcat.util.net.SSLUtil;
 import org.apache.tomcat.util.net.ServerSocketFactory;
 import org.apache.tomcat.util.res.StringManager;
 
@@ -78,7 +79,7 @@ import org.apache.tomcat.util.res.String
  * @author Jan Luehe
  * @author Bill Barker
  */
-public class JSSESocketFactory implements ServerSocketFactory {
+public class JSSESocketFactory implements ServerSocketFactory, SSLUtil {
 
     private static final org.apache.juli.logging.Log log =
         org.apache.juli.logging.LogFactory.getLog(JSSESocketFactory.class);



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to