This is an automated email from the ASF dual-hosted git repository.

btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit cf1288afb246904fadc5fa6fcaef1c40704bb478
Author: Benoit Tellier <btell...@linagora.com>
AuthorDate: Mon Nov 11 12:39:16 2019 +0700

    [Refactoring] processMessage tag and command are already specified in the 
request
---
 .../apache/james/imap/processor/AbstractMailboxProcessor.java |  4 ++--
 .../james/imap/processor/AbstractMessageRangeProcessor.java   |  4 +---
 .../james/imap/processor/AbstractSelectionProcessor.java      |  6 ++----
 .../james/imap/processor/AbstractSubscriptionProcessor.java   | 10 +++-------
 .../java/org/apache/james/imap/processor/AppendProcessor.java |  4 +---
 .../apache/james/imap/processor/AuthenticateProcessor.java    |  4 +---
 .../org/apache/james/imap/processor/CapabilityProcessor.java  |  4 +---
 .../java/org/apache/james/imap/processor/CheckProcessor.java  |  4 +---
 .../java/org/apache/james/imap/processor/CloseProcessor.java  |  4 +---
 .../java/org/apache/james/imap/processor/CreateProcessor.java |  4 +---
 .../org/apache/james/imap/processor/DeleteACLProcessor.java   |  8 +++-----
 .../java/org/apache/james/imap/processor/DeleteProcessor.java |  4 +---
 .../java/org/apache/james/imap/processor/EnableProcessor.java |  4 +---
 .../org/apache/james/imap/processor/ExpungeProcessor.java     |  4 +---
 .../java/org/apache/james/imap/processor/GetACLProcessor.java |  4 +---
 .../apache/james/imap/processor/GetAnnotationProcessor.java   |  7 ++-----
 .../org/apache/james/imap/processor/GetQuotaProcessor.java    |  6 ++----
 .../apache/james/imap/processor/GetQuotaRootProcessor.java    |  6 ++----
 .../java/org/apache/james/imap/processor/IdleProcessor.java   |  6 ++----
 .../java/org/apache/james/imap/processor/LSubProcessor.java   |  4 +---
 .../java/org/apache/james/imap/processor/ListProcessor.java   |  4 +---
 .../org/apache/james/imap/processor/ListRightsProcessor.java  |  8 +++-----
 .../java/org/apache/james/imap/processor/LoginProcessor.java  |  4 +---
 .../java/org/apache/james/imap/processor/LogoutProcessor.java |  4 +---
 .../org/apache/james/imap/processor/MyRightsProcessor.java    |  6 ++----
 .../org/apache/james/imap/processor/NamespaceProcessor.java   |  4 +---
 .../java/org/apache/james/imap/processor/NoopProcessor.java   |  4 +---
 .../java/org/apache/james/imap/processor/RenameProcessor.java |  4 +---
 .../java/org/apache/james/imap/processor/SearchProcessor.java |  6 ++----
 .../java/org/apache/james/imap/processor/SetACLProcessor.java |  8 +++-----
 .../apache/james/imap/processor/SetAnnotationProcessor.java   | 11 ++++-------
 .../org/apache/james/imap/processor/SetQuotaProcessor.java    |  6 ++----
 .../java/org/apache/james/imap/processor/StatusProcessor.java |  4 +---
 .../java/org/apache/james/imap/processor/StoreProcessor.java  | 11 +++++------
 .../org/apache/james/imap/processor/SubscribeProcessor.java   |  4 +---
 .../org/apache/james/imap/processor/UnselectProcessor.java    |  4 +---
 .../org/apache/james/imap/processor/UnsubscribeProcessor.java |  4 +---
 .../org/apache/james/imap/processor/fetch/FetchProcessor.java |  4 +---
 .../org/apache/james/imap/processor/LSubProcessorTest.java    |  8 ++++----
 .../org/apache/james/imap/processor/SearchProcessorTest.java  |  2 +-
 40 files changed, 67 insertions(+), 144 deletions(-)

diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java
index 752bed3..53b114f 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java
@@ -109,7 +109,7 @@ public abstract class AbstractMailboxProcessor<M extends 
ImapRequest> extends Ab
             } else {
                 
getMailboxManager().startProcessingRequest(ImapSessionUtils.getMailboxSession(session));
 
-                processMessage(message, session, tag, command, responder);
+                processMessage(message, session, responder);
 
                 
getMailboxManager().endProcessingRequest(ImapSessionUtils.getMailboxSession(session));
 
@@ -370,7 +370,7 @@ public abstract class AbstractMailboxProcessor<M extends 
ImapRequest> extends Ab
         responder.respond(response);
     }
 
-    protected abstract void processMessage(M message, ImapSession session, Tag 
tag, ImapCommand command, Responder responder);
+    protected abstract void processMessage(M message, ImapSession session, 
Responder responder);
 
     /**
      * Joins the elements of a mailboxPath together and returns them as a 
string
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractMessageRangeProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractMessageRangeProcessor.java
index 7906815..2a61822 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractMessageRangeProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractMessageRangeProcessor.java
@@ -22,9 +22,7 @@ package org.apache.james.imap.processor;
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.response.StatusResponse;
@@ -62,7 +60,7 @@ public abstract class AbstractMessageRangeProcessor<M extends 
AbstractMessageRan
     protected abstract String getOperationName();
 
     @Override
-    protected void processMessage(M request, ImapSession session, Tag tag, 
ImapCommand command, Responder responder) {
+    protected void processMessage(M request, ImapSession session, Responder 
responder) {
         final MailboxPath targetMailbox = 
PathConverter.forSession(session).buildFullPath(request.getMailboxName());
         final IdRange[] idSet = request.getIdSet();
         final boolean useUids = request.isUseUids();
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSelectionProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSelectionProcessor.java
index bebfc25..8d20313 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSelectionProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSelectionProcessor.java
@@ -22,11 +22,9 @@ package org.apache.james.imap.processor;
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
@@ -79,7 +77,7 @@ abstract class AbstractSelectionProcessor<M extends 
AbstractMailboxSelectionRequ
     }
 
     @Override
-    protected void processMessage(M request, ImapSession session, Tag tag, 
ImapCommand command, Responder responder) {
+    protected void processMessage(M request, ImapSession session, Responder 
responder) {
         final String mailboxName = request.getMailboxName();
         try {
             final MailboxPath fullMailboxPath = 
PathConverter.forSession(session).buildFullPath(mailboxName);
@@ -89,7 +87,7 @@ abstract class AbstractSelectionProcessor<M extends 
AbstractMailboxSelectionRequ
             
         } catch (MailboxNotFoundException e) {
             LOGGER.debug("Select failed as mailbox does not exist {}", 
mailboxName, e);
-            responder.respond(statusResponseFactory.taggedNo(tag, command, 
HumanReadableText.FAILURE_NO_SUCH_MAILBOX));
+            responder.respond(statusResponseFactory.taggedNo(request.getTag(), 
request.getCommand(), HumanReadableText.FAILURE_NO_SUCH_MAILBOX));
         } catch (MailboxException e) {
             LOGGER.error("Select failed for mailbox {}", mailboxName, e);
             no(request, responder, HumanReadableText.SELECT);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSubscriptionProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSubscriptionProcessor.java
index 4ca5ac5..929a5c3 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSubscriptionProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSubscriptionProcessor.java
@@ -18,9 +18,7 @@
  ****************************************************************/
 package org.apache.james.imap.processor;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.message.request.ImapRequest;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -54,12 +52,12 @@ public abstract class AbstractSubscriptionProcessor<M 
extends ImapRequest> exten
     }
 
     @Override
-    protected final void processMessage(M message, ImapSession session, Tag 
tag, ImapCommand command, Responder responder) {
+    protected final void processMessage(M message, ImapSession session, 
Responder responder) {
 
         // take care of calling the start/end processing
         MailboxSession mSession = ImapSessionUtils.getMailboxSession(session);
         getSubscriptionManager().startProcessingRequest(mSession);
-        doProcessRequest(message, session, tag, command, responder);
+        doProcessRequest(message, session, responder);
         getSubscriptionManager().endProcessingRequest(mSession);
     }
 
@@ -68,10 +66,8 @@ public abstract class AbstractSubscriptionProcessor<M 
extends ImapRequest> exten
      * 
      * @param message
      * @param session
-     * @param tag
-     * @param command
      * @param responder
      */
-    protected abstract void doProcessRequest(M message, ImapSession session, 
Tag tag, ImapCommand command, Responder responder);
+    protected abstract void doProcessRequest(M message, ImapSession session, 
Responder responder);
 
 }
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AppendProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AppendProcessor.java
index 179792c..0a8282e 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AppendProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AppendProcessor.java
@@ -29,9 +29,7 @@ import java.util.Date;
 import javax.mail.Flags;
 
 import org.apache.commons.io.IOUtils;
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.UidRange;
 import org.apache.james.imap.api.message.response.StatusResponse;
@@ -64,7 +62,7 @@ public class AppendProcessor extends 
AbstractMailboxProcessor<AppendRequest> {
     }
 
     @Override
-    protected void processMessage(AppendRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(AppendRequest request, ImapSession session, 
Responder responder) {
         final String mailboxName = request.getMailboxName();
         final InputStream messageIn = request.getMessage();
         final Date datetime = request.getDatetime();
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AuthenticateProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AuthenticateProcessor.java
index 5a666c0..33b82e3 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/AuthenticateProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/AuthenticateProcessor.java
@@ -26,8 +26,6 @@ import java.util.Base64;
 import java.util.List;
 import java.util.StringTokenizer;
 
-import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.request.ImapRequest;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
@@ -57,7 +55,7 @@ public class AuthenticateProcessor extends 
AbstractAuthProcessor<AuthenticateReq
     }
 
     @Override
-    protected void processMessage(AuthenticateRequest request, ImapSession 
session, final Tag tag, final ImapCommand command, final Responder responder) {
+    protected void processMessage(AuthenticateRequest request, ImapSession 
session, final Responder responder) {
         final String authType = request.getAuthType();
         if (authType.equalsIgnoreCase(PLAIN)) {
             // See if AUTH=PLAIN is allowed. See IMAP-304
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/CapabilityProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/CapabilityProcessor.java
index ffd2656..aed50c8 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/CapabilityProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/CapabilityProcessor.java
@@ -31,9 +31,7 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConfiguration;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
 import org.apache.james.imap.api.process.ImapSession;
@@ -80,7 +78,7 @@ public class CapabilityProcessor extends 
AbstractMailboxProcessor<CapabilityRequ
     }
 
     @Override
-    protected void processMessage(CapabilityRequest request, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(CapabilityRequest request, ImapSession 
session, Responder responder) {
         final CapabilityResponse result = new 
CapabilityResponse(getSupportedCapabilities(session));        
         responder.respond(result);
         unsolicitedResponses(session, responder, false);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/CheckProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/CheckProcessor.java
index 10594fd..ccb4de8 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/CheckProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/CheckProcessor.java
@@ -21,8 +21,6 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
 import org.apache.james.imap.api.process.ImapSession;
@@ -39,7 +37,7 @@ public class CheckProcessor extends 
AbstractMailboxProcessor<CheckRequest> {
     }
 
     @Override
-    protected void processMessage(CheckRequest message, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(CheckRequest message, ImapSession session, 
Responder responder) {
         unsolicitedResponses(session, responder, false);
         okComplete(message, responder);
     }
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/CloseProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/CloseProcessor.java
index 3c92857..2d06c12 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/CloseProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/CloseProcessor.java
@@ -21,9 +21,7 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -49,7 +47,7 @@ public class CloseProcessor extends 
AbstractMailboxProcessor<CloseRequest> {
     }
 
     @Override
-    protected void processMessage(CloseRequest message, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(CloseRequest message, ImapSession session, 
Responder responder) {
         try {
             MessageManager mailbox = getSelectedMailbox(session);
             final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/CreateProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/CreateProcessor.java
index 964b04c..09cd9c1 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/CreateProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/CreateProcessor.java
@@ -21,9 +21,7 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -49,7 +47,7 @@ public class CreateProcessor extends 
AbstractMailboxProcessor<CreateRequest> {
     }
 
     @Override
-    protected void processMessage(CreateRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(CreateRequest request, ImapSession session, 
Responder responder) {
         final MailboxPath mailboxPath = 
PathConverter.forSession(session).buildFullPath(request.getMailboxName());
         try {
             final MailboxManager mailboxManager = getMailboxManager();
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/DeleteACLProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/DeleteACLProcessor.java
index 074f67b..26a3a4a 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/DeleteACLProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/DeleteACLProcessor.java
@@ -22,10 +22,8 @@ package org.apache.james.imap.processor;
 import java.io.Closeable;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -61,7 +59,7 @@ public class DeleteACLProcessor extends 
AbstractMailboxProcessor<DeleteACLReques
     }
 
     @Override
-    protected void processMessage(DeleteACLRequest message, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(DeleteACLRequest message, ImapSession 
session, Responder responder) {
 
         final MailboxManager mailboxManager = getMailboxManager();
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
@@ -88,7 +86,7 @@ public class DeleteACLProcessor extends 
AbstractMailboxProcessor<DeleteACLReques
                 /* RFC 4314 section 4. */
                 Object[] params = new Object[] {
                         MailboxACL.Right.Administer.toString(),
-                        command.getName(),
+                        message.getCommand().getName(),
                         mailboxName
                 };
                 HumanReadableText text = new 
HumanReadableText(HumanReadableText.UNSUFFICIENT_RIGHTS_KEY, 
HumanReadableText.UNSUFFICIENT_RIGHTS_DEFAULT_VALUE, params);
@@ -130,7 +128,7 @@ public class DeleteACLProcessor extends 
AbstractMailboxProcessor<DeleteACLReques
         } catch (MailboxNotFoundException e) {
             no(message, responder, HumanReadableText.MAILBOX_NOT_FOUND);
         } catch (MailboxException e) {
-            LOGGER.error("{} failed for mailbox {}", command.getName(), 
mailboxName, e);
+            LOGGER.error("{} failed for mailbox {}", 
message.getCommand().getName(), mailboxName, e);
             no(message, responder, 
HumanReadableText.GENERIC_FAILURE_DURING_PROCESSING);
         }
 
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/DeleteProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/DeleteProcessor.java
index d05f4f9..ebcb4a9 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/DeleteProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/DeleteProcessor.java
@@ -21,9 +21,7 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -51,7 +49,7 @@ public class DeleteProcessor extends 
AbstractMailboxProcessor<DeleteRequest> {
     }
 
     @Override
-    protected void processMessage(DeleteRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(DeleteRequest request, ImapSession session, 
Responder responder) {
         final MailboxPath mailboxPath = 
PathConverter.forSession(session).buildFullPath(request.getMailboxName());
         try {
             final SelectedMailbox selected = session.getSelected();
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/EnableProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/EnableProcessor.java
index 2123142..01920f5 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/EnableProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/EnableProcessor.java
@@ -28,8 +28,6 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
 
-import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.request.ImapRequest;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
@@ -69,7 +67,7 @@ public class EnableProcessor extends 
AbstractMailboxProcessor<EnableRequest> imp
 
 
     @Override
-    protected void processMessage(EnableRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(EnableRequest request, ImapSession session, 
Responder responder) {
         try {
 
             List<String> caps = request.getCapabilities();
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/ExpungeProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/ExpungeProcessor.java
index 07309bf..e2dedaf 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/ExpungeProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/ExpungeProcessor.java
@@ -23,10 +23,8 @@ import java.io.Closeable;
 import java.util.Iterator;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.response.StatusResponse.ResponseCode;
@@ -62,7 +60,7 @@ public class ExpungeProcessor extends 
AbstractMailboxProcessor<ExpungeRequest> i
     }
 
     @Override
-    protected void processMessage(ExpungeRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(ExpungeRequest request, ImapSession session, 
Responder responder) {
         try {
             final MessageManager mailbox = getSelectedMailbox(session);
             final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/GetACLProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/GetACLProcessor.java
index 8f7a81b..a06ef57 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/GetACLProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/GetACLProcessor.java
@@ -22,10 +22,8 @@ package org.apache.james.imap.processor;
 import java.io.Closeable;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -63,7 +61,7 @@ public class GetACLProcessor extends 
AbstractMailboxProcessor<GetACLRequest> imp
     }
 
     @Override
-    protected void processMessage(GetACLRequest message, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(GetACLRequest message, ImapSession session, 
Responder responder) {
 
         final MailboxManager mailboxManager = getMailboxManager();
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/GetAnnotationProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/GetAnnotationProcessor.java
index 2d89a7a..672655e 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/GetAnnotationProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/GetAnnotationProcessor.java
@@ -27,10 +27,8 @@ import java.util.Set;
 import java.util.function.Predicate;
 
 import org.apache.commons.lang3.NotImplementedException;
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.request.ImapRequest;
 import org.apache.james.imap.api.message.response.StatusResponse.ResponseCode;
@@ -70,12 +68,11 @@ public class GetAnnotationProcessor extends 
AbstractMailboxProcessor<GetAnnotati
     }
 
     @Override
-    protected void processMessage(GetAnnotationRequest message, ImapSession 
session, Tag tag, ImapCommand command,
-                                  Responder responder) {
+    protected void processMessage(GetAnnotationRequest message, ImapSession 
session, Responder responder) {
         try {
             proceed(message, session, responder);
         } catch (MailboxNotFoundException e) {
-            LOGGER.info("The command: {} is failed because not found mailbox 
{}", command.getName(), message.getMailboxName());
+            LOGGER.info("The command: {} is failed because not found mailbox 
{}", message.getCommand().getName(), message.getMailboxName());
             no(message, responder, HumanReadableText.FAILURE_NO_SUCH_MAILBOX, 
ResponseCode.tryCreate());
         } catch (MailboxException e) {
             LOGGER.error("GetAnnotation on mailbox {} failed for user {}", 
message.getMailboxName(), ImapSessionUtils.getUserName(session), e);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/GetQuotaProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/GetQuotaProcessor.java
index f6850f4..f16cd43 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/GetQuotaProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/GetQuotaProcessor.java
@@ -24,10 +24,8 @@ import java.util.List;
 
 import org.apache.james.core.quota.QuotaCount;
 import org.apache.james.core.quota.QuotaSize;
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -71,7 +69,7 @@ public class GetQuotaProcessor extends 
AbstractMailboxProcessor<GetQuotaRequest>
     }
 
     @Override
-    protected void processMessage(GetQuotaRequest message, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(GetQuotaRequest message, ImapSession 
session, Responder responder) {
         try {
             QuotaRoot quotaRoot = 
quotaRootResolver.fromString(message.getQuotaRoot());
             if (hasRight(quotaRoot, session)) {
@@ -87,7 +85,7 @@ public class GetQuotaProcessor extends 
AbstractMailboxProcessor<GetQuotaRequest>
             } else {
                 Object[] params = new Object[]{
                         MailboxACL.Right.Read.toString(),
-                        command.getName(),
+                        message.getCommand().getName(),
                         "Any mailbox of this user USER"
                 };
                 HumanReadableText humanReadableText = new 
HumanReadableText(HumanReadableText.UNSUFFICIENT_RIGHTS_KEY, 
HumanReadableText.UNSUFFICIENT_RIGHTS_DEFAULT_VALUE, params);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/GetQuotaRootProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/GetQuotaRootProcessor.java
index 6003eff..7f1fc41 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/GetQuotaRootProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/GetQuotaRootProcessor.java
@@ -24,10 +24,8 @@ import java.util.List;
 
 import org.apache.james.core.quota.QuotaCount;
 import org.apache.james.core.quota.QuotaSize;
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -72,7 +70,7 @@ public class GetQuotaRootProcessor extends 
AbstractMailboxProcessor<GetQuotaRoot
     }
 
     @Override
-    protected void processMessage(GetQuotaRootRequest message, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(GetQuotaRootRequest message, ImapSession 
session, Responder responder) {
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
         final MailboxManager mailboxManager = getMailboxManager();
 
@@ -95,7 +93,7 @@ public class GetQuotaRootProcessor extends 
AbstractMailboxProcessor<GetQuotaRoot
             } else {
                 Object[] params = new Object[]{
                         MailboxACL.Right.Read.toString(),
-                        command.getName(),
+                        message.getCommand().getName(),
                         message.getMailboxName()
                 };
                 HumanReadableText humanReadableText = new 
HumanReadableText(HumanReadableText.UNSUFFICIENT_RIGHTS_KEY, 
HumanReadableText.UNSUFFICIENT_RIGHTS_DEFAULT_VALUE, params);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/IdleProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/IdleProcessor.java
index fa19b61..42903c0 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/IdleProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/IdleProcessor.java
@@ -30,10 +30,8 @@ import java.util.concurrent.ThreadFactory;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicBoolean;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConfiguration;
 import org.apache.james.imap.api.ImapSessionState;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponse;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
@@ -86,7 +84,7 @@ public class IdleProcessor extends 
AbstractMailboxProcessor<IdleRequest> impleme
     }
 
     @Override
-    protected void processMessage(IdleRequest message, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(IdleRequest message, ImapSession session, 
Responder responder) {
         SelectedMailbox sm = session.getSelected();
         Registration registration;
         if (sm != null) {
@@ -112,7 +110,7 @@ public class IdleProcessor extends 
AbstractMailboxProcessor<IdleRequest> impleme
                 }
                 session.popLineHandler();
                 if (!DONE.equals(line.toUpperCase(Locale.US))) {
-                    StatusResponse response = 
getStatusResponseFactory().taggedBad(tag, command, 
HumanReadableText.INVALID_COMMAND);
+                    StatusResponse response = 
getStatusResponseFactory().taggedBad(message.getTag(), message.getCommand(), 
HumanReadableText.INVALID_COMMAND);
                     responder.respond(response);
                 } else {
                     okComplete(message, responder);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
index ef7f299..58aa33d 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
@@ -23,9 +23,7 @@ import java.io.Closeable;
 import java.util.ArrayList;
 import java.util.Collection;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.display.ModifiedUtf7;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
@@ -54,7 +52,7 @@ public class LSubProcessor extends 
AbstractSubscriptionProcessor<LsubRequest> {
     }
 
     @Override
-    protected void doProcessRequest(LsubRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void doProcessRequest(LsubRequest request, ImapSession session, 
Responder responder) {
         String referenceName = request.getBaseReferenceName();
         String mailboxPattern = request.getMailboxPattern();
 
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/ListProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/ListProcessor.java
index c27b98f..a535273 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/ListProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/ListProcessor.java
@@ -22,10 +22,8 @@ package org.apache.james.imap.processor;
 import java.io.Closeable;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.display.ModifiedUtf7;
 import org.apache.james.imap.api.message.response.ImapResponseMessage;
@@ -70,7 +68,7 @@ public class ListProcessor extends 
AbstractMailboxProcessor<ListRequest> {
      * reference is non-rooted or is an empty string.
      */
     @Override
-    protected void processMessage(ListRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(ListRequest request, ImapSession session, 
Responder responder) {
         String baseReferenceName = request.getBaseReferenceName();
         String mailboxPatternString = request.getMailboxPattern();
         MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/ListRightsProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/ListRightsProcessor.java
index 8cde8ca..9cfc43f 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/ListRightsProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/ListRightsProcessor.java
@@ -22,10 +22,8 @@ package org.apache.james.imap.processor;
 import java.io.Closeable;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -62,7 +60,7 @@ public class ListRightsProcessor extends 
AbstractMailboxProcessor<ListRightsRequ
     }
 
     @Override
-    protected void processMessage(ListRightsRequest message, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(ListRightsRequest message, ImapSession 
session, Responder responder) {
 
         final MailboxManager mailboxManager = getMailboxManager();
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
@@ -90,7 +88,7 @@ public class ListRightsProcessor extends 
AbstractMailboxProcessor<ListRightsRequ
                 /* RFC 4314 section 4. */
                 Object[] params = new Object[] {
                         MailboxACL.Right.Administer.toString(),
-                        command.getName(),
+                        message.getCommand().getName(),
                         mailboxName
                 };
                 HumanReadableText text = new 
HumanReadableText(HumanReadableText.UNSUFFICIENT_RIGHTS_KEY, 
HumanReadableText.UNSUFFICIENT_RIGHTS_DEFAULT_VALUE, params);
@@ -119,7 +117,7 @@ public class ListRightsProcessor extends 
AbstractMailboxProcessor<ListRightsRequ
         } catch (MailboxNotFoundException e) {
             no(message, responder, HumanReadableText.MAILBOX_NOT_FOUND);
         } catch (MailboxException e) {
-            LOGGER.error("{} failed for mailbox {}", command.getName(), 
mailboxName, e);
+            LOGGER.error("{} failed for mailbox {}", 
message.getCommand().getName(), mailboxName, e);
             no(message, responder, 
HumanReadableText.GENERIC_FAILURE_DURING_PROCESSING);
         }
 
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/LoginProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/LoginProcessor.java
index adf9aef..87f4b00 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/LoginProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/LoginProcessor.java
@@ -23,8 +23,6 @@ import java.io.Closeable;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -49,7 +47,7 @@ public class LoginProcessor extends 
AbstractAuthProcessor<LoginRequest> implemen
     }
 
     @Override
-    protected void processMessage(LoginRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(LoginRequest request, ImapSession session, 
Responder responder) {
             // check if the login is allowed with LOGIN command. See IMAP-304
             if (session.isPlainAuthDisallowed() && session.isTLSActive() == 
false) {
                 no(request, responder, HumanReadableText.DISABLED_LOGIN);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/LogoutProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/LogoutProcessor.java
index 2c15df7..17204f9 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/LogoutProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/LogoutProcessor.java
@@ -21,9 +21,7 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -46,7 +44,7 @@ public class LogoutProcessor extends 
AbstractMailboxProcessor<LogoutRequest> {
     }
 
     @Override
-    protected void processMessage(LogoutRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(LogoutRequest request, ImapSession session, 
Responder responder) {
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
         try {
             getMailboxManager().logout(mailboxSession, false);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/MyRightsProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/MyRightsProcessor.java
index 64ba139..e904805 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/MyRightsProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/MyRightsProcessor.java
@@ -23,10 +23,8 @@ import java.io.Closeable;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -60,7 +58,7 @@ public class MyRightsProcessor extends 
AbstractMailboxProcessor<MyRightsRequest>
     }
 
     @Override
-    protected void processMessage(MyRightsRequest message, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(MyRightsRequest message, ImapSession 
session, Responder responder) {
 
         final MailboxManager mailboxManager = getMailboxManager();
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
@@ -102,7 +100,7 @@ public class MyRightsProcessor extends 
AbstractMailboxProcessor<MyRightsRequest>
         } catch (MailboxNotFoundException e) {
             no(message, responder, HumanReadableText.MAILBOX_NOT_FOUND);
         } catch (MailboxException e) {
-            LOGGER.error("{} failed for mailbox {}", command.getName(), 
mailboxName, e);
+            LOGGER.error("{} failed for mailbox {}", 
message.getCommand().getName(), mailboxName, e);
             no(message, responder, 
HumanReadableText.GENERIC_FAILURE_DURING_PROCESSING);
         }
 
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/NamespaceProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/NamespaceProcessor.java
index e34990e..c6ba459 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/NamespaceProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/NamespaceProcessor.java
@@ -27,9 +27,7 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
 import org.apache.james.imap.api.process.ImapSession;
@@ -53,7 +51,7 @@ public class NamespaceProcessor extends 
AbstractMailboxProcessor<NamespaceReques
     }
 
     @Override
-    protected void processMessage(NamespaceRequest request, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(NamespaceRequest request, ImapSession 
session, Responder responder) {
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
         final List<NamespaceResponse.Namespace> personalNamespaces = 
buildPersonalNamespaces(mailboxSession, session);
         final List<NamespaceResponse.Namespace> otherUsersNamespaces = 
buildOtherUsersSpaces(mailboxSession, session);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/NoopProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/NoopProcessor.java
index c1b3375..9dd7e24 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/NoopProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/NoopProcessor.java
@@ -21,8 +21,6 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
 import org.apache.james.imap.api.process.ImapSession;
@@ -39,7 +37,7 @@ public class NoopProcessor extends 
AbstractMailboxProcessor<NoopRequest> {
     }
 
     @Override
-    protected void processMessage(NoopRequest message, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(NoopRequest message, ImapSession session, 
Responder responder) {
         // So, unsolicated responses are returned to check for new mail
         unsolicitedResponses(session, responder, false);
         okComplete(message, responder);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/RenameProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/RenameProcessor.java
index b099c07..b418fae 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/RenameProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/RenameProcessor.java
@@ -21,10 +21,8 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -52,7 +50,7 @@ public class RenameProcessor extends 
AbstractMailboxProcessor<RenameRequest> {
     }
 
     @Override
-    protected void processMessage(RenameRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(RenameRequest request, ImapSession session, 
Responder responder) {
         PathConverter pathConverter = PathConverter.forSession(session);
         MailboxPath existingPath = 
pathConverter.buildFullPath(request.getExistingName());
         MailboxPath newPath = 
pathConverter.buildFullPath(request.getNewName());
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SearchProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SearchProcessor.java
index f047482..c2752a9 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SearchProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SearchProcessor.java
@@ -29,10 +29,8 @@ import java.util.stream.Stream;
 
 import javax.mail.Flags.Flag;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
@@ -83,7 +81,7 @@ public class SearchProcessor extends 
AbstractMailboxProcessor<SearchRequest> imp
     }
 
     @Override
-    protected void processMessage(SearchRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(SearchRequest request, ImapSession session, 
Responder responder) {
         final SearchOperation operation = request.getSearchOperation();
         final SearchKey searchKey = operation.getSearchKey();
         final boolean useUids = request.isUseUids();
@@ -173,7 +171,7 @@ public class SearchProcessor extends 
AbstractMailboxProcessor<SearchRequest> imp
                             SearchResUtil.saveSequenceSet(session, 
savedRanges.toArray(new IdRange[0]));
                         }
                     }
-                    response = new ESearchResponse(min, max, count, idRanges, 
uidRanges, highestModSeq, tag, useUids, resultOptions);
+                    response = new ESearchResponse(min, max, count, idRanges, 
uidRanges, highestModSeq, request.getTag(), useUids, resultOptions);
                 } else {
                     // Just save the returned sequence-set as this is not 
SEARCHRES + ESEARCH
                     SearchResUtil.saveSequenceSet(session, idRanges);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SetACLProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SetACLProcessor.java
index 3dd4a14..97bb3aa 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SetACLProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SetACLProcessor.java
@@ -23,10 +23,8 @@ import java.io.Closeable;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -62,7 +60,7 @@ public class SetACLProcessor extends 
AbstractMailboxProcessor<SetACLRequest> imp
     }
 
     @Override
-    protected void processMessage(SetACLRequest message, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(SetACLRequest message, ImapSession session, 
Responder responder) {
 
         final MailboxManager mailboxManager = getMailboxManager();
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
@@ -107,7 +105,7 @@ public class SetACLProcessor extends 
AbstractMailboxProcessor<SetACLRequest> imp
                 /* RFC 4314 section 4. */
                 Object[] params = new Object[] {
                         MailboxACL.Right.Administer.toString(),
-                        command.getName(),
+                        message.getCommand().getName(),
                         mailboxName
                 };
                 HumanReadableText text = new 
HumanReadableText(HumanReadableText.UNSUFFICIENT_RIGHTS_KEY, 
HumanReadableText.UNSUFFICIENT_RIGHTS_DEFAULT_VALUE, params);
@@ -147,7 +145,7 @@ public class SetACLProcessor extends 
AbstractMailboxProcessor<SetACLRequest> imp
         } catch (MailboxNotFoundException e) {
             no(message, responder, HumanReadableText.MAILBOX_NOT_FOUND);
         } catch (MailboxException e) {
-            LOGGER.error("{} failed for mailbox {}", command.getName(), 
mailboxName, e);
+            LOGGER.error("{} failed for mailbox {}", 
message.getCommand().getName(), mailboxName, e);
             no(message, responder, 
HumanReadableText.GENERIC_FAILURE_DURING_PROCESSING);
         }
 
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SetAnnotationProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SetAnnotationProcessor.java
index 848e906..ca9e773 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SetAnnotationProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SetAnnotationProcessor.java
@@ -22,10 +22,8 @@ package org.apache.james.imap.processor;
 import java.io.Closeable;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponse;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
@@ -60,8 +58,7 @@ public class SetAnnotationProcessor extends 
AbstractMailboxProcessor<SetAnnotati
     }
 
     @Override
-    protected void processMessage(SetAnnotationRequest message, ImapSession 
session, Tag tag, ImapCommand command,
-                                  Responder responder) {
+    protected void processMessage(SetAnnotationRequest message, ImapSession 
session, Responder responder) {
         final MailboxManager mailboxManager = getMailboxManager();
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
         final String mailboxName = message.getMailboxName();
@@ -72,13 +69,13 @@ public class SetAnnotationProcessor extends 
AbstractMailboxProcessor<SetAnnotati
 
             okComplete(message, responder);
         } catch (MailboxNotFoundException e) {
-            LOGGER.info("{} failed for mailbox {}", command.getName(), 
mailboxName, e);
+            LOGGER.info("{} failed for mailbox {}", 
message.getCommand().getName(), mailboxName, e);
             no(message, responder, HumanReadableText.FAILURE_NO_SUCH_MAILBOX, 
StatusResponse.ResponseCode.tryCreate());
         } catch (AnnotationException e) {
-            LOGGER.info("{} failed for mailbox {}", command.getName(), 
mailboxName, e);
+            LOGGER.info("{} failed for mailbox {}", 
message.getCommand().getName(), mailboxName, e);
             no(message, responder, new 
HumanReadableText(HumanReadableText.MAILBOX_ANNOTATION_KEY, e.getMessage()));
         } catch (MailboxException e) {
-            LOGGER.error("{} failed for mailbox {}", command.getName(), 
mailboxName, e);
+            LOGGER.error("{} failed for mailbox {}", 
message.getCommand().getName(), mailboxName, e);
             no(message, responder, 
HumanReadableText.GENERIC_FAILURE_DURING_PROCESSING);
         }
     }
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SetQuotaProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SetQuotaProcessor.java
index 0a4b1f2..69a56e6 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SetQuotaProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SetQuotaProcessor.java
@@ -23,9 +23,7 @@ import java.io.Closeable;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -52,10 +50,10 @@ public class SetQuotaProcessor extends 
AbstractMailboxProcessor<SetQuotaRequest>
     }
 
     @Override
-    protected void processMessage(SetQuotaRequest message, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(SetQuotaRequest message, ImapSession 
session, Responder responder) {
         Object[] params = new Object[]{
             "Full admin rights",
-            command.getName(),
+            message.getCommand().getName(),
             "Can not perform SETQUOTA commands"
         };
         HumanReadableText humanReadableText = new 
HumanReadableText(HumanReadableText.UNSUFFICIENT_RIGHTS_KEY, 
HumanReadableText.UNSUFFICIENT_RIGHTS_DEFAULT_VALUE, params);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/StatusProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/StatusProcessor.java
index d16e911..7620d54 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/StatusProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/StatusProcessor.java
@@ -21,9 +21,7 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.StatusDataItems;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
@@ -52,7 +50,7 @@ public class StatusProcessor extends 
AbstractMailboxProcessor<StatusRequest> {
     }
 
     @Override
-    protected void processMessage(StatusRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(StatusRequest request, ImapSession session, 
Responder responder) {
         MailboxPath mailboxPath = 
PathConverter.forSession(session).buildFullPath(request.getMailboxName());
         StatusDataItems statusDataItems = request.getStatusDataItems();
         MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/StoreProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/StoreProcessor.java
index ef95fa1..8f8b876 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/StoreProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/StoreProcessor.java
@@ -32,7 +32,6 @@ import javax.mail.Flags;
 import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
@@ -76,11 +75,11 @@ public class StoreProcessor extends 
AbstractMailboxProcessor<StoreRequest> {
     }
 
     @Override
-    protected void processMessage(StoreRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(StoreRequest request, ImapSession session, 
Responder responder) {
         final IdRange[] idSet = request.getIdSet();
         final boolean useUids = request.isUseUids();
         final long unchangedSince = request.getUnchangedSince();
-        ImapCommand imapCommand = command;
+        ImapCommand imapCommand = request.getCommand();
         
         try {
             final MessageManager mailbox = getSelectedMailbox(session);
@@ -104,7 +103,7 @@ public class StoreProcessor extends 
AbstractMailboxProcessor<StoreRequest> {
                         //       Use of UNCHANGEDSINCE with a modification 
sequence of 0 always
                         //       fails if the metadata item exists.  A system 
flag MUST always be
                         //       considered existent, whether it was set or 
not.
-                        final StatusResponse response = 
getStatusResponseFactory().taggedOk(tag, command, HumanReadableText.FAILED, 
ResponseCode.condStore(idSet));
+                        final StatusResponse response = 
getStatusResponseFactory().taggedOk(request.getTag(), request.getCommand(), 
HumanReadableText.FAILED, ResponseCode.condStore(idSet));
                         responder.respond(response);
                         return;
                     }
@@ -195,7 +194,7 @@ public class StoreProcessor extends 
AbstractMailboxProcessor<StoreRequest> {
                     // we need to return the failed sequences
                     //
                     // See RFC4551 3.2. STORE and UID STORE Commands
-                    final StatusResponse response = 
getStatusResponseFactory().taggedOk(tag, command, HumanReadableText.FAILED, 
ResponseCode.condStore(idRanges));
+                    final StatusResponse response = 
getStatusResponseFactory().taggedOk(request.getTag(), request.getCommand(), 
HumanReadableText.FAILED, ResponseCode.condStore(idRanges));
                     responder.respond(response);
                 } else {
                     List<IdRange> ranges = new ArrayList<>();
@@ -204,7 +203,7 @@ public class StoreProcessor extends 
AbstractMailboxProcessor<StoreRequest> {
                     }
                     IdRange[] failedRanges = 
IdRange.mergeRanges(ranges).toArray(new IdRange[0]);
                     // See RFC4551 3.2. STORE and UID STORE Commands
-                    final StatusResponse response = 
getStatusResponseFactory().taggedOk(tag, command, HumanReadableText.FAILED, 
ResponseCode.condStore(failedRanges));
+                    final StatusResponse response = 
getStatusResponseFactory().taggedOk(request.getTag(), request.getCommand(), 
HumanReadableText.FAILED, ResponseCode.condStore(failedRanges));
                     responder.respond(response);
                     
                 }
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SubscribeProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SubscribeProcessor.java
index b4a2797..02c2c0f 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/SubscribeProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/SubscribeProcessor.java
@@ -21,9 +21,7 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -47,7 +45,7 @@ public class SubscribeProcessor extends 
AbstractSubscriptionProcessor<SubscribeR
     }
 
     @Override
-    protected void doProcessRequest(SubscribeRequest request, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void doProcessRequest(SubscribeRequest request, ImapSession 
session, Responder responder) {
         final String mailboxName = request.getMailboxName();
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
         try {
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/UnselectProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/UnselectProcessor.java
index 7f34734..cac3095 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/UnselectProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/UnselectProcessor.java
@@ -23,8 +23,6 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -49,7 +47,7 @@ public class UnselectProcessor extends 
AbstractMailboxProcessor<UnselectRequest>
     }
 
     @Override
-    protected void processMessage(UnselectRequest message, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(UnselectRequest message, ImapSession 
session, Responder responder) {
         if (session.getSelected() != null) {
             session.deselect();
             okComplete(message, responder);
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/UnsubscribeProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/UnsubscribeProcessor.java
index 17fdcb4..d251607 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/UnsubscribeProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/UnsubscribeProcessor.java
@@ -21,9 +21,7 @@ package org.apache.james.imap.processor;
 
 import java.io.Closeable;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -47,7 +45,7 @@ public class UnsubscribeProcessor extends 
AbstractSubscriptionProcessor<Unsubscr
     }
 
     @Override
-    protected void doProcessRequest(UnsubscribeRequest request, ImapSession 
session, Tag tag, ImapCommand command, Responder responder) {
+    protected void doProcessRequest(UnsubscribeRequest request, ImapSession 
session, Responder responder) {
         final String mailboxName = request.getMailboxName();
         final MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
         try {
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchProcessor.java
index 76e34f2..2cf8481 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchProcessor.java
@@ -24,10 +24,8 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 
-import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.Tag;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.BodyFetchElement;
 import org.apache.james.imap.api.message.FetchData;
@@ -65,7 +63,7 @@ public class FetchProcessor extends 
AbstractMailboxProcessor<FetchRequest> {
     }
 
     @Override
-    protected void processMessage(FetchRequest request, ImapSession session, 
Tag tag, ImapCommand command, Responder responder) {
+    protected void processMessage(FetchRequest request, ImapSession session, 
Responder responder) {
         final boolean useUids = request.isUseUids();
         final IdRange[] idSet = request.getIdSet();
         final FetchData fetch = request.getFetch();
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/LSubProcessorTest.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/LSubProcessorTest.java
index 81bcc2d..f6b0243 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/LSubProcessorTest.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/LSubProcessorTest.java
@@ -114,7 +114,7 @@ public class LSubProcessorTest {
 
         LsubRequest request = new LsubRequest(command, "", PARENT
                 + HIERARCHY_DELIMITER + "%", TAG);
-        processor.doProcessRequest(request, session, TAG, command, 
responderImpl);
+        processor.doProcessRequest(request, session, responderImpl);
 
         verify(responder).respond(new LSubResponse(CHILD_ONE, false, 
HIERARCHY_DELIMITER));
         verify(responder).respond(new LSubResponse(CHILD_TWO, false, 
HIERARCHY_DELIMITER));
@@ -136,7 +136,7 @@ public class LSubProcessorTest {
 
         LsubRequest request = new LsubRequest(command, "", ROOT
                 + HIERARCHY_DELIMITER + "%", TAG);
-        processor.doProcessRequest(request, session, TAG, command, 
responderImpl);
+        processor.doProcessRequest(request, session, responderImpl);
 
         verify(responder).respond(new LSubResponse(PARENT, true, 
HIERARCHY_DELIMITER));
         verify(responder).respond(statusResponse);
@@ -158,7 +158,7 @@ public class LSubProcessorTest {
 
         LsubRequest request = new LsubRequest(command, "", ROOT
                 + HIERARCHY_DELIMITER + "%", TAG);
-        processor.doProcessRequest(request, session, TAG, command, 
responderImpl);
+        processor.doProcessRequest(request, session, responderImpl);
 
         verify(responder).respond(new LSubResponse(PARENT, false, 
HIERARCHY_DELIMITER));
         verify(responder).respond(statusResponse);
@@ -174,7 +174,7 @@ public class LSubProcessorTest {
             .thenReturn(statusResponse);
 
         LsubRequest request = new LsubRequest(command, "", "*", TAG);
-        processor.doProcessRequest(request, session, TAG, command, 
responderImpl);
+        processor.doProcessRequest(request, session, responderImpl);
 
         verify(responder).respond(new LSubResponse(MAILBOX_A, false, 
HIERARCHY_DELIMITER));
         verify(responder).respond(new LSubResponse(MAILBOX_B, false, 
HIERARCHY_DELIMITER));
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/SearchProcessorTest.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/SearchProcessorTest.java
index 15d2f90..00f6b9c 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/SearchProcessorTest.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/SearchProcessorTest.java
@@ -473,7 +473,7 @@ public class SearchProcessorTest {
         when(selectedMailbox.hasNewApplicableFlags()).thenReturn(false);
 
         SearchRequest message = new SearchRequest(command, new 
SearchOperation(key, new ArrayList<>()), false, TAG);
-        processor.processMessage(message, session, TAG, command, responder);
+        processor.processMessage(message, session, responder);
     }
 
     private void expectOk() {


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

Reply via email to