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 rd...@apache.org on 2007/05/28 22:43:23 UTC

svn commit: r542319 - in /james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src: main/java/org/apache/james/experimental/imapserver/ main/java/org/apache/james/experimental/imapserver/processor/base/ main/java/org/apache/james/expe...

Author: rdonkin
Date: Mon May 28 13:43:21 2007
New Revision: 542319

URL: http://svn.apache.org/viewvc?view=rev&rev=542319
Log:
Move full name calculation code into processors.

Added:
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractMailboxAwareProcessor.java
Modified:
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapHandler.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSession.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSessionImpl.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractImapRequestProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AppendProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CopyProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CreateProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/DeleteProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExamineProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExpungeProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/FetchProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/Imap4Rev1ProcessorFactory.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/RenameProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SelectProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/StatusProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SubscribeProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/UnsubscribeProcessor.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/main/DefaultImapProcessorFactory.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/AbstractCommandTest.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/CreateCommandTest.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/SubscribeCommandTest.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/UnsubscribeCommandTest.java
    james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/session/AbstractSessionTest.java

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapHandler.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapHandler.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapHandler.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapHandler.java Mon May 28 13:43:21 2007
@@ -31,6 +31,7 @@
 import org.apache.james.core.AbstractJamesHandler;
 import org.apache.james.experimental.imapserver.encode.OutputStreamImapResponseWriter;
 import org.apache.james.experimental.imapserver.processor.main.DefaultImapProcessorFactory;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 import org.apache.james.services.UsersRepository;
 
 /**
@@ -70,8 +71,10 @@
         if (theData instanceof ImapHandlerConfigurationData) {
             theConfigData = (ImapHandlerConfigurationData) theData;
             final UsersRepository usersRepository = theConfigData.getUsersRepository();
+            final MailboxManagerProvider mailboxManagerProvider = theConfigData.getMailboxManagerProvider();
 //          TODO: inject dependency
-            requestHandler = new ImapRequestHandler(StandardFactory.createDecoder(), DefaultImapProcessorFactory.createDefaultProcessor(usersRepository));
+            requestHandler = new ImapRequestHandler(StandardFactory.createDecoder(), 
+                    DefaultImapProcessorFactory.createDefaultProcessor(usersRepository, mailboxManagerProvider));
         } else {
             throw new IllegalArgumentException("Configuration object does not implement POP3HandlerConfigurationData");
         }

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSession.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSession.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSession.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSession.java Mon May 28 13:43:21 2007
@@ -113,6 +113,4 @@
 
     MailboxManager getMailboxManager() throws MailboxManagerException;
 
-    String buildFullName(String mailboxName) throws MailboxManagerException;
-
 }

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSessionImpl.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSessionImpl.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSessionImpl.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/ImapSessionImpl.java Mon May 28 13:43:21 2007
@@ -199,13 +199,4 @@
         }
         return mailboxManager;
     }
-
-
-
-    public String buildFullName(String mailboxName) throws MailboxManagerException {
-        if (!mailboxName.startsWith(NAMESPACE_PREFIX)) {
-            mailboxName = mailboxManagerProvider.getPersonalDefaultNamespace(user).getName()+HIERARCHY_DELIMITER+mailboxName;
-        }
-        return mailboxName;
-    }
 }

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractImapRequestProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractImapRequestProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractImapRequestProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractImapRequestProcessor.java Mon May 28 13:43:21 2007
@@ -20,6 +20,7 @@
 
 import org.apache.avalon.framework.logger.Logger;
 import org.apache.james.api.imap.ImapCommand;
+import org.apache.james.api.imap.ImapConstants;
 import org.apache.james.api.imap.ImapMessage;
 import org.apache.james.api.imap.ProtocolException;
 import org.apache.james.experimental.imapserver.AuthorizationException;
@@ -32,8 +33,9 @@
 import org.apache.james.imapserver.store.MailboxException;
 
 abstract public class AbstractImapRequestProcessor extends
-        AbstractChainedImapProcessor {
+        AbstractChainedImapProcessor implements ImapConstants {
 
+    
     public AbstractImapRequestProcessor(final ImapProcessor next) {
         super(next);
     }
@@ -92,4 +94,6 @@
     protected abstract ImapResponseMessage doProcess(final ImapRequest message,
             ImapSession session, String tag, ImapCommand command)
             throws MailboxException, AuthorizationException, ProtocolException;
+    
+
 }

Added: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractMailboxAwareProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractMailboxAwareProcessor.java?view=auto&rev=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractMailboxAwareProcessor.java (added)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/base/AbstractMailboxAwareProcessor.java Mon May 28 13:43:21 2007
@@ -0,0 +1,44 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one   *
+ * or more contributor license agreements.  See the NOTICE file *
+ * distributed with this work for additional information        *
+ * regarding copyright ownership.  The ASF licenses this file   *
+ * to you under the Apache License, Version 2.0 (the            *
+ * "License"); you may not use this file except in compliance   *
+ * with the License.  You may obtain a copy of the License at   *
+ *                                                              *
+ *   http://www.apache.org/licenses/LICENSE-2.0                 *
+ *                                                              *
+ * Unless required by applicable law or agreed to in writing,   *
+ * software distributed under the License is distributed on an  *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+ * KIND, either express or implied.  See the License for the    *
+ * specific language governing permissions and limitations      *
+ * under the License.                                           *
+ ****************************************************************/
+package org.apache.james.experimental.imapserver.processor.base;
+
+import org.apache.james.experimental.imapserver.ImapSession;
+import org.apache.james.experimental.imapserver.processor.ImapProcessor;
+import org.apache.james.mailboxmanager.MailboxManagerException;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
+import org.apache.james.services.User;
+
+abstract public class AbstractMailboxAwareProcessor extends AbstractImapRequestProcessor {
+
+    private final MailboxManagerProvider mailboxManagerProvider;
+    
+    public AbstractMailboxAwareProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next);
+        this.mailboxManagerProvider = mailboxManagerProvider;
+    }
+    
+    public String buildFullName(final ImapSession session, String mailboxName) throws MailboxManagerException {
+        User user = session.getUser();
+        if (!mailboxName.startsWith(NAMESPACE_PREFIX)) {
+            mailboxName = mailboxManagerProvider.getPersonalDefaultNamespace(user).getName()+HIERARCHY_DELIMITER+mailboxName;
+        }
+        return mailboxName;
+    }
+}

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java Mon May 28 13:43:21 2007
@@ -28,17 +28,19 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.message.response.imap4rev1.ExamineAndSelectResponse;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
-import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
+import org.apache.james.experimental.imapserver.processor.base.AbstractMailboxAwareProcessor;
 import org.apache.james.imapserver.store.MailboxException;
 import org.apache.james.mailboxmanager.MailboxManagerException;
 import org.apache.james.mailboxmanager.MessageResult;
 import org.apache.james.mailboxmanager.mailbox.ImapMailboxSession;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
-abstract public class AbstractMailboxSelectionProcessor extends AbstractImapRequestProcessor {
+abstract public class AbstractMailboxSelectionProcessor extends AbstractMailboxAwareProcessor {
 	
-	public AbstractMailboxSelectionProcessor(final ImapProcessor next) {
-        super(next);
+	public AbstractMailboxSelectionProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
 	protected final ImapResponseMessage doProcess(String mailboxName, boolean isExamine,
@@ -46,7 +48,7 @@
         ImapResponseMessage result;
         session.deselect();
         try {
-            String fullMailboxName=session.buildFullName(mailboxName);
+            String fullMailboxName=buildFullName(session, mailboxName);
             selectMailbox(fullMailboxName, session, isExamine);
             ImapMailboxSession mailbox = session.getSelected().getMailbox();
             final Flags permanentFlags = mailbox.getPermanentFlags();

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AppendProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AppendProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AppendProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/AppendProcessor.java Mon May 28 13:43:21 2007
@@ -33,15 +33,17 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.message.response.imap4rev1.CommandCompleteResponse;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
-import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
+import org.apache.james.experimental.imapserver.processor.base.AbstractMailboxAwareProcessor;
 import org.apache.james.imapserver.store.MailboxException;
 import org.apache.james.mailboxmanager.MailboxManagerException;
 import org.apache.james.mailboxmanager.mailbox.ImapMailboxSession;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
-public class AppendProcessor extends AbstractImapRequestProcessor {
+public class AppendProcessor extends AbstractMailboxAwareProcessor {
 
-    public AppendProcessor(final ImapProcessor next) {
-        super(next);
+    public AppendProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {
@@ -76,7 +78,7 @@
         // they should be processed
         ImapMailboxSession mailbox = null;
         try {
-            mailboxName = session.buildFullName(mailboxName);
+            mailboxName = buildFullName(session, mailboxName);
             mailbox = session.getMailboxManager().getImapMailboxSession(
                     mailboxName);
         } catch (MailboxManagerException mme) {

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CopyProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CopyProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CopyProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CopyProcessor.java Mon May 28 13:43:21 2007
@@ -30,18 +30,20 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.message.response.imap4rev1.CommandCompleteResponse;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
-import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
+import org.apache.james.experimental.imapserver.processor.base.AbstractMailboxAwareProcessor;
 import org.apache.james.imapserver.store.MailboxException;
 import org.apache.james.mailboxmanager.GeneralMessageSet;
 import org.apache.james.mailboxmanager.MailboxManagerException;
 import org.apache.james.mailboxmanager.impl.GeneralMessageSetImpl;
 import org.apache.james.mailboxmanager.mailbox.ImapMailboxSession;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
-public class CopyProcessor extends AbstractImapRequestProcessor {
+public class CopyProcessor extends AbstractMailboxAwareProcessor {
 	
-	public CopyProcessor(final ImapProcessor next) {
-        super(next);
+	public CopyProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {
@@ -66,7 +68,7 @@
 			ImapSession session, String tag, ImapCommand command) throws MailboxException, AuthorizationException, ProtocolException {
         ImapMailboxSession currentMailbox = session.getSelected().getMailbox();
         try {
-            String fullMailboxName = session.buildFullName(mailboxName);
+            String fullMailboxName = buildFullName(session, mailboxName);
             if (!session.getMailboxManager().existsMailbox(fullMailboxName)) {
                 MailboxException e=new MailboxException("Mailbox does not exists");
                 e.setResponseCode( "TRYCREATE" );

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CreateProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CreateProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CreateProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/CreateProcessor.java Mon May 28 13:43:21 2007
@@ -29,15 +29,17 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.message.response.imap4rev1.CommandCompleteResponse;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
-import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
+import org.apache.james.experimental.imapserver.processor.base.AbstractMailboxAwareProcessor;
 import org.apache.james.imapserver.store.MailboxException;
 import org.apache.james.mailboxmanager.MailboxManagerException;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
-public class CreateProcessor extends AbstractImapRequestProcessor {
+public class CreateProcessor extends AbstractMailboxAwareProcessor {
 	
-	public CreateProcessor(final ImapProcessor next) {
-        super(next);
+	public CreateProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {
@@ -61,7 +63,7 @@
 			ImapSession session, String tag, ImapCommand command) throws MailboxException, AuthorizationException, ProtocolException {
         try {
 
-            final String fullMailboxName=session.buildFullName(mailboxName);
+            final String fullMailboxName=buildFullName(session, mailboxName);
             session.getMailboxManager().createMailbox(fullMailboxName );
         } catch (MailboxManagerException e) {
            throw new MailboxException(e);

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/DeleteProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/DeleteProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/DeleteProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/DeleteProcessor.java Mon May 28 13:43:21 2007
@@ -29,15 +29,17 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.message.response.imap4rev1.CommandCompleteResponse;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
-import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
+import org.apache.james.experimental.imapserver.processor.base.AbstractMailboxAwareProcessor;
 import org.apache.james.imapserver.store.MailboxException;
 import org.apache.james.mailboxmanager.MailboxManagerException;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
-public class DeleteProcessor extends AbstractImapRequestProcessor {
+public class DeleteProcessor extends AbstractMailboxAwareProcessor {
 	
-	public DeleteProcessor(final ImapProcessor next) {
-        super(next);
+	public DeleteProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {
@@ -59,7 +61,7 @@
 	private ImapResponseMessage doProcess(String mailboxName, 
 			ImapSession session, String tag, ImapCommand command) throws MailboxException, AuthorizationException, ProtocolException {
         try {
-            final String fullMailboxName = session.buildFullName(mailboxName);
+            final String fullMailboxName = buildFullName(session, mailboxName);
             if (session.getSelected() != null) {
                 if (session.getSelected().getMailbox().getName().equals(
                         fullMailboxName)) {

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExamineProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExamineProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExamineProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExamineProcessor.java Mon May 28 13:43:21 2007
@@ -29,12 +29,14 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
 import org.apache.james.imapserver.store.MailboxException;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
 public class ExamineProcessor extends AbstractMailboxSelectionProcessor {
 	
-	public ExamineProcessor(final ImapProcessor next) {
-        super(next);
+	public ExamineProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExpungeProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExpungeProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExpungeProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/ExpungeProcessor.java Mon May 28 13:43:21 2007
@@ -36,11 +36,13 @@
 import org.apache.james.mailboxmanager.MessageResult;
 import org.apache.james.mailboxmanager.impl.GeneralMessageSetImpl;
 import org.apache.james.mailboxmanager.mailbox.ImapMailboxSession;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
 public class ExpungeProcessor extends AbstractImapRequestProcessor {
 	
-	public ExpungeProcessor(final ImapProcessor next) {
+	public ExpungeProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
         super(next);
     }
 

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/FetchProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/FetchProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/FetchProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/FetchProcessor.java Mon May 28 13:43:21 2007
@@ -38,6 +38,7 @@
 import org.apache.james.api.imap.message.BodyFetchElement;
 import org.apache.james.api.imap.message.FetchData;
 import org.apache.james.api.imap.message.IdRange;
+import org.apache.james.api.imap.message.MessageFlags;
 import org.apache.james.core.MimeMessageWrapper;
 import org.apache.james.experimental.imapserver.AuthorizationException;
 import org.apache.james.experimental.imapserver.ImapSession;
@@ -48,7 +49,6 @@
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
 import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
 import org.apache.james.imapserver.store.MailboxException;
-import org.apache.james.api.imap.message.MessageFlags;
 import org.apache.james.imapserver.store.SimpleMessageAttributes;
 import org.apache.james.mailboxmanager.GeneralMessageSet;
 import org.apache.james.mailboxmanager.MailboxManagerException;

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/Imap4Rev1ProcessorFactory.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/Imap4Rev1ProcessorFactory.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/Imap4Rev1ProcessorFactory.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/Imap4Rev1ProcessorFactory.java Mon May 28 13:43:21 2007
@@ -1,6 +1,7 @@
 package org.apache.james.experimental.imapserver.processor.imap4rev1;
 
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 import org.apache.james.services.UsersRepository;
 
 /**
@@ -8,29 +9,30 @@
  */
 public class Imap4Rev1ProcessorFactory {
 
-    public static final ImapProcessor createDefaultChain(final ImapProcessor chainEndProcessor, final UsersRepository users) {
+    public static final ImapProcessor createDefaultChain(final ImapProcessor chainEndProcessor, 
+            final UsersRepository users, final MailboxManagerProvider mailboxManagerProvider) {
         final LogoutProcessor logoutProcessor = new LogoutProcessor(chainEndProcessor);
         final CapabilityProcessor capabilityProcessor = new CapabilityProcessor(logoutProcessor);
         final CheckProcessor checkProcessor = new CheckProcessor(capabilityProcessor);
         final LoginProcessor loginProcessor = new LoginProcessor(checkProcessor, users);
-        final RenameProcessor renameProcessor = new RenameProcessor(loginProcessor);
-        final DeleteProcessor deleteProcessor = new DeleteProcessor(renameProcessor);
-        final CreateProcessor createProcessor = new CreateProcessor(deleteProcessor);
+        final RenameProcessor renameProcessor = new RenameProcessor(loginProcessor, mailboxManagerProvider);
+        final DeleteProcessor deleteProcessor = new DeleteProcessor(renameProcessor, mailboxManagerProvider);
+        final CreateProcessor createProcessor = new CreateProcessor(deleteProcessor, mailboxManagerProvider);
         final CloseProcessor closeProcessor = new CloseProcessor(createProcessor);
-        final UnsubscribeProcessor unsubscribeProcessor = new UnsubscribeProcessor(closeProcessor);
-        final SubscribeProcessor subscribeProcessor = new SubscribeProcessor(unsubscribeProcessor);
-        final CopyProcessor copyProcessor = new CopyProcessor(subscribeProcessor);
+        final UnsubscribeProcessor unsubscribeProcessor = new UnsubscribeProcessor(closeProcessor, mailboxManagerProvider);
+        final SubscribeProcessor subscribeProcessor = new SubscribeProcessor(unsubscribeProcessor, mailboxManagerProvider);
+        final CopyProcessor copyProcessor = new CopyProcessor(subscribeProcessor, mailboxManagerProvider);
         final AuthenticateProcessor authenticateProcessor = new AuthenticateProcessor(copyProcessor);
-        final ExpungeProcessor expungeProcessor = new ExpungeProcessor(authenticateProcessor);
-        final ExamineProcessor examineProcessor = new ExamineProcessor(expungeProcessor);
-        final AppendProcessor appendProcessor = new AppendProcessor(examineProcessor);
+        final ExpungeProcessor expungeProcessor = new ExpungeProcessor(authenticateProcessor, mailboxManagerProvider);
+        final ExamineProcessor examineProcessor = new ExamineProcessor(expungeProcessor, mailboxManagerProvider);
+        final AppendProcessor appendProcessor = new AppendProcessor(examineProcessor, mailboxManagerProvider);
         final StoreProcessor storeProcessor = new StoreProcessor(appendProcessor);
         final NoopProcessor noopProcessor = new NoopProcessor(storeProcessor);
-        final StatusProcessor statusProcessor = new StatusProcessor(noopProcessor);
+        final StatusProcessor statusProcessor = new StatusProcessor(noopProcessor, mailboxManagerProvider);
         final LsubProcessor lsubProcessor = new LsubProcessor(statusProcessor);
         final ListProcessor listProcessor = new ListProcessor(lsubProcessor);
         final SearchProcessor searchProcessor = new SearchProcessor(listProcessor);
-        final SelectProcessor selectProcessor = new SelectProcessor(searchProcessor);
+        final SelectProcessor selectProcessor = new SelectProcessor(searchProcessor, mailboxManagerProvider);
         final ImapProcessor result = new FetchProcessor(selectProcessor);
         return result;
     }

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/RenameProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/RenameProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/RenameProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/RenameProcessor.java Mon May 28 13:43:21 2007
@@ -29,15 +29,17 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.message.response.imap4rev1.CommandCompleteResponse;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
-import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
+import org.apache.james.experimental.imapserver.processor.base.AbstractMailboxAwareProcessor;
 import org.apache.james.imapserver.store.MailboxException;
 import org.apache.james.mailboxmanager.MailboxManagerException;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
-public class RenameProcessor extends AbstractImapRequestProcessor {
+public class RenameProcessor extends AbstractMailboxAwareProcessor {
 	
-	public RenameProcessor(final ImapProcessor next) {
-        super(next);
+	public RenameProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {
@@ -60,8 +62,8 @@
 	private ImapResponseMessage doProcess(final String existingName, final String newName, 
 			ImapSession session, String tag, ImapCommand command) throws MailboxException, AuthorizationException, ProtocolException {
         try {
-            final String fullExistingName=session.buildFullName(existingName);
-            final String fullNewName=session.buildFullName(newName);
+            final String fullExistingName=buildFullName(session, existingName);
+            final String fullNewName=buildFullName(session, newName);
             session.getMailboxManager().renameMailbox( fullExistingName, fullNewName );
         } catch (MailboxManagerException e) {
            throw new MailboxException(e);

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SelectProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SelectProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SelectProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SelectProcessor.java Mon May 28 13:43:21 2007
@@ -29,12 +29,14 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
 import org.apache.james.imapserver.store.MailboxException;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
 public class SelectProcessor extends AbstractMailboxSelectionProcessor {
 	
-	public SelectProcessor(final ImapProcessor next) {
-        super(next);
+	public SelectProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/StatusProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/StatusProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/StatusProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/StatusProcessor.java Mon May 28 13:43:21 2007
@@ -32,16 +32,18 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.message.response.imap4rev1.StatusResponse;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
-import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
+import org.apache.james.experimental.imapserver.processor.base.AbstractMailboxAwareProcessor;
 import org.apache.james.imapserver.store.MailboxException;
 import org.apache.james.mailboxmanager.MailboxManagerException;
 import org.apache.james.mailboxmanager.mailbox.ImapMailboxSession;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
-public class StatusProcessor extends AbstractImapRequestProcessor {
+public class StatusProcessor extends AbstractMailboxAwareProcessor {
 	
-	public StatusProcessor(final ImapProcessor next) {
-        super(next);
+	public StatusProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {
@@ -71,7 +73,7 @@
         buffer.append( ImapConstants.SP );
         buffer.append( "(" );
         try {
-            String fullMailboxName= session.buildFullName(mailboxName);
+            String fullMailboxName= buildFullName(session, mailboxName);
             
             if (logger != null && logger.isDebugEnabled()) { 
                 logger.debug("Status called on mailbox named " + mailboxName + " (" + fullMailboxName + ")"); 

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SubscribeProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SubscribeProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SubscribeProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/SubscribeProcessor.java Mon May 28 13:43:21 2007
@@ -29,15 +29,17 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.message.response.imap4rev1.CommandCompleteResponse;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
-import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
+import org.apache.james.experimental.imapserver.processor.base.AbstractMailboxAwareProcessor;
 import org.apache.james.imapserver.store.MailboxException;
 import org.apache.james.mailboxmanager.MailboxManagerException;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
-public class SubscribeProcessor extends AbstractImapRequestProcessor {
+public class SubscribeProcessor extends AbstractMailboxAwareProcessor {
 	
-	public SubscribeProcessor(final ImapProcessor next) {
-        super(next);
+	public SubscribeProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {
@@ -59,7 +61,7 @@
 	private ImapResponseMessage doProcess(final String mailboxName, 
 			ImapSession session, String tag, ImapCommand command) throws MailboxException, AuthorizationException, ProtocolException {
         try {
-            final String fullMailboxName = session.buildFullName(mailboxName);
+            final String fullMailboxName = buildFullName(session, mailboxName);
             session.getMailboxManager().setSubscription(fullMailboxName,true);
         } catch (MailboxManagerException e) {
            throw new MailboxException(e);

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/UnsubscribeProcessor.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/UnsubscribeProcessor.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/UnsubscribeProcessor.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/imap4rev1/UnsubscribeProcessor.java Mon May 28 13:43:21 2007
@@ -29,15 +29,17 @@
 import org.apache.james.experimental.imapserver.message.response.ImapResponseMessage;
 import org.apache.james.experimental.imapserver.message.response.imap4rev1.CommandCompleteResponse;
 import org.apache.james.experimental.imapserver.processor.ImapProcessor;
-import org.apache.james.experimental.imapserver.processor.base.AbstractImapRequestProcessor;
+import org.apache.james.experimental.imapserver.processor.base.AbstractMailboxAwareProcessor;
 import org.apache.james.imapserver.store.MailboxException;
 import org.apache.james.mailboxmanager.MailboxManagerException;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 
 
-public class UnsubscribeProcessor extends AbstractImapRequestProcessor {
+public class UnsubscribeProcessor extends AbstractMailboxAwareProcessor {
 	
-	public UnsubscribeProcessor(final ImapProcessor next) {
-        super(next);
+	public UnsubscribeProcessor(final ImapProcessor next, 
+            final MailboxManagerProvider mailboxManagerProvider) {
+        super(next, mailboxManagerProvider);
     }
 
     protected boolean isAcceptable(ImapMessage message) {
@@ -59,7 +61,7 @@
 	private ImapResponseMessage doProcess(final String mailboxName, 
 			ImapSession session, String tag, ImapCommand command) throws MailboxException, AuthorizationException, ProtocolException {
         try {
-            final String fullMailboxName=session.buildFullName(mailboxName);
+            final String fullMailboxName=buildFullName(session, mailboxName);
             session.getMailboxManager().setSubscription(fullMailboxName,false);
         } catch (MailboxManagerException e) {
             throw new MailboxException(e);

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/main/DefaultImapProcessorFactory.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/main/DefaultImapProcessorFactory.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/main/DefaultImapProcessorFactory.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/processor/main/DefaultImapProcessorFactory.java Mon May 28 13:43:21 2007
@@ -23,6 +23,7 @@
 import org.apache.james.experimental.imapserver.processor.base.ImapResponseMessageProcessor;
 import org.apache.james.experimental.imapserver.processor.base.UnknownRequestImapProcessor;
 import org.apache.james.experimental.imapserver.processor.imap4rev1.Imap4Rev1ProcessorFactory;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 import org.apache.james.services.UsersRepository;
 
 
@@ -31,9 +32,10 @@
  */
 public class DefaultImapProcessorFactory {
 
-    public static final ImapProcessor createDefaultProcessor(final UsersRepository usersRepository) {
+    public static final ImapProcessor createDefaultProcessor(final UsersRepository usersRepository,
+            final MailboxManagerProvider mailboxManagerProvider) {
         final UnknownRequestImapProcessor unknownRequestImapProcessor = new UnknownRequestImapProcessor();
-        final ImapProcessor imap4rev1Chain = Imap4Rev1ProcessorFactory.createDefaultChain(unknownRequestImapProcessor, usersRepository);
+        final ImapProcessor imap4rev1Chain = Imap4Rev1ProcessorFactory.createDefaultChain(unknownRequestImapProcessor, usersRepository, mailboxManagerProvider);
         final ImapProcessor result = new ImapResponseMessageProcessor(imap4rev1Chain);
         return result;
     }

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/AbstractCommandTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/AbstractCommandTest.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/AbstractCommandTest.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/AbstractCommandTest.java Mon May 28 13:43:21 2007
@@ -28,7 +28,9 @@
 import org.apache.james.experimental.imapserver.ImapSession;
 import org.apache.james.experimental.imapserver.StandardFactory;
 import org.apache.james.experimental.imapserver.processor.main.DefaultImapProcessorFactory;
+import org.apache.james.mailboxmanager.Namespace;
 import org.apache.james.mailboxmanager.manager.MailboxManager;
+import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 import org.apache.james.services.User;
 import org.apache.james.services.UsersRepository;
 import org.apache.james.test.mock.avalon.MockLogger;
@@ -43,14 +45,18 @@
     Mock mockUsersRepository;
     Mock mockUser;
     Mock mockMailboxManager;
+    Mock mockMailboxManagerProvider;
 
     public void setUp() {
+        mockMailboxManager = mock ( MailboxManager.class );
+        mockMailboxManagerProvider = mock ( MailboxManagerProvider.class );
         mockUsersRepository = mock ( UsersRepository.class );
-        handler=new ImapRequestHandler(StandardFactory.createDecoder(),  DefaultImapProcessorFactory.createDefaultProcessor((UsersRepository)mockUsersRepository.proxy()));
+        handler=new ImapRequestHandler(StandardFactory.createDecoder(), 
+                DefaultImapProcessorFactory.createDefaultProcessor((UsersRepository)mockUsersRepository.proxy(), 
+                        (MailboxManagerProvider) mockMailboxManagerProvider.proxy()));
         handler.enableLogging(new MockLogger());
         mockSession = mock ( ImapSession.class);
         mockUser = mock (User.class );
-        mockMailboxManager = mock (MailboxManager.class);
     }
     
     public String handleRequest(String s) throws ProtocolException {
@@ -71,5 +77,15 @@
         mockSession.expects(atLeastOnce()).method("getMailboxManager").withNoArguments().will(returnValue(mockMailboxManager.proxy()));
     }
     
+    protected void setUpNamespace(String userDefaultNamespace) {
+        Mock mockNamespace = mock(Namespace.class);
+        
+        final Object proxy = mockUser.proxy();
+        mockMailboxManagerProvider.expects(once()).method("getPersonalDefaultNamespace").with(eq(proxy))
+                .will(returnValue(mockNamespace.proxy()));
+        
+        mockNamespace.expects(once()).method("getName").will(returnValue(userDefaultNamespace));
+        mockSession.expects(once()).method("getUser").will(returnValue(proxy));
+    }
 
 }

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/CreateCommandTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/CreateCommandTest.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/CreateCommandTest.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/CreateCommandTest.java Mon May 28 13:43:21 2007
@@ -21,19 +21,21 @@
 
 import org.apache.james.api.imap.ImapSessionState;
 import org.apache.james.api.imap.ProtocolException;
+import org.apache.james.mailboxmanager.Namespace;
+import org.jmock.Mock;
 
 public class CreateCommandTest extends AbstractCommandTest {
 
     public void testCreateNonFq() throws ProtocolException {
-        final String fqMailboxName = "#mock.user.Test";
+        final String userDefault = "#mock.user";
+        final String fqMailboxName = userDefault + ".Test";
 
         setSessionState(ImapSessionState.AUTHENTICATED);
         setUpMailboxManager();
-
-        mockSession.expects(once()).method("buildFullName").with(eq("Test"))
-                .will(returnValue(fqMailboxName));
-        mockSession.expects(once()).method("unsolicitedResponses").withAnyArguments();
-
+        setUpNamespace(userDefault);
+        
+        mockSession.expects(once()).method("unsolicitedResponses");
+        
         mockMailboxManager.expects(once()).method("createMailbox").with(
                 eq(fqMailboxName));
 

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/SubscribeCommandTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/SubscribeCommandTest.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/SubscribeCommandTest.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/SubscribeCommandTest.java Mon May 28 13:43:21 2007
@@ -21,18 +21,20 @@
 
 import org.apache.james.api.imap.ImapSessionState;
 import org.apache.james.api.imap.ProtocolException;
+import org.apache.james.mailboxmanager.Namespace;
+import org.jmock.Mock;
 import org.jmock.core.Constraint;
 
 public class SubscribeCommandTest extends AbstractCommandTest {
 
     public void testSubscribeNonFq() throws ProtocolException {
-        final String fqMailboxName = "#mock.user.Test";
+        final String userDefaultNamespace = "#mock.user";
+        final String fqMailboxName = userDefaultNamespace + ".Test";
 
         setSessionState(ImapSessionState.AUTHENTICATED);
         setUpMailboxManager();
-
-        mockSession.expects(once()).method("buildFullName").with(eq("Test"))
-                .will(returnValue(fqMailboxName));
+        setUpNamespace(userDefaultNamespace);
+                
         mockSession.expects(once()).method("unsolicitedResponses")
                 .withAnyArguments();
 

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/UnsubscribeCommandTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/UnsubscribeCommandTest.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/UnsubscribeCommandTest.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/commands/UnsubscribeCommandTest.java Mon May 28 13:43:21 2007
@@ -26,13 +26,13 @@
 public class UnsubscribeCommandTest extends AbstractCommandTest {
 
     public void testSubscribeNonFq() throws ProtocolException {
-        final String fqMailboxName = "#mock.user.Test";
+        final String userDefaultNamespace = "#mock.user";
+        final String fqMailboxName = userDefaultNamespace + ".Test";
 
         setSessionState(ImapSessionState.AUTHENTICATED);
         setUpMailboxManager();
 
-        mockSession.expects(once()).method("buildFullName").with(eq("Test"))
-                .will(returnValue(fqMailboxName));
+        setUpNamespace(userDefaultNamespace);
         mockSession.expects(once()).method("unsolicitedResponses")
                 .withAnyArguments();
 

Modified: james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/session/AbstractSessionTest.java
URL: http://svn.apache.org/viewvc/james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/session/AbstractSessionTest.java?view=diff&rev=542319&r1=542318&r2=542319
==============================================================================
--- james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/session/AbstractSessionTest.java (original)
+++ james/server/sandbox/seda-imap-modular/experimental-seda-imap-function/src/test/java/org/apache/james/experimental/imapserver/handler/session/AbstractSessionTest.java Mon May 28 13:43:21 2007
@@ -83,7 +83,8 @@
                 new MockImapHandler(),
                 HOST_NAME, HOST_ADDRESS);
         ((LogEnabled)session).enableLogging(new MockLogger());
-        handler = new ImapRequestHandler(StandardFactory.createDecoder(),  DefaultImapProcessorFactory.createDefaultProcessor(theConfigData.getUsersRepository()));
+        handler = new ImapRequestHandler(StandardFactory.createDecoder(),  
+                DefaultImapProcessorFactory.createDefaultProcessor(theConfigData.getUsersRepository(), theConfigData.getMailboxManagerProvider()));
         handler.enableLogging(new MockLogger());
         mailboxManager=theConfigData.getMailboxManagerProvider().getMailboxManagerInstance(new MockUser());
 



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