Author: norman
Date: Fri Nov 18 14:29:13 2011
New Revision: 1203665

URL: http://svn.apache.org/viewvc?rev=1203665&view=rev
Log:
Rename AbstractSession to ProtocolSessionImpl and make it non-abstract.

Added:
    
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java
      - copied, changed from r1203663, 
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/AbstractSession.java
Removed:
    
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/AbstractSession.java
Modified:
    
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/LineHandlerUpstreamHandler.java
    
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyProtocolTransport.java
    
james/protocols/trunk/pop3/src/main/java/org/apache/james/protocols/pop3/POP3SessionImpl.java

Copied: 
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java
 (from r1203663, 
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/AbstractSession.java)
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java?p2=james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java&p1=james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/AbstractSession.java&r1=1203663&r2=1203665&rev=1203665&view=diff
==============================================================================
--- 
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/AbstractSession.java
 (original)
+++ 
james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java
 Fri Nov 18 14:29:13 2011
@@ -28,11 +28,11 @@ import org.apache.james.protocols.api.Pr
 import org.slf4j.Logger;
 
 /**
- * Abstract implementation of {@link ProtocolSession}
+ * Basic implementation of {@link ProtocolSession}
  * 
  * 
  */
-public abstract class AbstractSession implements ProtocolSession {
+public class ProtocolSessionImpl implements ProtocolSession {
 
     private final InetSocketAddress remoteAddress;
     private Logger logger;
@@ -48,7 +48,7 @@ public abstract class AbstractSession im
        private final InetSocketAddress localAddress;
 
     
-    public AbstractSession(Logger logger, ProtocolTransport transport) {
+    public ProtocolSessionImpl(Logger logger, ProtocolTransport transport) {
         this.transport = transport;
         this.remoteAddress = transport.getRemoteAddress();
         this.localAddress = transport.getRemoteAddress();
@@ -152,4 +152,28 @@ public abstract class AbstractSession im
         return sessionState;
     }
 
+    /**
+     * This implementation just returns <code>null</code>. Sub-classes should 
overwrite this if needed
+     */
+       @Override
+       public Response newLineTooLongResponse() {
+               return null;
+       }
+
+    /**
+     * This implementation just returns <code>null</code>. Sub-classes should 
overwrite this if needed
+     */
+       @Override
+       public Response newFatalErrorResponse() {
+               return null;
+       }
+
+       /**
+        * This implementation just clears the sessions state. Sub-classes 
should overwrite this if needed
+        */
+       @Override
+       public void resetState() {
+               sessionState.clear();
+       }
+
 }

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=1203665&r1=1203664&r2=1203665&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
 Fri Nov 18 14:29:13 2011
@@ -24,7 +24,7 @@ import java.util.List;
 import javax.net.ssl.SSLContext;
 import javax.net.ssl.SSLEngine;
 
-import org.apache.james.protocols.api.AbstractSession;
+import org.apache.james.protocols.api.ProtocolSessionImpl;
 import org.apache.james.protocols.api.FutureResponse;
 import org.apache.james.protocols.api.Protocol;
 import org.apache.james.protocols.api.ProtocolSession;
@@ -108,7 +108,7 @@ public class BasicChannelUpstreamHandler
                 }
                 if (response != null) {
                     // TODO: This kind of sucks but I was able to come up with 
something more elegant here
-                    
((AbstractSession)session).getProtocolTransport().writeResponse(response, 
session);
+                    
((ProtocolSessionImpl)session).getProtocolTransport().writeResponse(response, 
session);
                 }
                
             }
@@ -170,7 +170,7 @@ public class BasicChannelUpstreamHandler
             }
             if (response != null) {
                 // TODO: This kind of sucks but I was able to come up with 
something more elegant here
-                
((AbstractSession)pSession).getProtocolTransport().writeResponse(response, 
pSession);
+                
((ProtocolSessionImpl)pSession).getProtocolTransport().writeResponse(response, 
pSession);
             }
 
         }
@@ -223,13 +223,13 @@ public class BasicChannelUpstreamHandler
         ProtocolSession session = (ProtocolSession) ctx.getAttachment();
         if (e.getCause() instanceof TooLongFrameException) {
             Response r = session.newLineTooLongResponse();
-            ProtocolTransport transport = 
((AbstractSession)session).getProtocolTransport();
+            ProtocolTransport transport = 
((ProtocolSessionImpl)session).getProtocolTransport();
             if (r != null)  {
                 transport.writeResponse(r, session);
             }
         } else {
             if (channel.isConnected()) {
-                ProtocolTransport transport = 
((AbstractSession)session).getProtocolTransport();
+                ProtocolTransport transport = 
((ProtocolSessionImpl)session).getProtocolTransport();
 
                 Response r = session.newFatalErrorResponse();
                 if (r != null) {

Modified: 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/LineHandlerUpstreamHandler.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/LineHandlerUpstreamHandler.java?rev=1203665&r1=1203664&r2=1203665&view=diff
==============================================================================
--- 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/LineHandlerUpstreamHandler.java
 (original)
+++ 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/LineHandlerUpstreamHandler.java
 Fri Nov 18 14:29:13 2011
@@ -18,7 +18,7 @@
  ****************************************************************/
 package org.apache.james.protocols.impl;
 
-import org.apache.james.protocols.api.AbstractSession;
+import org.apache.james.protocols.api.ProtocolSessionImpl;
 import org.apache.james.protocols.api.ProtocolSession;
 import org.apache.james.protocols.api.Response;
 import org.apache.james.protocols.api.handler.LineHandler;
@@ -65,7 +65,7 @@ public class LineHandlerUpstreamHandler<
         Response response = handler.onLine(session, line); 
         if (response != null) {
             // TODO: This kind of sucks but I was able to come up with 
something more elegant here
-            
((AbstractSession)session).getProtocolTransport().writeResponse(response, 
session);
+            
((ProtocolSessionImpl)session).getProtocolTransport().writeResponse(response, 
session);
         }
     }
 

Modified: 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyProtocolTransport.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyProtocolTransport.java?rev=1203665&r1=1203664&r2=1203665&view=diff
==============================================================================
--- 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyProtocolTransport.java
 (original)
+++ 
james/protocols/trunk/impl/src/main/java/org/apache/james/protocols/impl/NettyProtocolTransport.java
 Fri Nov 18 14:29:13 2011
@@ -145,6 +145,11 @@ public class NettyProtocolTransport exte
        public boolean isReadable() {
                return channel.isReadable();
        }
+
+       @Override
+       public InetSocketAddress getLocalAddress() {
+               return (InetSocketAddress) channel.getLocalAddress();
+       }
     
     
     

Modified: 
james/protocols/trunk/pop3/src/main/java/org/apache/james/protocols/pop3/POP3SessionImpl.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/pop3/src/main/java/org/apache/james/protocols/pop3/POP3SessionImpl.java?rev=1203665&r1=1203664&r2=1203665&view=diff
==============================================================================
--- 
james/protocols/trunk/pop3/src/main/java/org/apache/james/protocols/pop3/POP3SessionImpl.java
 (original)
+++ 
james/protocols/trunk/pop3/src/main/java/org/apache/james/protocols/pop3/POP3SessionImpl.java
 Fri Nov 18 14:29:13 2011
@@ -18,7 +18,7 @@
  ****************************************************************/
 package org.apache.james.protocols.pop3;
 
-import org.apache.james.protocols.api.AbstractSession;
+import org.apache.james.protocols.api.ProtocolSessionImpl;
 import org.apache.james.protocols.api.ProtocolTransport;
 import org.apache.james.protocols.api.Response;
 import org.apache.james.protocols.pop3.mailbox.Mailbox;
@@ -27,7 +27,7 @@ import org.slf4j.Logger;
 /**
  * {@link POP3Session} implementation which use Netty
  */
-public class POP3SessionImpl extends AbstractSession implements POP3Session {
+public class POP3SessionImpl extends ProtocolSessionImpl implements 
POP3Session {
     private POP3HandlerConfiguration configData;
 
     private int handlerState;



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to