Author: rdonkin
Date: Thu Dec  6 12:44:52 2007
New Revision: 601850

URL: http://svn.apache.org/viewvc?rev=601850&view=rev
Log:
Consolidated various getMailbox methods.

Modified:
    
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/impl/DefaultMailboxManagerProvider.java
    
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManager.java
    
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManagerProvider.java
    
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/repository/MailboxManagerMailRepository.java
    
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractMailboxAwareProcessor.java
    
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java
    
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AppendProcessor.java
    
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/StatusProcessor.java
    
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapSessionImpl.java
    
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/AppendCommand.java
    
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/SelectCommand.java
    
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/StatusCommand.java
    
james/server/trunk/phoenix-deployment/src/test/org/apache/james/imapserver/handler/session/AbstractSessionTest.java
    
james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/AbstractImapMailboxSelfTestCase.java
    
james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/torque/repository/TorqueMailboxManagerMailRepositoryNativeTestCase.java
    
james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/Actions.java
    
james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/SieveToMultiMailbox.java
    
james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java

Modified: 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/impl/DefaultMailboxManagerProvider.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/impl/DefaultMailboxManagerProvider.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/impl/DefaultMailboxManagerProvider.java
 (original)
+++ 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/impl/DefaultMailboxManagerProvider.java
 Thu Dec  6 12:44:52 2007
@@ -31,7 +31,6 @@
 import org.apache.james.mailboxmanager.MailboxManagerException;
 import org.apache.james.mailboxmanager.Namespace;
 import org.apache.james.mailboxmanager.Namespaces;
-import org.apache.james.mailboxmanager.mailbox.Mailbox;
 import org.apache.james.mailboxmanager.manager.MailboxManager;
 import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 import org.apache.james.services.User;
@@ -48,20 +47,9 @@
 
     private ServiceManager serviceManager;
 
-
-    public Mailbox getInbox(User user) throws MailboxManagerException {
-        return getMailboxManager().getMailbox(getInboxName(user),true);
-    }
-
     public MailboxManager getMailboxManager()
             throws MailboxManagerException {
         return mailboxManager;
-    }
-
-    public Mailbox getMailbox(User authUser, String mailboxName,
-            boolean autoCreate) throws MailboxManagerException {
-        return getMailboxManager().getMailbox(
-                mailboxName, autoCreate);
     }
 
     public Namespaces getNamespaces(User forUser) {

Modified: 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManager.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManager.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManager.java
 (original)
+++ 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManager.java
 Thu Dec  6 12:44:52 2007
@@ -66,24 +66,18 @@
     public static final char HIERARCHY_DELIMITER='.';
     
     public static final String USER_NAMESPACE="#mail";
-
-    /**
-     * get a session mailbox 
-     * 
-     * @param mailboxName
-     * @throws MailboxManagerException 
-     */
-    Mailbox getMailbox(String mailboxName, boolean autoCreate)
-            throws MailboxManagerException;
     
+    public static final String INBOX = "INBOX";
+
     /**
      * Gets an session suitable for IMAP.
      * @param mailboxName the name of the mailbox, not null
+     * @param autocreate create this mailbox if it doesn't exist
      * @return <code>ImapMailboxSession</code>, not null
      * @throws MailboxManagerException when the mailbox cannot be opened
      * @throws MailboxNotFoundException when the given mailbox does not exist
      */
-    ImapMailbox getImapMailbox(String mailboxName) throws 
MailboxManagerException;
+    ImapMailbox getImapMailbox(String mailboxName, boolean autocreate) throws 
MailboxManagerException;
 
     void createMailbox(String mailboxName) throws MailboxManagerException;
 
@@ -125,11 +119,5 @@
     void setSubscription(String mailboxName, boolean value) throws 
MailboxManagerException;
 
     boolean existsMailbox(String mailboxName) throws MailboxManagerException;
-
-    void close();
-
-    // TODO maybe move createInbox to provider
-    boolean createInbox(User user) throws MailboxManagerException;
-
 }
 

Modified: 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManagerProvider.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManagerProvider.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManagerProvider.java
 (original)
+++ 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/manager/MailboxManagerProvider.java
 Thu Dec  6 12:44:52 2007
@@ -22,23 +22,11 @@
 import org.apache.james.mailboxmanager.MailboxManagerException;
 import org.apache.james.mailboxmanager.Namespace;
 import org.apache.james.mailboxmanager.Namespaces;
-import org.apache.james.mailboxmanager.mailbox.Mailbox;
 import org.apache.james.services.User;
 
 public interface MailboxManagerProvider {
     
     public MailboxManager getMailboxManager() throws MailboxManagerException;
-    
-    Mailbox getInbox(User user) throws MailboxManagerException;
-
-    /** 
-     *  @param authUser the authorized User for checking credentials 
-     *  @param mailboxName a logical/hierarchical mailbox name *
-     *  @throws MailboxManagerException 
-     */ 
-
-    Mailbox getMailbox(User authUser, String mailboxName,
-            boolean autoCreate) throws MailboxManagerException;
     
     /**
      * The Namespaces a user has access to.

Modified: 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/repository/MailboxManagerMailRepository.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/repository/MailboxManagerMailRepository.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/repository/MailboxManagerMailRepository.java
 (original)
+++ 
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/repository/MailboxManagerMailRepository.java
 Thu Dec  6 12:44:52 2007
@@ -336,8 +336,8 @@
                 throw new RuntimeException("use<1 !");
             }
             if (mailboxSession == null) {
-                mailboxSession = getMailboxManagerProvider().getMailbox(
-                        null, mailboxName, true);
+                mailboxSession = 
getMailboxManagerProvider().getMailboxManager()
+                    .getImapMailbox(mailboxName, true);
             }
             return mailboxSession;
         }

Modified: 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractMailboxAwareProcessor.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractMailboxAwareProcessor.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractMailboxAwareProcessor.java
 (original)
+++ 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/AbstractMailboxAwareProcessor.java
 Thu Dec  6 12:44:52 2007
@@ -41,6 +41,10 @@
     
     public String buildFullName(final ImapSession session, String mailboxName) 
throws MailboxManagerException {
         User user = ImapSessionUtils.getUser(session);
+        return buildFullName(mailboxName, user);
+    }
+
+    private String buildFullName(String mailboxName, User user) {
         if (!mailboxName.startsWith(NAMESPACE_PREFIX)) {
             mailboxName = 
mailboxManagerProvider.getPersonalDefaultNamespace(user).getName()+HIERARCHY_DELIMITER+mailboxName;
         }
@@ -55,7 +59,7 @@
             // TODO: handle null user
             final User user = ImapSessionUtils.getUser(session);
             result = mailboxManagerProvider.getMailboxManager();
-            result.createInbox(user);
+            result.getImapMailbox(buildFullName(MailboxManager.INBOX, user), 
true);
             // TODO: reconsider decision not to sunchronise
             // TODO: mailbox creation is ATM an expensive operation
             // TODO: so caching is required

Modified: 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java
 (original)
+++ 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AbstractMailboxSelectionProcessor.java
 Thu Dec  6 12:44:52 2007
@@ -105,7 +105,7 @@
             boolean readOnly) throws MailboxException, MailboxManagerException 
{
         final MailboxManager mailboxManager = getMailboxManager(session);
         final ImapMailbox mailbox = mailboxManager
-                .getImapMailbox(mailboxName);
+                .getImapMailbox(mailboxName, false);
         
         final Iterator it = mailbox.getMessages(GeneralMessageSetImpl
                 .all(), MessageResult.MINIMAL);

Modified: 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AppendProcessor.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AppendProcessor.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AppendProcessor.java
 (original)
+++ 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/AppendProcessor.java
 Thu Dec  6 12:44:52 2007
@@ -82,7 +82,7 @@
             
             mailboxName = buildFullName(session, mailboxName);
             final MailboxManager mailboxManager = getMailboxManager(session);
-            final ImapMailbox mailbox = 
mailboxManager.getImapMailbox(mailboxName);
+            final ImapMailbox mailbox = 
mailboxManager.getImapMailbox(mailboxName, false);
             appendToMailbox(message, datetime, session, tag, command, mailbox, 
responder);
             
         } catch (MailboxManagerException mme) {

Modified: 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/StatusProcessor.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/StatusProcessor.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/StatusProcessor.java
 (original)
+++ 
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/imap4rev1/StatusProcessor.java
 Thu Dec  6 12:44:52 2007
@@ -93,7 +93,7 @@
 
             final MailboxManager mailboxManager = getMailboxManager(session);
             final ImapMailbox mailbox = mailboxManager
-                    .getImapMailbox(fullMailboxName);
+                    .getImapMailbox(fullMailboxName, false);
 
             if (statusDataItems.isMessages()) {
                 buffer.append(ImapConstants.STATUS_MESSAGES);

Modified: 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapSessionImpl.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapSessionImpl.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapSessionImpl.java
 (original)
+++ 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/ImapSessionImpl.java
 Thu Dec  6 12:44:52 2007
@@ -199,12 +199,9 @@
             usersEqual=(user==null);
         }
         if (mailboxManager==null || !usersEqual) {
-            if (mailboxManager!=null) {
-                mailboxManager.close();
-            }
             mailboxManager=mailboxManagerProvider.getMailboxManager();
             mailboxManagerUser = user;
-            mailboxManager.createInbox(user);
+            mailboxManager.getImapMailbox(buildFullName(MailboxManager.INBOX), 
true);
         }
         return mailboxManager;
     }

Modified: 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/AppendCommand.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/AppendCommand.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/AppendCommand.java
 (original)
+++ 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/AppendCommand.java
 Thu Dec  6 12:44:52 2007
@@ -69,7 +69,7 @@
         ImapMailbox mailbox = null;
         try {
             mailboxName=session.buildFullName(mailboxName);
-            mailbox = session.getMailboxManager().getImapMailbox(mailboxName);
+            mailbox = session.getMailboxManager().getImapMailbox(mailboxName, 
false);
         }
         catch ( MailboxManagerException mme ) {
             MailboxException me = new MailboxException(mme);

Modified: 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/SelectCommand.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/SelectCommand.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/SelectCommand.java
 (original)
+++ 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/SelectCommand.java
 Thu Dec  6 12:44:52 2007
@@ -92,7 +92,7 @@
     }
 
     private boolean selectMailbox(String mailboxName, ImapSession session, 
boolean readOnly) throws MailboxException, MailboxManagerException {
-        ImapMailbox mailbox = 
session.getMailboxManager().getImapMailbox(mailboxName);
+        ImapMailbox mailbox = 
session.getMailboxManager().getImapMailbox(mailboxName, false);
         final Iterator it = mailbox.getMessages(GeneralMessageSetImpl
                 .all(), MessageResult.MINIMAL);
         final List uids = new ArrayList();

Modified: 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/StatusCommand.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/StatusCommand.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/StatusCommand.java
 (original)
+++ 
james/server/trunk/imapserver-function/src/main/java/org/apache/james/imapserver/commands/StatusCommand.java
 Thu Dec  6 12:44:52 2007
@@ -68,7 +68,7 @@
                 logger.debug("Status called on mailbox named " + mailboxName + 
" (" + fullMailboxName + ")"); 
             }
             
-            ImapMailbox mailbox = 
session.getMailboxManager().getImapMailbox(fullMailboxName);
+            ImapMailbox mailbox = 
session.getMailboxManager().getImapMailbox(fullMailboxName, false);
             
             if (statusDataItems.messages) {
                 buffer.append(MESSAGES);

Modified: 
james/server/trunk/phoenix-deployment/src/test/org/apache/james/imapserver/handler/session/AbstractSessionTest.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/phoenix-deployment/src/test/org/apache/james/imapserver/handler/session/AbstractSessionTest.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/phoenix-deployment/src/test/org/apache/james/imapserver/handler/session/AbstractSessionTest.java
 (original)
+++ 
james/server/trunk/phoenix-deployment/src/test/org/apache/james/imapserver/handler/session/AbstractSessionTest.java
 Thu Dec  6 12:44:52 2007
@@ -273,7 +273,7 @@
     private ImapMailbox getImapMailbox(String mailboxName) throws 
MailboxManagerException {
         int[] neededSets = new int[] {GeneralMessageSet.TYPE_UID};
         int neededResults= MessageResult.MIME_MESSAGE + MessageResult.FLAGS;
-        ImapMailbox mailboxSession= mailboxManager.getImapMailbox(mailboxName);
+        ImapMailbox mailboxSession= mailboxManager.getImapMailbox(mailboxName, 
false);
         return mailboxSession;
     }
 }

Modified: 
james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/AbstractImapMailboxSelfTestCase.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/AbstractImapMailboxSelfTestCase.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/AbstractImapMailboxSelfTestCase.java
 (original)
+++ 
james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/AbstractImapMailboxSelfTestCase.java
 Thu Dec  6 12:44:52 2007
@@ -48,7 +48,7 @@
     public void setUp() throws Exception {
         super.setUp();
         mailboxManager.createMailbox(INBOX);
-        mailbox=mailboxManager.getImapMailbox(INBOX);
+        mailbox=mailboxManager.getImapMailbox(INBOX, false);
         collector=new MailboxListenerCollector();
         mailbox.addListener(collector);
         assertNotNull(mailbox);

Modified: 
james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/torque/repository/TorqueMailboxManagerMailRepositoryNativeTestCase.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/torque/repository/TorqueMailboxManagerMailRepositoryNativeTestCase.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/torque/repository/TorqueMailboxManagerMailRepositoryNativeTestCase.java
 (original)
+++ 
james/server/trunk/phoenix-deployment/src/test/org/apache/james/mailboxmanager/torque/repository/TorqueMailboxManagerMailRepositoryNativeTestCase.java
 Thu Dec  6 12:44:52 2007
@@ -138,7 +138,7 @@
                 if (!mailboxManager.existsMailbox(TUSER_INBOX)) {
                     mailboxManager.createMailbox(TUSER_INBOX);
                 }
-                shadowMailbox = mailboxManager.getImapMailbox(TUSER_INBOX);
+                shadowMailbox = mailboxManager.getImapMailbox(TUSER_INBOX, 
false);
             } catch (Exception e) {
                 throw new RuntimeException(e);
             }

Modified: 
james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/Actions.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/Actions.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/Actions.java
 (original)
+++ 
james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/Actions.java
 Thu Dec  6 12:44:52 2007
@@ -34,6 +34,7 @@
 import org.apache.avalon.framework.service.ServiceManager;
 import org.apache.james.Constants;
 import org.apache.james.mailboxmanager.mailbox.Mailbox;
+import org.apache.james.mailboxmanager.manager.MailboxManager;
 import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 import org.apache.james.services.User;
 import org.apache.james.userrepository.DefaultUser;
@@ -111,7 +112,10 @@
             user=new DefaultUser(recipient.getUser(), null);
             MimeMessage localMessage = createMimeMessage(aMail, recipient);
             
-            Mailbox mailbox=mailboxManagerProvider.getMailbox(user, 
destinationMailbox, true);
+            final String mailboxName = 
+                
mailboxManagerProvider.getPersonalDefaultNamespace(user).getName()
+                    + MailboxManager.HIERARCHY_DELIMITER + destinationMailbox;
+            Mailbox 
mailbox=mailboxManagerProvider.getMailboxManager().getImapMailbox(mailboxName, 
true);
             mailbox.store(localMessage);
             delivered = true;
         }

Modified: 
james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/SieveToMultiMailbox.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/SieveToMultiMailbox.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/SieveToMultiMailbox.java
 (original)
+++ 
james/server/trunk/spoolmanager-function/src/main/java/org/apache/james/transport/mailets/sieve/SieveToMultiMailbox.java
 Thu Dec  6 12:44:52 2007
@@ -35,6 +35,7 @@
 import org.apache.avalon.framework.service.ServiceManager;
 import org.apache.james.Constants;
 import org.apache.james.mailboxmanager.mailbox.Mailbox;
+import org.apache.james.mailboxmanager.manager.MailboxManager;
 import org.apache.james.mailboxmanager.manager.MailboxManagerProvider;
 import org.apache.james.userrepository.DefaultUser;
 import org.apache.jsieve.SieveFactory;
@@ -232,8 +233,12 @@
     }
     
     void storeMessageInbox(String username, MimeMessage message) throws 
MessagingException {
-        Mailbox inbox = getMailboxManagerProvider().getInbox(
-                new DefaultUser(username, null));
+        final MailboxManagerProvider mailboxManagerProvider = 
getMailboxManagerProvider();
+        final String inboxName = 
mailboxManagerProvider.getPersonalDefaultNamespace(new DefaultUser(username, 
null))
+            .getName() + MailboxManager.HIERARCHY_DELIMITER+"INBOX";
+        
+        Mailbox inbox = 
mailboxManagerProvider.getMailboxManager().getImapMailbox(inboxName, true);
+        
         if (inbox == null) {
             String error = "Mailbox for user " + username
                     + " was not found on this server.";

Modified: 
james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java?rev=601850&r1=601849&r2=601850&view=diff
==============================================================================
--- 
james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java
 (original)
+++ 
james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java
 Thu Dec  6 12:44:52 2007
@@ -70,36 +70,17 @@
     
     public Mailbox getMailbox(String mailboxName,
             boolean autoCreate) throws MailboxManagerException {
-        if (autoCreate && !existsMailbox(mailboxName)) {
-            getLog().info("autocreated mailbox  " + mailboxName);
-            createMailbox(mailboxName);
-        }
-        return getImapMailbox(mailboxName);
-    }
-    
 
-
-    public GeneralMailbox getGeneralMailbox(String mailboxName)
-    throws MailboxManagerException {
-        return getImapMailbox(mailboxName);
+        return getImapMailbox(mailboxName, autoCreate);
     }
     
-    public boolean createInbox(User user) throws MailboxManagerException {
-        // TODO should access getPersonalDefaultNameSpace...
-        String 
userInbox=USER_NAMESPACE+HIERARCHY_DELIMITER+user.getUserName()+HIERARCHY_DELIMITER+"INBOX";
-        if (!existsMailbox(userInbox)) {
-            createMailbox(userInbox);
-            getLog().info("autocreated Inbox  " + userInbox);
-            return true;    
-        }  else {
-            getLog().debug("Inbox already exists " + userInbox);
-            return false;    
-        }
-    }
     
-    public ImapMailbox getImapMailbox(String mailboxName)
+    public ImapMailbox getImapMailbox(String mailboxName, boolean autoCreate)
             throws MailboxManagerException {
-
+        if (autoCreate && !existsMailbox(mailboxName)) {
+            getLog().info("autocreated mailbox  " + mailboxName);
+            createMailbox(mailboxName);
+        }
         try {
             synchronized (managers) {
                 MailboxRow mailboxRow = MailboxRowPeer
@@ -196,7 +177,7 @@
     }
 
     public void copyMessages(GeneralMailbox from, GeneralMessageSet set, 
String to) throws MailboxManagerException {
-        GeneralMailbox toMailbox= getImapMailbox(to);
+        GeneralMailbox toMailbox= getImapMailbox(to, false);
         
         Iterator it = from.getMessages(set, MessageResult.MIME_MESSAGE | 
MessageResult.INTERNAL_DATE);
         while (it.hasNext()) {
@@ -269,10 +250,6 @@
         } catch (TorqueException e) {
             throw new MailboxManagerException(e);
         }
-    }
-
-    public void close() {
-        managers.clear();
     }
 
     public void deleteEverything() throws MailboxManagerException {



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

Reply via email to