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]