Author: rdonkin
Date: Sat Jan  5 11:32:03 2008
New Revision: 609201

URL: http://svn.apache.org/viewvc?rev=609201&view=rev
Log:
Switch Logout to use new architecture.

Removed:
    
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imap/message/response/imap4rev1/legacy/LogoutResponse.java
    
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/imap4rev1/legacy/LogoutResponseEncoder.java
Modified:
    
james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java
    
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java
    
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractImapRequestProcessor.java
    
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/LogoutProcessor.java

Modified: 
james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java?rev=609201&r1=609200&r2=609201&view=diff
==============================================================================
--- 
james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java
 (original)
+++ 
james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java
 Sat Jan  5 11:32:03 2008
@@ -19,6 +19,8 @@
 
 package org.apache.james.api.imap.display;
 
+import org.apache.james.api.imap.ImapConstants;
+
 /**
  * Keys human response text that may be displayed to the user. 
  */
@@ -43,6 +45,10 @@
     public static final HumanReadableTextKey MAILBOX_IS_READ_ONLY 
         = new 
HumanReadableTextKey("org.apache.james.imap.MAILBOX_IS_READ_ONLY",
                 "failed. Mailbox is read only.");
+    
+    public static final HumanReadableTextKey BYE 
+        = new HumanReadableTextKey("org.apache.james.imap.BYE",
+         ImapConstants.VERSION + " Server logging out");
     
     private final String defaultValue;
     private final String key;

Modified: 
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java?rev=609201&r1=609200&r2=609201&view=diff
==============================================================================
--- 
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java
 (original)
+++ 
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java
 Sat Jan  5 11:32:03 2008
@@ -32,7 +32,6 @@
 import 
org.apache.james.imapserver.codec.encode.imap4rev1.legacy.CommandFailedResponseEncoder;
 import 
org.apache.james.imapserver.codec.encode.imap4rev1.legacy.ErrorResponseEncoder;
 import 
org.apache.james.imapserver.codec.encode.imap4rev1.legacy.ExamineAndSelectResponseEncoder;
-import 
org.apache.james.imapserver.codec.encode.imap4rev1.legacy.LogoutResponseEncoder;
 import 
org.apache.james.imapserver.codec.encode.imap4rev1.server.STATUSResponseEncoder;
 import 
org.apache.james.imapserver.codec.encode.imap4rev1.server.LSubResponseEncoder;
 import 
org.apache.james.imapserver.codec.encode.imap4rev1.server.ListResponseEncoder;
@@ -54,8 +53,7 @@
         final ExistsResponseEncoder existsResponseEncoder = new 
ExistsResponseEncoder(expungeResponseEncoder);
         final STATUSResponseEncoder statusCommandResponseEncoder = new 
STATUSResponseEncoder(existsResponseEncoder);
         final SearchResponseEncoder searchResponseEncoder = new 
SearchResponseEncoder(statusCommandResponseEncoder);
-        final LogoutResponseEncoder logoutResponseEncoder = new 
LogoutResponseEncoder(searchResponseEncoder);
-        final LSubResponseEncoder lsubResponseEncoder = new 
LSubResponseEncoder(logoutResponseEncoder);
+        final LSubResponseEncoder lsubResponseEncoder = new 
LSubResponseEncoder(searchResponseEncoder);
         final ListResponseEncoder listResponseEncoder = new 
ListResponseEncoder(lsubResponseEncoder);
         final ExamineAndSelectResponseEncoder examineAndSelectResponseEncoder 
= new ExamineAndSelectResponseEncoder(listResponseEncoder);
         final ErrorResponseEncoder errorResponseEncoder = new 
ErrorResponseEncoder(examineAndSelectResponseEncoder);

Modified: 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractImapRequestProcessor.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractImapRequestProcessor.java?rev=609201&r1=609200&r2=609201&view=diff
==============================================================================
--- 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractImapRequestProcessor.java
 (original)
+++ 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractImapRequestProcessor.java
 Sat Jan  5 11:32:03 2008
@@ -138,6 +138,11 @@
         responder.respond(response);
     }
     
+    protected void bye(final ImapProcessor.Responder responder) {
+        final StatusResponse response = factory.bye(HumanReadableTextKey.BYE);
+        responder.respond(response);
+    }
+    
     protected abstract void doProcess(final ImapRequest message,
             ImapSession session, String tag, ImapCommand command, Responder 
responder)
             throws MailboxException, AuthorizationException, ProtocolException;

Modified: 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/LogoutProcessor.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/LogoutProcessor.java?rev=609201&r1=609200&r2=609201&view=diff
==============================================================================
--- 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/LogoutProcessor.java
 (original)
+++ 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/LogoutProcessor.java
 Sat Jan  5 11:32:03 2008
@@ -21,18 +21,12 @@
 
 import org.apache.james.api.imap.ImapCommand;
 import org.apache.james.api.imap.ImapMessage;
-import org.apache.james.api.imap.ProtocolException;
 import org.apache.james.api.imap.message.request.ImapRequest;
-import org.apache.james.api.imap.message.response.ImapResponseMessage;
 import 
org.apache.james.api.imap.message.response.imap4rev1.StatusResponseFactory;
 import org.apache.james.api.imap.process.ImapProcessor;
 import org.apache.james.api.imap.process.ImapSession;
-import org.apache.james.api.imap.process.ImapProcessor.Responder;
 import org.apache.james.imap.message.request.imap4rev1.LogoutRequest;
-import org.apache.james.imap.message.response.imap4rev1.legacy.LogoutResponse;
 import org.apache.james.imapserver.processor.base.AbstractImapRequestProcessor;
-import org.apache.james.imapserver.processor.base.AuthorizationException;
-import org.apache.james.imapserver.store.MailboxException;
 
 public class LogoutProcessor extends AbstractImapRequestProcessor {
 
@@ -45,26 +39,9 @@
     }
 
     protected void doProcess(ImapRequest message,
-            ImapSession session, String tag, ImapCommand command, Responder 
responder)
-            throws MailboxException, AuthorizationException, ProtocolException 
{
-        final LogoutRequest request = (LogoutRequest) message;
-        final ImapResponseMessage result = doProcess(request, session, tag,
-                command);
-        responder.respond(result);
-    }
-
-    private ImapResponseMessage doProcess(LogoutRequest request,
-            ImapSession session, String tag, ImapCommand command)
-            throws MailboxException, AuthorizationException, ProtocolException 
{
-        final ImapResponseMessage result = doProcess(session, tag, command);
-        return result;
-    }
-
-    private ImapResponseMessage doProcess(ImapSession session, String tag,
-            ImapCommand command) throws MailboxException,
-            AuthorizationException, ProtocolException {
+            ImapSession session, String tag, ImapCommand command, Responder 
responder) {
         session.logout();
-        final LogoutResponse result = new LogoutResponse(command, tag);
-        return result;
+        bye(responder);
+        okComplete(command, tag, responder);
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to