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