Author: norman
Date: Tue Sep 27 10:09:19 2011
New Revision: 1176306

URL: http://svn.apache.org/viewvc?rev=1176306&view=rev
Log:
Merge ProtocolSessionFactory and Protocol interfaces

Removed:
    
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionFactory.java
Modified:
    
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/Protocol.java
    
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/BasicChannelUpstreamHandler.java
    
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyServer.java
    
james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/SMTPProtocol.java

Modified: 
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/Protocol.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/Protocol.java?rev=1176306&r1=1176305&r2=1176306&view=diff
==============================================================================
--- 
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/Protocol.java
 (original)
+++ 
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/Protocol.java
 Tue Sep 27 10:09:19 2011
@@ -26,10 +26,21 @@ import org.apache.james.protocols.api.ha
  */
 public interface Protocol {
 
+    /**
+     * Return the {@link ProtocolHandlerChain} which is defined for the {@link 
Protocol}
+     * @return
+     */
     ProtocolHandlerChain getProtocolChain();
 
-    ProtocolSessionFactory getProtocolSessionFactory();
-
+    
+    /**
+     * Create a new {@link ProtocolSession} for the given {@link 
ProtocolTransport} 
+     * 
+     * @param transport
+     * @return session
+     */
+    ProtocolSession newSession(ProtocolTransport transport);
+    
     boolean isStartTLSSupported();
 
 }

Modified: 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/BasicChannelUpstreamHandler.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/BasicChannelUpstreamHandler.java?rev=1176306&r1=1176305&r2=1176306&view=diff
==============================================================================
--- 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/BasicChannelUpstreamHandler.java
 (original)
+++ 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/BasicChannelUpstreamHandler.java
 Tue Sep 27 10:09:19 2011
@@ -25,8 +25,8 @@ import javax.net.ssl.SSLContext;
 import javax.net.ssl.SSLEngine;
 
 import org.apache.james.protocols.api.AbstractSession;
+import org.apache.james.protocols.api.Protocol;
 import org.apache.james.protocols.api.ProtocolSession;
-import org.apache.james.protocols.api.ProtocolSessionFactory;
 import org.apache.james.protocols.api.Response;
 import org.apache.james.protocols.api.handler.ConnectHandler;
 import org.apache.james.protocols.api.handler.DisconnectHandler;
@@ -56,16 +56,16 @@ public class BasicChannelUpstreamHandler
     protected final Logger logger;
     protected final SSLContext context;
     protected String[] enabledCipherSuites;
-    protected ProtocolSessionFactory sessionFactory;
+    protected Protocol protocol;
     protected ProtocolHandlerChain chain;
 
-    public BasicChannelUpstreamHandler(ProtocolHandlerChain chain, 
ProtocolSessionFactory sessionFactory, Logger logger) {
-        this(chain, sessionFactory, logger, null, null);
+    public BasicChannelUpstreamHandler(ProtocolHandlerChain chain, Protocol 
protocol, Logger logger) {
+        this(chain, protocol, logger, null, null);
     }
 
-    public BasicChannelUpstreamHandler(ProtocolHandlerChain chain, 
ProtocolSessionFactory sessionFactory, Logger logger, SSLContext context, 
String[] enabledCipherSuites) {
+    public BasicChannelUpstreamHandler(ProtocolHandlerChain chain, Protocol 
protocol, Logger logger, SSLContext context, String[] enabledCipherSuites) {
         this.chain = chain;
-        this.sessionFactory = sessionFactory;
+        this.protocol = protocol;
         this.logger = logger;
         this.context = context;
         this.enabledCipherSuites = enabledCipherSuites;
@@ -204,7 +204,7 @@ public class BasicChannelUpstreamHandler
             }
         }
         
-        return sessionFactory.newSession(new 
NettyProtocolTransport(ctx.getChannel(), engine));
+        return protocol.newSession(new 
NettyProtocolTransport(ctx.getChannel(), engine));
     }
 
     @Override

Modified: 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyServer.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyServer.java?rev=1176306&r1=1176305&r2=1176306&view=diff
==============================================================================
--- 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyServer.java
 (original)
+++ 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyServer.java
 Tue Sep 27 10:09:19 2011
@@ -90,7 +90,7 @@ public class NettyServer extends Abstrac
     
     @Override
     public synchronized void bind() throws Exception {
-        coreHandler = new 
BasicChannelUpstreamHandler(protocol.getProtocolChain(), 
protocol.getProtocolSessionFactory(), logger, context, null);
+        coreHandler = new 
BasicChannelUpstreamHandler(protocol.getProtocolChain(), protocol, logger, 
context, null);
         super.bind();
     }
 

Modified: 
james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/SMTPProtocol.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/SMTPProtocol.java?rev=1176306&r1=1176305&r2=1176306&view=diff
==============================================================================
--- 
james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/SMTPProtocol.java
 (original)
+++ 
james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/SMTPProtocol.java
 Tue Sep 27 10:09:19 2011
@@ -21,9 +21,7 @@ package org.apache.james.protocols.smtp;
 
 import org.apache.james.protocols.api.Protocol;
 import org.apache.james.protocols.api.ProtocolSession;
-import org.apache.james.protocols.api.ProtocolSessionFactory;
 import org.apache.james.protocols.api.ProtocolTransport;
-import org.apache.james.protocols.api.Response;
 import org.apache.james.protocols.api.handler.ProtocolHandlerChain;
 import org.apache.james.protocols.smtp.SMTPConfiguration;
 import org.apache.james.protocols.smtp.SMTPSessionImpl;
@@ -46,21 +44,13 @@ public class SMTPProtocol implements Pro
         return chain;
     }
 
-    public ProtocolSessionFactory getProtocolSessionFactory() {
-        return new ProtocolSessionFactory() {
-            
-            public ProtocolSession newSession(ProtocolTransport transport) {
-                return new SMTPSessionImpl(config, logger, transport);
-            }
-        };
-    }
 
     public boolean isStartTLSSupported() {
         return config.isStartTLSSupported();
     }
 
-    public Class<? extends Response> getResponseClass() {
-        return Response.class;
+    public ProtocolSession newSession(ProtocolTransport transport) {
+        return new SMTPSessionImpl(config, logger, transport);
     }
 
 }



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

Reply via email to