You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2010/11/26 21:00:14 UTC

svn commit: r1039539 - in /james/server/trunk: pop3server/src/main/java/org/apache/james/pop3server/core/ remotemanager/src/main/java/org/apache/james/remotemanager/core/ smtpserver/src/main/java/org/apache/james/smtpserver/

Author: norman
Date: Fri Nov 26 20:00:13 2010
New Revision: 1039539

URL: http://svn.apache.org/viewvc?rev=1039539&view=rev
Log:
Allow to disconnect channel from LineHandler/ConnectHandler. See PROTOCOLS-13

Modified:
    james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/POP3CommandDispatcherLineHandler.java
    james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/WelcomeMessageHandler.java
    james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java
    james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/POP3BeforeSMTPHandler.java

Modified: james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/POP3CommandDispatcherLineHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/POP3CommandDispatcherLineHandler.java?rev=1039539&r1=1039538&r2=1039539&view=diff
==============================================================================
--- james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/POP3CommandDispatcherLineHandler.java (original)
+++ james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/POP3CommandDispatcherLineHandler.java Fri Nov 26 20:00:13 2010
@@ -67,18 +67,19 @@ public class POP3CommandDispatcherLineHa
     }
 
     @Override
-    public void onLine(POP3Session session, byte[] line) {
+    public boolean onLine(POP3Session session, byte[] line) {
         MailboxSession mSession = (MailboxSession) session.getState().get(POP3Session.MAILBOX_SESSION);
 
         // notify the mailboxmanager about the start of the processing
         manager.startProcessingRequest(mSession);
 
         // do the processing
-        super.onLine(session, line);
+        boolean disconnect = super.onLine(session, line);
 
         // notify the mailboxmanager about the end of the processing
         manager.endProcessingRequest(mSession);
-
+        return disconnect;
+        
     }
 
 }

Modified: james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/WelcomeMessageHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/WelcomeMessageHandler.java?rev=1039539&r1=1039538&r2=1039539&view=diff
==============================================================================
--- james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/WelcomeMessageHandler.java (original)
+++ james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/core/WelcomeMessageHandler.java Fri Nov 26 20:00:13 2010
@@ -30,7 +30,7 @@ public class WelcomeMessageHandler imple
     /**
      * @see org.apache.james.pop3server.ConnectHandler#onConnect(org.apache.james.pop3server.POP3Session)
      */
-    public void onConnect(POP3Session session) {
+    public boolean onConnect(POP3Session session) {
         StringBuilder responseBuffer = new StringBuilder();
 
         // Initially greet the connector
@@ -38,6 +38,7 @@ public class WelcomeMessageHandler imple
         responseBuffer.append(session.getConfigurationData().getHelloName()).append(" POP3 server (").append(softwaretype).append(") ready ");
         POP3Response response = new POP3Response(POP3Response.OK_RESPONSE, responseBuffer.toString());
         session.writeResponse(response);
+        return false;
     }
 
 }

Modified: james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java?rev=1039539&r1=1039538&r2=1039539&view=diff
==============================================================================
--- james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java (original)
+++ james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/core/AuthorizationHandler.java Fri Nov 26 20:00:13 2010
@@ -43,7 +43,7 @@ public class AuthorizationHandler implem
      * org.apache.james.remotemanager.ConnectHandler#onConnect(org.apache.james
      * .remotemanager.RemoteManagerSession)
      */
-    public void onConnect(RemoteManagerSession session) {
+    public boolean onConnect(RemoteManagerSession session) {
         RemoteManagerResponse response = new RemoteManagerResponse("JAMES Remote Administration Tool ");// +
         // Constants.SOFTWARE_VERSION)
         response.appendLine("Please enter your login and password");
@@ -52,11 +52,12 @@ public class AuthorizationHandler implem
         session.writeResponse(response);
         session.pushLineHandler(lineHandler);
         session.getState().put(AUTHORIZATION_STATE, LOGIN_SUPPLIED);
+        return false;
     }
     
     private final class AuthorizationLineHandler implements LineHandler<RemoteManagerSession> {
 
-        public void onLine(RemoteManagerSession session, byte[] byteLine) {
+        public boolean onLine(RemoteManagerSession session, byte[] byteLine) {
             try {
                 String line = new String(byteLine, "ISO-8859-1").trim();
                 int state = (Integer) session.getState().get(AUTHORIZATION_STATE);
@@ -94,7 +95,8 @@ public class AuthorizationHandler implem
                 e.printStackTrace();
                 
             }
-           
+            return false;
+
         }
     }
 

Modified: james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/POP3BeforeSMTPHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/POP3BeforeSMTPHandler.java?rev=1039539&r1=1039538&r2=1039539&view=diff
==============================================================================
--- james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/POP3BeforeSMTPHandler.java (original)
+++ james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/POP3BeforeSMTPHandler.java Fri Nov 26 20:00:13 2010
@@ -67,7 +67,7 @@ public class POP3BeforeSMTPHandler imple
     /**
      * @see org.apache.james.smtpserver.protocol.ConnectHandler#onConnect(SMTPSession)
      */
-    public void onConnect(SMTPSession session) {
+    public boolean onConnect(SMTPSession session) {
 
         // some kind of random cleanup process
         if (Math.random() > 0.99) {
@@ -79,6 +79,7 @@ public class POP3BeforeSMTPHandler imple
                 && POP3BeforeSMTPHelper.isAuthorized(session.getRemoteIPAddress())) {
             session.setRelayingAllowed(true);
         }
+        return false;
     }
 
 }



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