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 03c7a9d8d1b45ccd06b20eb5602a8b107dcdc10a
Author: Benoit Tellier <[email protected]>
AuthorDate: Thu Nov 21 14:24:11 2019 +0700

    [Refactoring] MailboxPath::inbox should accept Username
---
 .../listeners/SetCustomFlagOnBigMessagesTest.java  |  3 +-
 .../apache/james/mailbox/model/MailboxPath.java    |  6 ++-
 .../james/mailbox/fixture/MailboxFixture.java      |  4 +-
 .../mailbox/manager/ManagerTestProvisionner.java   | 14 ++-----
 .../manager/QuotaMessageManagerContract.java       | 27 +++++++------
 .../store/mail/model/ListMessageAssertTest.java    |  2 +-
 .../quota/DefaultUserQuotaRootResolverTest.java    |  2 +-
 .../mailbox/store/quota/QuotaCheckerTest.java      |  2 +-
 .../search/AbstractMessageSearchIndexTest.java     |  4 +-
 .../tools/indexer/CassandraReIndexerImplTest.java  |  2 +-
 .../tools/indexer/MessageIdReIndexerImplTest.java  |  2 +-
 .../mailbox/tools/indexer/ReIndexerImplTest.java   |  2 +-
 .../james/imap/processor/CopyProcessorTest.java    | 45 ++++++++++-----------
 .../imap/processor/GetAnnotationProcessorTest.java |  5 ++-
 .../james/imap/processor/MoveProcessorTest.java    | 46 ++++++++++------------
 .../imap/processor/SetAnnotationProcessorTest.java |  5 ++-
 .../processor/base/SelectedMailboxImplTest.java    |  3 +-
 .../org/apache/james/FixingGhostMailboxTest.java   |  4 +-
 .../adapter/mailbox/MailboxManagementTest.java     |  2 +-
 .../james/transport/mailets/AliasMappingTest.java  |  7 ++--
 .../james/transport/matchers/IsOverQuota.java      |  9 +----
 .../mailets/delivery/LocalDeliveryTest.java        |  5 +--
 .../mailets/delivery/SieveIntegrationTest.java     | 40 +++++++++----------
 .../mailets/delivery/ToRecipientFolderTest.java    |  2 +-
 .../james/transport/matchers/IsOverQuotaTest.java  |  9 ++---
 .../jmap/draft/methods/integration/FilterTest.java |  3 +-
 .../methods/integration/SetMessagesMethodTest.java | 24 +++++------
 .../jmap/draft/methods/GetMailboxesMethodTest.java |  4 +-
 .../james/jmap/draft/model/MailboxFactoryTest.java | 13 +++---
 .../hook/MailboxDeliverToRecipientHandler.java     |  2 +-
 .../apache/james/pop3server/POP3ServerTest.java    | 10 ++---
 .../EventDeadLettersIntegrationTest.java           |  3 +-
 ...dminServerTaskSerializationIntegrationTest.java | 12 +++---
 .../webadmin/routes/ReindexingRoutesTest.java      |  2 +-
 .../james/webadmin/routes/UserQuotaRoutesTest.java |  3 +-
 35 files changed, 155 insertions(+), 173 deletions(-)

diff --git 
a/examples/custom-listeners/src/test/java/org/apache/james/examples/custom/listeners/SetCustomFlagOnBigMessagesTest.java
 
b/examples/custom-listeners/src/test/java/org/apache/james/examples/custom/listeners/SetCustomFlagOnBigMessagesTest.java
index b1ce0bd..be8f918 100644
--- 
a/examples/custom-listeners/src/test/java/org/apache/james/examples/custom/listeners/SetCustomFlagOnBigMessagesTest.java
+++ 
b/examples/custom-listeners/src/test/java/org/apache/james/examples/custom/listeners/SetCustomFlagOnBigMessagesTest.java
@@ -29,7 +29,6 @@ import java.util.stream.Stream;
 import javax.mail.Flags;
 
 import org.apache.james.core.Username;
-import org.apache.james.mailbox.DefaultMailboxes;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MailboxSessionUtil;
 import org.apache.james.mailbox.MessageManager;
@@ -56,7 +55,7 @@ class SetCustomFlagOnBigMessagesTest {
 
     private static final Username USER = Username.of("user");
     private static final Event.EventId RANDOM_EVENT_ID = 
Event.EventId.random();
-    private static final MailboxPath INBOX_PATH = MailboxPath.forUser(USER, 
DefaultMailboxes.INBOX);
+    private static final MailboxPath INBOX_PATH = MailboxPath.inbox(USER);
 
     private SetCustomFlagOnBigMessages testee;
     private MessageManager inboxMessageManager;
diff --git 
a/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxPath.java 
b/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxPath.java
index 458000e..baa600b 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxPath.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxPath.java
@@ -43,7 +43,11 @@ public class MailboxPath {
      * session
      */
     public static MailboxPath inbox(MailboxSession session) {
-        return MailboxPath.forUser(session.getUser(), MailboxConstants.INBOX);
+        return MailboxPath.inbox(session.getUser());
+    }
+
+    public static MailboxPath inbox(Username username) {
+        return MailboxPath.forUser(username, MailboxConstants.INBOX);
     }
 
     /**
diff --git 
a/mailbox/api/src/test/java/org/apache/james/mailbox/fixture/MailboxFixture.java
 
b/mailbox/api/src/test/java/org/apache/james/mailbox/fixture/MailboxFixture.java
index 4024ea9..07274f0 100644
--- 
a/mailbox/api/src/test/java/org/apache/james/mailbox/fixture/MailboxFixture.java
+++ 
b/mailbox/api/src/test/java/org/apache/james/mailbox/fixture/MailboxFixture.java
@@ -27,8 +27,8 @@ public interface MailboxFixture {
     Username BOB = Username.of("bob");
     Username CEDRIC = Username.of("cedric");
 
-    MailboxPath INBOX_ALICE = MailboxPath.forUser(ALICE, "INBOX");
+    MailboxPath INBOX_ALICE = MailboxPath.inbox(ALICE);
     MailboxPath OUTBOX_ALICE = MailboxPath.forUser(ALICE, "OUTBOX");
     MailboxPath SENT_ALICE = MailboxPath.forUser(ALICE, "SENT");
-    MailboxPath INBOX_BOB = MailboxPath.forUser(BOB, "INBOX");
+    MailboxPath INBOX_BOB = MailboxPath.inbox(BOB);
 }
diff --git 
a/mailbox/api/src/test/java/org/apache/james/mailbox/manager/ManagerTestProvisionner.java
 
b/mailbox/api/src/test/java/org/apache/james/mailbox/manager/ManagerTestProvisionner.java
index 0bb8411..555cdb7 100644
--- 
a/mailbox/api/src/test/java/org/apache/james/mailbox/manager/ManagerTestProvisionner.java
+++ 
b/mailbox/api/src/test/java/org/apache/james/mailbox/manager/ManagerTestProvisionner.java
@@ -46,10 +46,10 @@ public class ManagerTestProvisionner {
     public static final String USER_PASS = "pass";
     public static final Username OTHER_USER = 
Username.of("[email protected]");
     public static final String OTHER_USER_PASS = "otherPass";
+    public static final MailboxPath INBOX = MailboxPath.inbox(USER);
 
     private IntegrationResources<?> integrationResources;
 
-    private MailboxPath inbox;
     private MessageManager messageManager;
     private MailboxPath subFolder;
     private MailboxSession session;
@@ -59,8 +59,7 @@ public class ManagerTestProvisionner {
         this.integrationResources = integrationResources;
 
         session = integrationResources.getMailboxManager().login(USER, 
USER_PASS);
-        inbox = MailboxPath.inbox(session);
-        subFolder = new MailboxPath(inbox, "INBOX.SUB");
+        subFolder = new MailboxPath(INBOX, "INBOX.SUB");
 
         MaxQuotaManager maxQuotaManager = 
integrationResources.getMaxQuotaManager();
         maxQuotaManager.setGlobalMaxMessage(QuotaCountLimit.count(1000));
@@ -68,9 +67,9 @@ public class ManagerTestProvisionner {
     }
 
     public void createMailboxes() throws MailboxException {
-        integrationResources.getMailboxManager().createMailbox(inbox, session);
+        integrationResources.getMailboxManager().createMailbox(INBOX, session);
         integrationResources.getMailboxManager().createMailbox(subFolder, 
session);
-        messageManager = 
integrationResources.getMailboxManager().getMailbox(inbox, session);
+        messageManager = 
integrationResources.getMailboxManager().getMailbox(INBOX, session);
     }
 
     public MessageManager getMessageManager() {
@@ -81,11 +80,6 @@ public class ManagerTestProvisionner {
         return subFolder;
     }
 
-    public MailboxPath getInbox() {
-        return inbox;
-    }
-
-
     public MailboxSession getSession() {
         return session;
     }
diff --git 
a/mailbox/api/src/test/java/org/apache/james/mailbox/manager/QuotaMessageManagerContract.java
 
b/mailbox/api/src/test/java/org/apache/james/mailbox/manager/QuotaMessageManagerContract.java
index a793b01..5e5fdf9 100644
--- 
a/mailbox/api/src/test/java/org/apache/james/mailbox/manager/QuotaMessageManagerContract.java
+++ 
b/mailbox/api/src/test/java/org/apache/james/mailbox/manager/QuotaMessageManagerContract.java
@@ -19,6 +19,7 @@
 
 package org.apache.james.mailbox.manager;
 
+import static org.apache.james.mailbox.manager.ManagerTestProvisionner.INBOX;
 import static org.assertj.core.api.Assertions.assertThatCode;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
@@ -62,7 +63,7 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
         IntegrationResources<T> resources = getResources();
 
         QuotaCountLimit maxMessageCount = QuotaCountLimit.count(8);
-        
resources.getMaxQuotaManager().setMaxMessage(resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox()),
 maxMessageCount);
+        
resources.getMaxQuotaManager().setMaxMessage(resources.getQuotaRootResolver().getQuotaRoot(INBOX),
 maxMessageCount);
 
         assertThatThrownBy(() -> provisionner.fillMailbox())
             .isInstanceOf(OverQuotaException.class);
@@ -74,7 +75,7 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
         IntegrationResources<T> resources = getResources();
 
         QuotaSizeLimit maxQuotaSize = QuotaSizeLimit.size(3 * 
MockMail.MAIL_TEXT_PLAIN.length() + 1);
-        
resources.getMaxQuotaManager().setMaxStorage(resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox()),
 maxQuotaSize);
+        
resources.getMaxQuotaManager().setMaxStorage(resources.getQuotaRootResolver().getQuotaRoot(INBOX),
 maxQuotaSize);
 
         assertThatThrownBy(() -> provisionner.fillMailbox())
             .isInstanceOf(OverQuotaException.class);
@@ -91,10 +92,10 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
             // Silent these exception as we don't want it to disturb the test
         }
         QuotaCountLimit maxMessageCount = QuotaCountLimit.count(15L);
-        
resources.getMaxQuotaManager().setMaxMessage(resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox()),
 maxMessageCount);
+        
resources.getMaxQuotaManager().setMaxMessage(resources.getQuotaRootResolver().getQuotaRoot(INBOX),
 maxMessageCount);
 
         assertThatThrownBy(() -> resources.getMailboxManager().copyMessages(
-                MessageRange.all(), provisionner.getInbox(), 
provisionner.getSubFolder(), provisionner.getSession()))
+                MessageRange.all(), INBOX, provisionner.getSubFolder(), 
provisionner.getSession()))
             .isInstanceOf(OverQuotaException.class);
     }
 
@@ -104,14 +105,14 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
         IntegrationResources<T> resources = getResources();
 
         QuotaSizeLimit maxQuotaSize = QuotaSizeLimit.size(15L * 
MockMail.MAIL_TEXT_PLAIN.length());
-        
resources.getMaxQuotaManager().setMaxStorage(resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox()),
 maxQuotaSize);
+        
resources.getMaxQuotaManager().setMaxStorage(resources.getQuotaRootResolver().getQuotaRoot(INBOX),
 maxQuotaSize);
         try {
             provisionner.fillMailbox();
         } catch (OverQuotaException overQuotaException) {
             // Silent these exception as we don't want it to disturb the test
         }
         assertThatThrownBy(() -> resources.getMailboxManager().copyMessages(
-                MessageRange.all(), provisionner.getInbox(), 
provisionner.getSubFolder(), provisionner.getSession()))
+                MessageRange.all(), INBOX, provisionner.getSubFolder(), 
provisionner.getSession()))
             .isInstanceOf(OverQuotaException.class);
     }
 
@@ -121,7 +122,7 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
         IntegrationResources<T> resources = getResources();
 
         QuotaCountLimit maxMessageCount = QuotaCountLimit.count(15L);
-        
resources.getMaxQuotaManager().setMaxMessage(resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox()),
 maxMessageCount);
+        
resources.getMaxQuotaManager().setMaxMessage(resources.getQuotaRootResolver().getQuotaRoot(INBOX),
 maxMessageCount);
         try {
             provisionner.fillMailbox();
         } catch (OverQuotaException overQuotaException) {
@@ -140,7 +141,7 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
         IntegrationResources<T> resources = getResources();
 
         QuotaSizeLimit maxQuotaSize = QuotaSizeLimit.size(15 * 
MockMail.MAIL_TEXT_PLAIN.getBytes(StandardCharsets.UTF_8).length + 1);
-        
resources.getMaxQuotaManager().setMaxStorage(resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox()),
 maxQuotaSize);
+        
resources.getMaxQuotaManager().setMaxStorage(resources.getQuotaRootResolver().getQuotaRoot(INBOX),
 maxQuotaSize);
         try {
             provisionner.fillMailbox();
         } catch (OverQuotaException overQuotaException) {
@@ -159,7 +160,7 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
         IntegrationResources<T> resources = getResources();
 
         QuotaCountLimit maxMessageCount = QuotaCountLimit.count(15L);
-        
resources.getMaxQuotaManager().setMaxMessage(resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox()),
 maxMessageCount);
+        
resources.getMaxQuotaManager().setMaxMessage(resources.getQuotaRootResolver().getQuotaRoot(INBOX),
 maxMessageCount);
         try {
             provisionner.fillMailbox();
         } catch (OverQuotaException overQuotaException) {
@@ -182,7 +183,7 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
         IntegrationResources<T> resources = getResources();
 
         QuotaSizeLimit maxQuotaSize = QuotaSizeLimit.size(15 * 
MockMail.MAIL_TEXT_PLAIN.getBytes(StandardCharsets.UTF_8).length + 1);
-        
resources.getMaxQuotaManager().setMaxStorage(resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox()),
 maxQuotaSize);
+        
resources.getMaxQuotaManager().setMaxStorage(resources.getQuotaRootResolver().getQuotaRoot(INBOX),
 maxQuotaSize);
         try {
             provisionner.fillMailbox();
         } catch (OverQuotaException overQuotaException) {
@@ -206,9 +207,9 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
 
         provisionner.fillMailbox();
 
-        resources.getMailboxManager().deleteMailbox(provisionner.getInbox(), 
provisionner.getSession());
+        resources.getMailboxManager().deleteMailbox(INBOX, 
provisionner.getSession());
 
-        QuotaRoot quotaRoot = 
resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox());
+        QuotaRoot quotaRoot = 
resources.getQuotaRootResolver().getQuotaRoot(INBOX);
         Quota<QuotaCountLimit, QuotaCountUsage> messageQuota = 
resources.getQuotaManager().getMessageQuota(quotaRoot);
         Quota<QuotaSizeLimit, QuotaSizeUsage> storageQuota = 
resources.getQuotaManager().getStorageQuota(quotaRoot);
         SoftAssertions.assertSoftly(softly -> {
@@ -233,7 +234,7 @@ public interface QuotaMessageManagerContract<T extends 
MailboxManager> {
 
         
resources.getMailboxManager().deleteMailbox(provisionner.getSubFolder(), 
provisionner.getSession());
 
-        QuotaRoot quotaRoot = 
resources.getQuotaRootResolver().getQuotaRoot(provisionner.getInbox());
+        QuotaRoot quotaRoot = 
resources.getQuotaRootResolver().getQuotaRoot(INBOX);
         Quota<QuotaCountLimit, QuotaCountUsage> messageQuota = 
resources.getQuotaManager().getMessageQuota(quotaRoot);
         Quota<QuotaSizeLimit, QuotaSizeUsage> storageQuota = 
resources.getQuotaManager().getStorageQuota(quotaRoot);
         SoftAssertions.assertSoftly(softly -> {
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/ListMessageAssertTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/ListMessageAssertTest.java
index 0d51755..95b4a39 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/ListMessageAssertTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/ListMessageAssertTest.java
@@ -60,7 +60,7 @@ public class ListMessageAssertTest {
     
     @Before
     public void setUp() {
-        benwaInboxMailbox = 
createMailbox(MailboxPath.forUser(Username.of("user"), "INBOX"));
+        benwaInboxMailbox = 
createMailbox(MailboxPath.inbox(Username.of("user")));
 
         message1 = createMessage(benwaInboxMailbox, MESSAGE_ID, BODY_CONTENT1, 
BODY_START, new PropertyBuilder());
         message2 = createMessage(benwaInboxMailbox, MESSAGE_ID, BODY_CONTENT2, 
BODY_START, new PropertyBuilder());
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/quota/DefaultUserQuotaRootResolverTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/quota/DefaultUserQuotaRootResolverTest.java
index 91aaeb3..688c8ca 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/quota/DefaultUserQuotaRootResolverTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/quota/DefaultUserQuotaRootResolverTest.java
@@ -45,7 +45,7 @@ import com.google.common.collect.Lists;
 public class DefaultUserQuotaRootResolverTest {
 
     private static final Username BENWA = Username.of("benwa");
-    private static final MailboxPath MAILBOX_PATH = MailboxPath.forUser(BENWA, 
"INBOX");
+    private static final MailboxPath MAILBOX_PATH = MailboxPath.inbox(BENWA);
     public static final Mailbox MAILBOX = new Mailbox(MAILBOX_PATH, 10);
     private static final MailboxPath PATH_LIKE = MailboxPath.forUser(BENWA, 
"%");
     private static final MailboxPath MAILBOX_PATH_2 = 
MailboxPath.forUser(BENWA, "test");
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/quota/QuotaCheckerTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/quota/QuotaCheckerTest.java
index 3d23b11..5473b66 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/quota/QuotaCheckerTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/quota/QuotaCheckerTest.java
@@ -44,7 +44,7 @@ import org.junit.Test;
 public class QuotaCheckerTest {
 
     public static final QuotaRoot QUOTA_ROOT = QuotaRoot.quotaRoot("benwa", 
Optional.empty());
-    public static final MailboxPath MAILBOX_PATH = 
MailboxPath.forUser(Username.of("benwa"), "INBOX");
+    public static final MailboxPath MAILBOX_PATH = 
MailboxPath.inbox(Username.of("benwa"));
     public static final Mailbox MAILBOX = new Mailbox(MAILBOX_PATH, 10);
 
     private QuotaRootResolver mockedQuotaRootResolver;
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
index 0133465..bf7d4e1 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
@@ -111,8 +111,8 @@ public abstract class AbstractMessageSearchIndexTest {
         session = storeMailboxManager.createSystemSession(USERNAME);
         otherSession = storeMailboxManager.createSystemSession(OTHERUSER);
 
-        inboxPath = MailboxPath.forUser(USERNAME, INBOX);
-        otherInboxPath = MailboxPath.forUser(OTHERUSER, INBOX);
+        inboxPath = MailboxPath.inbox(USERNAME);
+        otherInboxPath = MailboxPath.inbox(OTHERUSER);
 
         storeMailboxManager.createMailbox(inboxPath, session);
         storeMailboxManager.createMailbox(otherInboxPath, otherSession);
diff --git 
a/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/CassandraReIndexerImplTest.java
 
b/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/CassandraReIndexerImplTest.java
index 42a3d5d..d397cef 100644
--- 
a/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/CassandraReIndexerImplTest.java
+++ 
b/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/CassandraReIndexerImplTest.java
@@ -53,7 +53,7 @@ import com.google.common.base.Strings;
 
 public class CassandraReIndexerImplTest {
     private static final Username USERNAME = Username.of("[email protected]");
-    public static final MailboxPath INBOX = MailboxPath.forUser(USERNAME, 
"INBOX");
+    public static final MailboxPath INBOX = MailboxPath.inbox(USERNAME);
     private CassandraMailboxManager mailboxManager;
     private ListeningMessageSearchIndex messageSearchIndex;
 
diff --git 
a/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/MessageIdReIndexerImplTest.java
 
b/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/MessageIdReIndexerImplTest.java
index 3dfe4cb..41a043f 100644
--- 
a/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/MessageIdReIndexerImplTest.java
+++ 
b/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/MessageIdReIndexerImplTest.java
@@ -43,7 +43,7 @@ import org.mockito.ArgumentCaptor;
 
 public class MessageIdReIndexerImplTest {
     private static final Username USERNAME = Username.of("[email protected]");
-    public static final MailboxPath INBOX = MailboxPath.forUser(USERNAME, 
"INBOX");
+    public static final MailboxPath INBOX = MailboxPath.inbox(USERNAME);
 
     private InMemoryMailboxManager mailboxManager;
     private ListeningMessageSearchIndex messageSearchIndex;
diff --git 
a/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/ReIndexerImplTest.java
 
b/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/ReIndexerImplTest.java
index d554aed..a24e48a 100644
--- 
a/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/ReIndexerImplTest.java
+++ 
b/mailbox/tools/indexer/src/test/java/org/apache/mailbox/tools/indexer/ReIndexerImplTest.java
@@ -49,7 +49,7 @@ import org.mockito.ArgumentCaptor;
 public class ReIndexerImplTest {
 
     private static final Username USERNAME = Username.of("[email protected]");
-    public static final MailboxPath INBOX = MailboxPath.forUser(USERNAME, 
"INBOX");
+    public static final MailboxPath INBOX = MailboxPath.inbox(USERNAME);
     private InMemoryMailboxManager mailboxManager;
     private ListeningMessageSearchIndex messageSearchIndex;
 
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/CopyProcessorTest.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/CopyProcessorTest.java
index daaa386..60db808 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/CopyProcessorTest.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/CopyProcessorTest.java
@@ -60,6 +60,7 @@ import com.google.common.collect.Lists;
 
 public class CopyProcessorTest {
     private static final Username USERNAME = Username.of("username");
+    private static final MailboxPath INBOX = MailboxPath.inbox(USERNAME);
 
     private CopyProcessor testee;
     private ImapProcessor mockNextProcessor;
@@ -87,30 +88,29 @@ public class CopyProcessorTest {
 
         when(mockImapSession.getState()).thenReturn(ImapSessionState.SELECTED);
         
when(mockImapSession.getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY)).thenReturn(mailboxSession);
-        MailboxPath inbox = MailboxPath.inbox(mailboxSession);
-        MailboxPath selected = new MailboxPath(inbox, "selected");
+        MailboxPath selected = new MailboxPath(INBOX, "selected");
         SelectedMailbox selectedMailbox = mock(SelectedMailbox.class);
         
when(selectedMailbox.getLastUid()).thenReturn(Optional.of(MessageUid.of(8)));
         when(selectedMailbox.existsCount()).thenReturn(8L);
         when(selectedMailbox.getPath()).thenReturn(selected);
         when(mockImapSession.getSelected()).thenReturn(selectedMailbox);
-        when(mockMailboxManager.mailboxExists(inbox, 
mailboxSession)).thenReturn(true);
+        when(mockMailboxManager.mailboxExists(INBOX, 
mailboxSession)).thenReturn(true);
         MessageManager targetMessageManager = mock(MessageManager.class);
-        when(mockMailboxManager.getMailbox(inbox, 
mailboxSession)).thenReturn(targetMessageManager);
+        when(mockMailboxManager.getMailbox(INBOX, 
mailboxSession)).thenReturn(targetMessageManager);
         Mailbox mailbox = mock(Mailbox.class);
         when(mailbox.getUidValidity()).thenReturn(58L);
         when(targetMessageManager.getMailboxEntity()).thenReturn(mailbox);
         StatusResponse okResponse = mock(StatusResponse.class);
         when(mockStatusResponseFactory.taggedOk(any(Tag.class), 
any(ImapCommand.class), any(HumanReadableText.class), 
any(StatusResponse.ResponseCode.class))).thenReturn(okResponse);
-        
when(mockMailboxManager.moveMessages(MessageRange.range(MessageUid.of(4), 
MessageUid.of(6)), selected, inbox, 
mailboxSession)).thenReturn(Lists.<MessageRange>newArrayList(MessageRange.range(MessageUid.of(4),
 MessageUid.of(6))));
+        
when(mockMailboxManager.moveMessages(MessageRange.range(MessageUid.of(4), 
MessageUid.of(6)), selected, INBOX, 
mailboxSession)).thenReturn(Lists.<MessageRange>newArrayList(MessageRange.range(MessageUid.of(4),
 MessageUid.of(6))));
 
         testee.process(copyRequest, mockResponder, mockImapSession);
 
         verify(mockMailboxManager).startProcessingRequest(mailboxSession);
         verify(mockMailboxManager).endProcessingRequest(mailboxSession);
-        verify(mockMailboxManager).mailboxExists(inbox, mailboxSession);
-        verify(mockMailboxManager).getMailbox(inbox, mailboxSession);
-        
verify(mockMailboxManager).copyMessages(MessageRange.range(MessageUid.of(4), 
MessageUid.of(6)), selected, inbox, mailboxSession);
+        verify(mockMailboxManager).mailboxExists(INBOX, mailboxSession);
+        verify(mockMailboxManager).getMailbox(INBOX, mailboxSession);
+        
verify(mockMailboxManager).copyMessages(MessageRange.range(MessageUid.of(4), 
MessageUid.of(6)), selected, INBOX, mailboxSession);
         verify(targetMessageManager).getMailboxEntity();
         verify(mockResponder).respond(okResponse);
         verifyNoMoreInteractions(mockMailboxManager, targetMessageManager, 
mockResponder, mockNextProcessor);
@@ -123,16 +123,15 @@ public class CopyProcessorTest {
 
         when(mockImapSession.getState()).thenReturn(ImapSessionState.SELECTED);
         
when(mockImapSession.getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY)).thenReturn(mailboxSession);
-        MailboxPath inbox = MailboxPath.inbox(mailboxSession);
-        MailboxPath selected = new MailboxPath(inbox, "selected");
+        MailboxPath selected = new MailboxPath(INBOX, "selected");
         SelectedMailbox selectedMailbox = mock(SelectedMailbox.class);
         
when(selectedMailbox.getLastUid()).thenReturn(Optional.of(MessageUid.of(8)));
         when(selectedMailbox.existsCount()).thenReturn(8L);
         when(selectedMailbox.getPath()).thenReturn(selected);
         when(mockImapSession.getSelected()).thenReturn(selectedMailbox);
-        when(mockMailboxManager.mailboxExists(inbox, 
mailboxSession)).thenReturn(true);
+        when(mockMailboxManager.mailboxExists(INBOX, 
mailboxSession)).thenReturn(true);
         MessageManager targetMessageManager = mock(MessageManager.class);
-        when(mockMailboxManager.getMailbox(inbox, 
mailboxSession)).thenReturn(targetMessageManager);
+        when(mockMailboxManager.getMailbox(INBOX, 
mailboxSession)).thenReturn(targetMessageManager);
         Mailbox mailbox = mock(Mailbox.class);
         when(mailbox.getUidValidity()).thenReturn(58L);
         when(targetMessageManager.getMailboxEntity()).thenReturn(mailbox);
@@ -143,10 +142,10 @@ public class CopyProcessorTest {
 
         verify(mockMailboxManager).startProcessingRequest(mailboxSession);
         verify(mockMailboxManager).endProcessingRequest(mailboxSession);
-        verify(mockMailboxManager).mailboxExists(inbox, mailboxSession);
-        verify(mockMailboxManager).getMailbox(inbox, mailboxSession);
-        
verify(mockMailboxManager).copyMessages(MessageRange.range(MessageUid.of(5), 
MessageUid.of(6)), selected, inbox, mailboxSession);
-        
verify(mockMailboxManager).copyMessages(MessageRange.range(MessageUid.of(1), 
MessageUid.of(3)), selected, inbox, mailboxSession);
+        verify(mockMailboxManager).mailboxExists(INBOX, mailboxSession);
+        verify(mockMailboxManager).getMailbox(INBOX, mailboxSession);
+        
verify(mockMailboxManager).copyMessages(MessageRange.range(MessageUid.of(5), 
MessageUid.of(6)), selected, INBOX, mailboxSession);
+        
verify(mockMailboxManager).copyMessages(MessageRange.range(MessageUid.of(1), 
MessageUid.of(3)), selected, INBOX, mailboxSession);
         verify(targetMessageManager).getMailboxEntity();
         verify(mockResponder).respond(okResponse);
         verifyNoMoreInteractions(mockMailboxManager, targetMessageManager, 
mockResponder, mockNextProcessor);
@@ -158,14 +157,13 @@ public class CopyProcessorTest {
 
         when(mockImapSession.getState()).thenReturn(ImapSessionState.SELECTED);
         
when(mockImapSession.getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY)).thenReturn(mailboxSession);
-        MailboxPath inbox = MailboxPath.inbox(mailboxSession);
-        MailboxPath selected = new MailboxPath(inbox, "selected");
+        MailboxPath selected = new MailboxPath(INBOX, "selected");
         SelectedMailbox selectedMailbox = mock(SelectedMailbox.class);
         
when(selectedMailbox.getLastUid()).thenReturn(Optional.of(MessageUid.of(8)));
         when(selectedMailbox.existsCount()).thenReturn(8L);
         when(selectedMailbox.getPath()).thenReturn(selected);
         when(mockImapSession.getSelected()).thenReturn(selectedMailbox);
-        when(mockMailboxManager.mailboxExists(inbox, 
mailboxSession)).thenReturn(false);
+        when(mockMailboxManager.mailboxExists(INBOX, 
mailboxSession)).thenReturn(false);
 
         StatusResponse noResponse = mock(StatusResponse.class);
         when(mockStatusResponseFactory.taggedNo(any(Tag.class), 
any(ImapCommand.class), any(HumanReadableText.class), 
any(StatusResponse.ResponseCode.class))).thenReturn(noResponse);
@@ -174,7 +172,7 @@ public class CopyProcessorTest {
 
         verify(mockMailboxManager).startProcessingRequest(mailboxSession);
         verify(mockMailboxManager).endProcessingRequest(mailboxSession);
-        verify(mockMailboxManager).mailboxExists(inbox, mailboxSession);
+        verify(mockMailboxManager).mailboxExists(INBOX, mailboxSession);
         verify(mockResponder).respond(noResponse);
         verifyNoMoreInteractions(mockMailboxManager, mockResponder, 
mockNextProcessor);
     }
@@ -185,14 +183,13 @@ public class CopyProcessorTest {
 
         when(mockImapSession.getState()).thenReturn(ImapSessionState.SELECTED);
         
when(mockImapSession.getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY)).thenReturn(mailboxSession);
-        MailboxPath inbox = MailboxPath.inbox(mailboxSession);
-        MailboxPath selected = new MailboxPath(inbox, "selected");
+        MailboxPath selected = new MailboxPath(INBOX, "selected");
         SelectedMailbox selectedMailbox = mock(SelectedMailbox.class);
         
when(selectedMailbox.getLastUid()).thenReturn(Optional.of(MessageUid.of(8)));
         when(selectedMailbox.existsCount()).thenReturn(8L);
         when(selectedMailbox.getPath()).thenReturn(selected);
         when(mockImapSession.getSelected()).thenReturn(selectedMailbox);
-        when(mockMailboxManager.mailboxExists(inbox, 
mailboxSession)).thenThrow(new MailboxException());
+        when(mockMailboxManager.mailboxExists(INBOX, 
mailboxSession)).thenThrow(new MailboxException());
 
         StatusResponse noResponse = mock(StatusResponse.class);
         when(mockStatusResponseFactory.taggedNo(any(Tag.class), 
any(ImapCommand.class), any(HumanReadableText.class))).thenReturn(noResponse);
@@ -201,7 +198,7 @@ public class CopyProcessorTest {
 
         verify(mockMailboxManager).startProcessingRequest(mailboxSession);
         verify(mockMailboxManager).endProcessingRequest(mailboxSession);
-        verify(mockMailboxManager).mailboxExists(inbox, mailboxSession);
+        verify(mockMailboxManager).mailboxExists(INBOX, mailboxSession);
         verify(mockResponder).respond(noResponse);
         verifyNoMoreInteractions(mockMailboxManager, mockResponder, 
mockNextProcessor);
     }
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/GetAnnotationProcessorTest.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/GetAnnotationProcessorTest.java
index 5061360..ff1a44d 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/GetAnnotationProcessorTest.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/GetAnnotationProcessorTest.java
@@ -105,8 +105,9 @@ public class GetAnnotationProcessorTest {
         mockResponder = mock(ImapProcessor.Responder.class);
         mockImapSession = mock(ImapSession.class);
 
-        mailboxSession = MailboxSessionUtil.create(Username.of("username"));
-        inbox = MailboxPath.inbox(mailboxSession);
+        Username username = Username.of("username");
+        mailboxSession = MailboxSessionUtil.create(username);
+        inbox = MailboxPath.inbox(username);
         keys = ImmutableSet.of(PRIVATE_KEY);
         annotationRequestBuilder = GetAnnotationRequest.builder()
             .tag(TAG)
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/MoveProcessorTest.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/MoveProcessorTest.java
index d24ac86..51def47 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/MoveProcessorTest.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/MoveProcessorTest.java
@@ -55,7 +55,6 @@ import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.model.Mailbox;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageRange;
-import org.apache.james.mailbox.store.MailboxMetaData;
 import org.apache.james.metrics.api.NoopMetricFactory;
 import org.junit.Before;
 import org.junit.Test;
@@ -64,6 +63,7 @@ import com.google.common.collect.Lists;
 
 public class MoveProcessorTest {
     private static final Username USERNAME = Username.of("username");
+    private static final MailboxPath INBOX = MailboxPath.inbox(USERNAME);
 
     private MoveProcessor testee;
     private ImapProcessor mockNextProcessor;
@@ -105,31 +105,30 @@ public class MoveProcessorTest {
 
         when(mockImapSession.getState()).thenReturn(ImapSessionState.SELECTED);
         
when(mockImapSession.getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY)).thenReturn(mailboxSession);
-        MailboxPath inbox = MailboxPath.inbox(mailboxSession);
-        MailboxPath selected = new MailboxPath(inbox, "selected");
+        MailboxPath selected = new MailboxPath(INBOX, "selected");
         SelectedMailbox selectedMailbox = mock(SelectedMailbox.class);
         
when(selectedMailbox.getLastUid()).thenReturn(Optional.of(MessageUid.of(8)));
         when(selectedMailbox.existsCount()).thenReturn(8L);
         when(selectedMailbox.getPath()).thenReturn(selected);
         when(mockImapSession.getSelected()).thenReturn(selectedMailbox);
-        when(mockMailboxManager.mailboxExists(inbox, 
mailboxSession)).thenReturn(true);
+        when(mockMailboxManager.mailboxExists(INBOX, 
mailboxSession)).thenReturn(true);
         MessageManager targetMessageManager = mock(MessageManager.class);
-        when(mockMailboxManager.getMailbox(inbox, 
mailboxSession)).thenReturn(targetMessageManager);
+        when(mockMailboxManager.getMailbox(INBOX, 
mailboxSession)).thenReturn(targetMessageManager);
         Mailbox mailbox = mock(Mailbox.class);
         when(mailbox.getUidValidity()).thenReturn(58L);
         when(targetMessageManager.getMailboxEntity()).thenReturn(mailbox);
         StatusResponse okResponse = mock(StatusResponse.class);
         when(mockStatusResponseFactory.taggedOk(any(Tag.class), 
any(ImapCommand.class), any(HumanReadableText.class), 
any(StatusResponse.ResponseCode.class))).thenReturn(okResponse);
-        
when(mockMailboxManager.moveMessages(MessageRange.range(MessageUid.of(4), 
MessageUid.of(6)), selected, inbox, mailboxSession))
+        
when(mockMailboxManager.moveMessages(MessageRange.range(MessageUid.of(4), 
MessageUid.of(6)), selected, INBOX, mailboxSession))
             
.thenReturn(Lists.<MessageRange>newArrayList(MessageRange.range(MessageUid.of(4),
 MessageUid.of(6))));
 
         testee.process(moveRequest, mockResponder, mockImapSession);
 
         verify(mockMailboxManager).startProcessingRequest(mailboxSession);
         verify(mockMailboxManager).endProcessingRequest(mailboxSession);
-        verify(mockMailboxManager).mailboxExists(inbox, mailboxSession);
-        verify(mockMailboxManager).getMailbox(inbox, mailboxSession);
-        
verify(mockMailboxManager).moveMessages(MessageRange.range(MessageUid.of(4), 
MessageUid.of(6)), selected, inbox, mailboxSession);
+        verify(mockMailboxManager).mailboxExists(INBOX, mailboxSession);
+        verify(mockMailboxManager).getMailbox(INBOX, mailboxSession);
+        
verify(mockMailboxManager).moveMessages(MessageRange.range(MessageUid.of(4), 
MessageUid.of(6)), selected, INBOX, mailboxSession);
         verify(targetMessageManager).getMailboxEntity();
         verify(mockResponder).respond(okResponse);
         verifyNoMoreInteractions(mockMailboxManager, targetMessageManager, 
mockResponder, mockNextProcessor);
@@ -142,16 +141,15 @@ public class MoveProcessorTest {
 
         when(mockImapSession.getState()).thenReturn(ImapSessionState.SELECTED);
         
when(mockImapSession.getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY)).thenReturn(mailboxSession);
-        MailboxPath inbox = MailboxPath.inbox(mailboxSession);
-        MailboxPath selected = new MailboxPath(inbox, "selected");
+        MailboxPath selected = new MailboxPath(INBOX, "selected");
         SelectedMailbox selectedMailbox = mock(SelectedMailbox.class);
         
when(selectedMailbox.getLastUid()).thenReturn(Optional.of(MessageUid.of(8)));
         when(selectedMailbox.existsCount()).thenReturn(8L);
         when(selectedMailbox.getPath()).thenReturn(selected);
         when(mockImapSession.getSelected()).thenReturn(selectedMailbox);
-        when(mockMailboxManager.mailboxExists(inbox, 
mailboxSession)).thenReturn(true);
+        when(mockMailboxManager.mailboxExists(INBOX, 
mailboxSession)).thenReturn(true);
         MessageManager targetMessageManager = mock(MessageManager.class);
-        when(mockMailboxManager.getMailbox(inbox, 
mailboxSession)).thenReturn(targetMessageManager);
+        when(mockMailboxManager.getMailbox(INBOX, 
mailboxSession)).thenReturn(targetMessageManager);
         Mailbox mailbox = mock(Mailbox.class);
         when(mailbox.getUidValidity()).thenReturn(58L);
         when(targetMessageManager.getMailboxEntity()).thenReturn(mailbox);
@@ -162,10 +160,10 @@ public class MoveProcessorTest {
 
         verify(mockMailboxManager).startProcessingRequest(mailboxSession);
         verify(mockMailboxManager).endProcessingRequest(mailboxSession);
-        verify(mockMailboxManager).mailboxExists(inbox, mailboxSession);
-        verify(mockMailboxManager).getMailbox(inbox, mailboxSession);
-        
verify(mockMailboxManager).moveMessages(MessageRange.range(MessageUid.of(5), 
MessageUid.of(6)), selected, inbox, mailboxSession);
-        
verify(mockMailboxManager).moveMessages(MessageRange.range(MessageUid.of(1), 
MessageUid.of(3)), selected, inbox, mailboxSession);
+        verify(mockMailboxManager).mailboxExists(INBOX, mailboxSession);
+        verify(mockMailboxManager).getMailbox(INBOX, mailboxSession);
+        
verify(mockMailboxManager).moveMessages(MessageRange.range(MessageUid.of(5), 
MessageUid.of(6)), selected, INBOX, mailboxSession);
+        
verify(mockMailboxManager).moveMessages(MessageRange.range(MessageUid.of(1), 
MessageUid.of(3)), selected, INBOX, mailboxSession);
         verify(targetMessageManager).getMailboxEntity();
         verify(mockResponder).respond(okResponse);
         verifyNoMoreInteractions(mockMailboxManager, targetMessageManager, 
mockResponder, mockNextProcessor);
@@ -177,14 +175,13 @@ public class MoveProcessorTest {
 
         when(mockImapSession.getState()).thenReturn(ImapSessionState.SELECTED);
         
when(mockImapSession.getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY)).thenReturn(mailboxSession);
-        MailboxPath inbox = MailboxPath.inbox(mailboxSession);
-        MailboxPath selected = new MailboxPath(inbox, "selected");
+        MailboxPath selected = new MailboxPath(INBOX, "selected");
         SelectedMailbox selectedMailbox = mock(SelectedMailbox.class);
         
when(selectedMailbox.getLastUid()).thenReturn(Optional.of(MessageUid.of(8)));
         when(selectedMailbox.existsCount()).thenReturn(8L);
         when(selectedMailbox.getPath()).thenReturn(selected);
         when(mockImapSession.getSelected()).thenReturn(selectedMailbox);
-        when(mockMailboxManager.mailboxExists(inbox, 
mailboxSession)).thenReturn(false);
+        when(mockMailboxManager.mailboxExists(INBOX, 
mailboxSession)).thenReturn(false);
 
         StatusResponse noResponse = mock(StatusResponse.class);
         when(mockStatusResponseFactory.taggedNo(any(Tag.class), 
any(ImapCommand.class), any(HumanReadableText.class), 
any(StatusResponse.ResponseCode.class))).thenReturn(noResponse);
@@ -193,7 +190,7 @@ public class MoveProcessorTest {
 
         verify(mockMailboxManager).startProcessingRequest(mailboxSession);
         verify(mockMailboxManager).endProcessingRequest(mailboxSession);
-        verify(mockMailboxManager).mailboxExists(inbox, mailboxSession);
+        verify(mockMailboxManager).mailboxExists(INBOX, mailboxSession);
         verify(mockResponder).respond(noResponse);
         verifyNoMoreInteractions(mockMailboxManager, mockResponder, 
mockNextProcessor);
     }
@@ -204,14 +201,13 @@ public class MoveProcessorTest {
 
         when(mockImapSession.getState()).thenReturn(ImapSessionState.SELECTED);
         
when(mockImapSession.getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY)).thenReturn(mailboxSession);
-        MailboxPath inbox = MailboxPath.inbox(mailboxSession);
-        MailboxPath selected = new MailboxPath(inbox, "selected");
+        MailboxPath selected = new MailboxPath(INBOX, "selected");
         SelectedMailbox selectedMailbox = mock(SelectedMailbox.class);
         
when(selectedMailbox.getLastUid()).thenReturn(Optional.of(MessageUid.of(8)));
         when(selectedMailbox.existsCount()).thenReturn(8L);
         when(selectedMailbox.getPath()).thenReturn(selected);
         when(mockImapSession.getSelected()).thenReturn(selectedMailbox);
-        when(mockMailboxManager.mailboxExists(inbox, 
mailboxSession)).thenThrow(new MailboxException());
+        when(mockMailboxManager.mailboxExists(INBOX, 
mailboxSession)).thenThrow(new MailboxException());
 
         StatusResponse noResponse = mock(StatusResponse.class);
         when(mockStatusResponseFactory.taggedNo(any(Tag.class), 
any(ImapCommand.class), any(HumanReadableText.class))).thenReturn(noResponse);
@@ -220,7 +216,7 @@ public class MoveProcessorTest {
 
         verify(mockMailboxManager).startProcessingRequest(mailboxSession);
         verify(mockMailboxManager).endProcessingRequest(mailboxSession);
-        verify(mockMailboxManager).mailboxExists(inbox, mailboxSession);
+        verify(mockMailboxManager).mailboxExists(INBOX, mailboxSession);
         verify(mockResponder).respond(noResponse);
         verifyNoMoreInteractions(mockMailboxManager, mockResponder, 
mockNextProcessor);
     }
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/SetAnnotationProcessorTest.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/SetAnnotationProcessorTest.java
index daeba27..cd0b4ee 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/SetAnnotationProcessorTest.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/SetAnnotationProcessorTest.java
@@ -92,8 +92,9 @@ public class SetAnnotationProcessorTest {
         mockResponder = mock(ImapProcessor.Responder.class);
         mockImapSession = mock(ImapSession.class);
 
-        mockMailboxSession = 
MailboxSessionUtil.create(Username.of("username"));
-        inbox = MailboxPath.inbox(mockMailboxSession);
+        Username username = Username.of("username");
+        mockMailboxSession = MailboxSessionUtil.create(username);
+        inbox = MailboxPath.inbox(username);
         mailboxAnnotations = 
ImmutableList.of(MailboxAnnotation.newInstance(new 
MailboxAnnotationKey("/private/key"), "anyValue"));
         request = new SetAnnotationRequest(TAG, 
ImapCommand.anyStateCommand("Name"), ImapConstants.INBOX_NAME, 
mailboxAnnotations);
         humanTextCaptor = ArgumentCaptor.forClass(HumanReadableText.class);
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/SelectedMailboxImplTest.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/SelectedMailboxImplTest.java
index ba8fd4f..011d74e 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/SelectedMailboxImplTest.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/SelectedMailboxImplTest.java
@@ -48,7 +48,6 @@ import org.apache.james.mailbox.events.EventBus;
 import org.apache.james.mailbox.events.MailboxIdRegistrationKey;
 import org.apache.james.mailbox.events.MailboxListener;
 import org.apache.james.mailbox.model.Mailbox;
-import org.apache.james.mailbox.model.MailboxConstants;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageMetaData;
 import org.apache.james.mailbox.model.SearchQuery;
@@ -85,7 +84,7 @@ public class SelectedMailboxImplTest {
     public void setUp() throws Exception {
         ThreadFactory threadFactory = 
NamedThreadFactory.withClassName(getClass());
         executorService = Executors.newFixedThreadPool(1, threadFactory);
-        mailboxPath = MailboxPath.forUser(Username.of("[email protected]"), 
MailboxConstants.INBOX);
+        mailboxPath = MailboxPath.inbox(Username.of("[email protected]"));
         mailboxManager = mock(MailboxManager.class);
         messageManager = mock(MessageManager.class);
         imapSession = mock(ImapSession.class);
diff --git 
a/server/container/guice/cassandra-guice/src/test/java/org/apache/james/FixingGhostMailboxTest.java
 
b/server/container/guice/cassandra-guice/src/test/java/org/apache/james/FixingGhostMailboxTest.java
index 5c88a39..5531ae7 100644
--- 
a/server/container/guice/cassandra-guice/src/test/java/org/apache/james/FixingGhostMailboxTest.java
+++ 
b/server/container/guice/cassandra-guice/src/test/java/org/apache/james/FixingGhostMailboxTest.java
@@ -43,6 +43,7 @@ import java.nio.charset.StandardCharsets;
 
 import org.apache.james.core.Username;
 import org.apache.james.jmap.api.access.AccessToken;
+import org.apache.james.jmap.draft.JmapGuiceProbe;
 import org.apache.james.mailbox.MessageManager.AppendCommand;
 import org.apache.james.mailbox.cassandra.mail.task.MailboxMergingTask;
 import org.apache.james.mailbox.cassandra.table.CassandraMailboxPathV2Table;
@@ -63,7 +64,6 @@ import org.apache.james.server.CassandraProbe;
 import org.apache.james.task.TaskManager;
 import org.apache.james.util.Host;
 import org.apache.james.utils.DataProbeImpl;
-import org.apache.james.jmap.draft.JmapGuiceProbe;
 import org.apache.james.utils.WebAdminGuiceProbe;
 import org.apache.james.webadmin.WebAdminConfiguration;
 import org.apache.james.webadmin.WebAdminUtils;
@@ -154,7 +154,7 @@ public class FixingGhostMailboxTest {
     private void simulateGhostMailboxBug() throws MailboxException, 
IOException {
         // State before ghost mailbox bug
         // Alice INBOX is delegated to Bob and contains one message
-        aliceInboxPath = MailboxPath.forUser(Username.of(ALICE), 
MailboxConstants.INBOX);
+        aliceInboxPath = MailboxPath.inbox(Username.of(ALICE));
         aliceGhostInboxId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, ALICE, 
MailboxConstants.INBOX);
         aclProbe.addRights(aliceInboxPath, BOB, MailboxACL.FULL_RIGHTS);
         message1 = mailboxProbe.appendMessage(ALICE, aliceInboxPath, 
AppendCommand.from(generateMessageContent()));
diff --git 
a/server/container/mailbox-jmx/src/test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java
 
b/server/container/mailbox-jmx/src/test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java
index c3f1348..1936b8e 100644
--- 
a/server/container/mailbox-jmx/src/test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java
+++ 
b/server/container/mailbox-jmx/src/test/java/org/apache/james/adapter/mailbox/MailboxManagementTest.java
@@ -72,7 +72,7 @@ public class MailboxManagementTest {
 
     @Test
     void deleteMailboxesShouldDeleteInbox() throws Exception {
-        mapperFactory.createMailboxMapper(session).save(new 
Mailbox(MailboxPath.forUser(USER, "INBOX"), UID_VALIDITY));
+        mapperFactory.createMailboxMapper(session).save(new 
Mailbox(MailboxPath.inbox(USER), UID_VALIDITY));
         mailboxManagerManagement.deleteMailboxes(USER.asString());
         
assertThat(mapperFactory.createMailboxMapper(session).list()).isEmpty();
     }
diff --git 
a/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/AliasMappingTest.java
 
b/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/AliasMappingTest.java
index fcc014b..206ad9f 100644
--- 
a/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/AliasMappingTest.java
+++ 
b/server/mailet/integration-testing/src/test/java/org/apache/james/transport/mailets/AliasMappingTest.java
@@ -29,7 +29,6 @@ import javax.mail.internet.MimeMessage;
 
 import org.apache.james.core.Username;
 import org.apache.james.core.builder.MimeMessageBuilder;
-import org.apache.james.mailbox.model.MailboxConstants;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailets.TemporaryJamesServer;
 import org.apache.james.mailets.configuration.CommonProcessors;
@@ -107,9 +106,9 @@ public class AliasMappingTest {
         dataProbe.addUser(ALICE_ADDRESS, PASSWORD);
         dataProbe.addUser(CEDRIC_ADDRESS, PASSWORD);
 
-        
jamesServer.getProbe(MailboxProbeImpl.class).createMailbox(MailboxPath.forUser(Username.of(BOB_ADDRESS),
 MailboxConstants.INBOX));
-        
jamesServer.getProbe(MailboxProbeImpl.class).createMailbox(MailboxPath.forUser(Username.of(ALICE_ADDRESS),
 MailboxConstants.INBOX));
-        
jamesServer.getProbe(MailboxProbeImpl.class).createMailbox(MailboxPath.forUser(Username.of(CEDRIC_ADDRESS),
 MailboxConstants.INBOX));
+        
jamesServer.getProbe(MailboxProbeImpl.class).createMailbox(MailboxPath.inbox(Username.of(BOB_ADDRESS)));
+        
jamesServer.getProbe(MailboxProbeImpl.class).createMailbox(MailboxPath.inbox(Username.of(ALICE_ADDRESS)));
+        
jamesServer.getProbe(MailboxProbeImpl.class).createMailbox(MailboxPath.inbox(Username.of(CEDRIC_ADDRESS)));
 
         webAdminApi = 
WebAdminUtils.spec(jamesServer.getProbe(WebAdminGuiceProbe.class).getWebAdminPort());
 
diff --git 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/matchers/IsOverQuota.java
 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/matchers/IsOverQuota.java
index 64499cb..3ea1148 100644
--- 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/matchers/IsOverQuota.java
+++ 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/matchers/IsOverQuota.java
@@ -28,8 +28,6 @@ import javax.mail.MessagingException;
 
 import org.apache.james.core.MailAddress;
 import org.apache.james.core.Username;
-import org.apache.james.mailbox.MailboxManager;
-import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.QuotaRoot;
@@ -60,14 +58,12 @@ public class IsOverQuota extends GenericMatcher {
 
     private final QuotaRootResolver quotaRootResolver;
     private final QuotaManager quotaManager;
-    private final MailboxManager mailboxManager;
     private final UsersRepository usersRepository;
 
     @Inject
-    public IsOverQuota(QuotaRootResolver quotaRootResolver, QuotaManager 
quotaManager, MailboxManager mailboxManager, UsersRepository usersRepository) {
+    public IsOverQuota(QuotaRootResolver quotaRootResolver, QuotaManager 
quotaManager, UsersRepository usersRepository) {
         this.quotaRootResolver = quotaRootResolver;
         this.quotaManager = quotaManager;
-        this.mailboxManager = mailboxManager;
         this.usersRepository = usersRepository;
     }
 
@@ -77,8 +73,7 @@ public class IsOverQuota extends GenericMatcher {
             List<MailAddress> result = new ArrayList<>();
             for (MailAddress mailAddress : mail.getRecipients()) {
                 Username userName = usersRepository.getUser(mailAddress);
-                MailboxSession mailboxSession = 
mailboxManager.createSystemSession(userName);
-                MailboxPath mailboxPath = MailboxPath.inbox(mailboxSession);
+                MailboxPath mailboxPath = MailboxPath.inbox(userName);
                 QuotaRoot quotaRoot = 
quotaRootResolver.getQuotaRoot(mailboxPath);
 
                 if 
(quotaManager.getMessageQuota(quotaRoot).isOverQuotaWithAdditionalValue(SINGLE_EMAIL)
 ||
diff --git 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/LocalDeliveryTest.java
 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/LocalDeliveryTest.java
index 32ac4e8..aa3d4b6 100644
--- 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/LocalDeliveryTest.java
+++ 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/LocalDeliveryTest.java
@@ -41,7 +41,6 @@ import org.apache.james.metrics.api.MetricFactory;
 import org.apache.james.metrics.api.NoopMetricFactory;
 import org.apache.james.transport.mailets.LocalDelivery;
 import org.apache.james.user.api.UsersRepository;
-import org.apache.james.user.api.model.User;
 import org.apache.mailet.Mail;
 import org.apache.mailet.base.test.FakeMail;
 import org.apache.mailet.base.test.FakeMailContext;
@@ -82,7 +81,7 @@ public class LocalDeliveryTest {
     public void 
mailShouldBeWellDeliveredByDefaultToUserWhenVirtualHostingIsTurnedOn() throws 
Exception {
         // Given
         Username username = Username.of("[email protected]");
-        MailboxPath inbox = MailboxPath.forUser(username, "INBOX");
+        MailboxPath inbox = MailboxPath.inbox(username);
         MessageManager messageManager = mock(MessageManager.class);
 
         when(usersRepository.supportVirtualHosting()).thenReturn(true);
@@ -103,7 +102,7 @@ public class LocalDeliveryTest {
     public void 
mailShouldBeWellDeliveredByDefaultToUserWhenVirtualHostingIsTurnedOff() throws 
Exception {
         // Given
         Username username = Username.of("receiver");
-        MailboxPath inbox = MailboxPath.forUser(username, "INBOX");
+        MailboxPath inbox = MailboxPath.inbox(username);
         MessageManager messageManager = mock(MessageManager.class);
         when(usersRepository.supportVirtualHosting()).thenReturn(false);
         when(usersRepository.getUser(new 
MailAddress("receiver@localhost"))).thenReturn(username);
diff --git 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveIntegrationTest.java
 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveIntegrationTest.java
index 559a162..fc03502 100644
--- 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveIntegrationTest.java
+++ 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveIntegrationTest.java
@@ -53,26 +53,26 @@ import org.slf4j.Logger;
 
 public class SieveIntegrationTest {
 
-    public static final String LOCAL_PART = "receiver";
-    public static final String RECEIVER_DOMAIN_COM = LOCAL_PART + 
"@domain.com";
-    public static final Username LOCAL_USER = Username.of(LOCAL_PART);
-
-    public static final ZonedDateTime DATE_CLOSE = 
ZonedDateTime.parse("2016-01-16T00:00:00Z");
-    public static final ZonedDateTime DATE_DEFAULT = 
ZonedDateTime.parse("2016-01-14T00:00:00Z");
-    public static final ZonedDateTime DATE_NEW = 
ZonedDateTime.parse("2016-01-18T00:00:00Z");
-    public static final ZonedDateTime DATE_OLD = 
ZonedDateTime.parse("2011-01-18T00:00:00Z");
-    public static final MailboxPath NOT_SELECTED_MAILBOX = 
MailboxPath.forUser(LOCAL_USER, "INBOX.not.selected");
-    public static final MailboxPath SELECTED_MAILBOX = 
MailboxPath.forUser(LOCAL_USER, "INBOX.select");
-    public static final MailboxPath INBOX = MailboxPath.forUser(LOCAL_USER, 
"INBOX");
-    public static final MailboxPath INBOX_ANY = 
MailboxPath.forUser(LOCAL_USER, "INBOX.any");
-
-    public static final AttributeName ATTRIBUTE_NAME = 
AttributeName.of(MailStore.DELIVERY_PATH_PREFIX + LOCAL_PART);
-    public static final Attribute ATTRIBUTE_INBOX = new 
Attribute(ATTRIBUTE_NAME, 
AttributeValue.of(expressMailboxNameWithSlash(INBOX.getName())));
-    public static final Attribute ATTRIBUTE_INBOX_ANY = new 
Attribute(ATTRIBUTE_NAME, 
AttributeValue.of(expressMailboxNameWithSlash(INBOX_ANY.getName())));
-    public static final Attribute ATTRIBUTE_SELECTED_MAILBOX = new 
Attribute(ATTRIBUTE_NAME, 
AttributeValue.of(expressMailboxNameWithSlash(SELECTED_MAILBOX.getName())));
-    public static final Attribute ATTRIBUTE_NOT_SELECTED_MAILBOX = new 
Attribute(ATTRIBUTE_NAME, 
AttributeValue.of(expressMailboxNameWithSlash(NOT_SELECTED_MAILBOX.getName())));
-    public static final AttributeName ATTRIBUTE_NAME_DOMAIN = 
AttributeName.of(MailStore.DELIVERY_PATH_PREFIX + RECEIVER_DOMAIN_COM);
-    public static final Attribute ATTRIBUTE_INBOX_DOMAIN = new 
Attribute(ATTRIBUTE_NAME_DOMAIN, 
AttributeValue.of(expressMailboxNameWithSlash(INBOX.getName())));
+    private static final String LOCAL_PART = "receiver";
+    private static final String RECEIVER_DOMAIN_COM = LOCAL_PART + 
"@domain.com";
+    private static final Username LOCAL_USER = Username.of(LOCAL_PART);
+
+    private static final ZonedDateTime DATE_CLOSE = 
ZonedDateTime.parse("2016-01-16T00:00:00Z");
+    private static final ZonedDateTime DATE_DEFAULT = 
ZonedDateTime.parse("2016-01-14T00:00:00Z");
+    private static final ZonedDateTime DATE_NEW = 
ZonedDateTime.parse("2016-01-18T00:00:00Z");
+    private static final ZonedDateTime DATE_OLD = 
ZonedDateTime.parse("2011-01-18T00:00:00Z");
+    private static final MailboxPath NOT_SELECTED_MAILBOX = 
MailboxPath.forUser(LOCAL_USER, "INBOX.not.selected");
+    private static final MailboxPath SELECTED_MAILBOX = 
MailboxPath.forUser(LOCAL_USER, "INBOX.select");
+    private static final MailboxPath INBOX = MailboxPath.inbox(LOCAL_USER);
+    private static final MailboxPath INBOX_ANY = 
MailboxPath.forUser(LOCAL_USER, "INBOX.any");
+
+    private static final AttributeName ATTRIBUTE_NAME = 
AttributeName.of(MailStore.DELIVERY_PATH_PREFIX + LOCAL_PART);
+    private static final Attribute ATTRIBUTE_INBOX = new 
Attribute(ATTRIBUTE_NAME, 
AttributeValue.of(expressMailboxNameWithSlash(INBOX.getName())));
+    private static final Attribute ATTRIBUTE_INBOX_ANY = new 
Attribute(ATTRIBUTE_NAME, 
AttributeValue.of(expressMailboxNameWithSlash(INBOX_ANY.getName())));
+    private static final Attribute ATTRIBUTE_SELECTED_MAILBOX = new 
Attribute(ATTRIBUTE_NAME, 
AttributeValue.of(expressMailboxNameWithSlash(SELECTED_MAILBOX.getName())));
+    private static final Attribute ATTRIBUTE_NOT_SELECTED_MAILBOX = new 
Attribute(ATTRIBUTE_NAME, 
AttributeValue.of(expressMailboxNameWithSlash(NOT_SELECTED_MAILBOX.getName())));
+    private static final AttributeName ATTRIBUTE_NAME_DOMAIN = 
AttributeName.of(MailStore.DELIVERY_PATH_PREFIX + RECEIVER_DOMAIN_COM);
+    private static final Attribute ATTRIBUTE_INBOX_DOMAIN = new 
Attribute(ATTRIBUTE_NAME_DOMAIN, 
AttributeValue.of(expressMailboxNameWithSlash(INBOX.getName())));
 
     private Sieve testee;
     private UsersRepository usersRepository;
diff --git 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/ToRecipientFolderTest.java
 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/ToRecipientFolderTest.java
index 711d3e1..1889a75 100644
--- 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/ToRecipientFolderTest.java
+++ 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/ToRecipientFolderTest.java
@@ -58,7 +58,7 @@ public class ToRecipientFolderTest {
     public static final String USER = USER_LOCAL_PART + "@domain.com";
     public static final Username USERNAME = Username.of(USER);
     public static final Username USERNAME_LOCAL_PART = 
Username.of(USER_LOCAL_PART);
-    public static final MailboxPath INBOX = MailboxPath.forUser(USERNAME, 
"INBOX");
+    public static final MailboxPath INBOX = MailboxPath.inbox(USERNAME);
     public static final MailboxPath JUNK = 
MailboxPath.forUser(USERNAME_LOCAL_PART, "Junk");
     public static final MailboxPath JUNK_VIRTUAL_HOSTING = 
MailboxPath.forUser(USERNAME, "Junk");
     public static final String MAILET_NAME = "RecipientFolderTest";
diff --git 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/matchers/IsOverQuotaTest.java
 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/matchers/IsOverQuotaTest.java
index 2b9c9f4..b96a68c 100644
--- 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/matchers/IsOverQuotaTest.java
+++ 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/matchers/IsOverQuotaTest.java
@@ -33,7 +33,6 @@ import 
org.apache.james.mailbox.inmemory.manager.InMemoryIntegrationResources;
 import org.apache.james.mailbox.inmemory.quota.InMemoryPerUserMaxQuotaManager;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.QuotaRoot;
-import org.apache.james.mailbox.store.StoreMailboxManager;
 import org.apache.james.mailbox.store.quota.DefaultUserQuotaRootResolver;
 import org.apache.james.user.api.UsersRepository;
 import org.apache.mailet.base.MailAddressFixture;
@@ -46,19 +45,17 @@ public class IsOverQuotaTest {
     private IsOverQuota testee;
     private InMemoryPerUserMaxQuotaManager maxQuotaManager;
     private DefaultUserQuotaRootResolver quotaRootResolver;
-    private StoreMailboxManager mailboxManager;
     private UsersRepository usersRepository;
 
     @Before
     public void setUp() throws Exception {
         InMemoryIntegrationResources resources = 
InMemoryIntegrationResources.defaultResources();
-        mailboxManager = resources.getMailboxManager();
 
         quotaRootResolver = resources.getDefaultUserQuotaRootResolver();
         maxQuotaManager = resources.getMaxQuotaManager();
 
         usersRepository = mock(UsersRepository.class);
-        testee = new IsOverQuota(quotaRootResolver, 
resources.getMailboxManager().getQuotaComponents().getQuotaManager(), 
mailboxManager, usersRepository);
+        testee = new IsOverQuota(quotaRootResolver, 
resources.getMailboxManager().getQuotaComponents().getQuotaManager(), 
usersRepository);
 
         
testee.init(FakeMatcherConfig.builder().matcherName("IsOverQuota").build());
 
@@ -135,7 +132,7 @@ public class IsOverQuotaTest {
     @Test
     public void matchShouldNotIncludeRecipientNotOverQuota() throws Exception {
         Username username = 
Username.of(MailAddressFixture.ANY_AT_JAMES.getLocalPart());
-        QuotaRoot quotaRoot = 
quotaRootResolver.getQuotaRoot(MailboxPath.inbox(mailboxManager.createSystemSession(username)));
+        QuotaRoot quotaRoot = 
quotaRootResolver.getQuotaRoot(MailboxPath.inbox(username));
         maxQuotaManager.setMaxStorage(quotaRoot, QuotaSizeLimit.size(100));
 
         FakeMail fakeMail = FakeMail.builder()
@@ -154,7 +151,7 @@ public class IsOverQuotaTest {
         
when(usersRepository.getUser(MailAddressFixture.ANY_AT_JAMES)).thenReturn(Username.of(MailAddressFixture.ANY_AT_JAMES.asString()));
         
when(usersRepository.getUser(MailAddressFixture.OTHER_AT_JAMES)).thenReturn(Username.of(MailAddressFixture.OTHER_AT_JAMES.asString()));
         Username username = 
Username.of(MailAddressFixture.ANY_AT_JAMES.asString());
-        QuotaRoot quotaRoot = 
quotaRootResolver.getQuotaRoot(MailboxPath.inbox(mailboxManager.createSystemSession(username)));
+        QuotaRoot quotaRoot = 
quotaRootResolver.getQuotaRoot(MailboxPath.inbox(username));
         maxQuotaManager.setMaxStorage(quotaRoot, QuotaSizeLimit.size(100));
 
         FakeMail fakeMail = FakeMail.builder()
diff --git 
a/server/protocols/jmap-draft-integration-testing/jmap-draft-integration-testing-common/src/test/java/org/apache/james/jmap/draft/methods/integration/FilterTest.java
 
b/server/protocols/jmap-draft-integration-testing/jmap-draft-integration-testing-common/src/test/java/org/apache/james/jmap/draft/methods/integration/FilterTest.java
index bcdee6a..dfe76d6 100644
--- 
a/server/protocols/jmap-draft-integration-testing/jmap-draft-integration-testing-common/src/test/java/org/apache/james/jmap/draft/methods/integration/FilterTest.java
+++ 
b/server/protocols/jmap-draft-integration-testing/jmap-draft-integration-testing-common/src/test/java/org/apache/james/jmap/draft/methods/integration/FilterTest.java
@@ -34,7 +34,6 @@ import static org.apache.james.jmap.TestingConstants.DOMAIN;
 import static org.apache.james.jmap.TestingConstants.NAME;
 import static org.apache.james.jmap.TestingConstants.calmlyAwait;
 import static org.apache.james.jmap.TestingConstants.jmapRequestSpecBuilder;
-import static org.apache.james.mailbox.model.MailboxConstants.INBOX;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.awaitility.Duration.ONE_MINUTE;
 import static org.hamcrest.CoreMatchers.equalTo;
@@ -92,7 +91,7 @@ public abstract class FilterTest {
 
         MailboxProbeImpl mailboxProbe = 
jmapServer.getProbe(MailboxProbeImpl.class);
         matchedMailbox = mailboxProbe.createMailbox(MailboxPath.forUser(ALICE, 
"matched"));
-        inbox = mailboxProbe.createMailbox(MailboxPath.forUser(ALICE, INBOX));
+        inbox = mailboxProbe.createMailbox(MailboxPath.inbox(ALICE));
     }
 
     @After
diff --git 
a/server/protocols/jmap-draft-integration-testing/jmap-draft-integration-testing-common/src/test/java/org/apache/james/jmap/draft/methods/integration/SetMessagesMethodTest.java
 
b/server/protocols/jmap-draft-integration-testing/jmap-draft-integration-testing-common/src/test/java/org/apache/james/jmap/draft/methods/integration/SetMessagesMethodTest.java
index 3b7047c..48bf442 100644
--- 
a/server/protocols/jmap-draft-integration-testing/jmap-draft-integration-testing-common/src/test/java/org/apache/james/jmap/draft/methods/integration/SetMessagesMethodTest.java
+++ 
b/server/protocols/jmap-draft-integration-testing/jmap-draft-integration-testing-common/src/test/java/org/apache/james/jmap/draft/methods/integration/SetMessagesMethodTest.java
@@ -2218,7 +2218,7 @@ public abstract class SetMessagesMethodTest {
 
     @Test
     public void setMessagesShouldRejectMovingMessageToOutboxWhenNotInDraft() 
throws MailboxException {
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: 
test\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), new Date(), false, new 
Flags());
         await();
 
@@ -3214,7 +3214,7 @@ public abstract class SetMessagesMethodTest {
     @Test
     public void mailboxIdsShouldReturnUpdatedWhenNoChange() throws Exception {
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
@@ -3248,7 +3248,7 @@ public abstract class SetMessagesMethodTest {
         String heartFolderId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, 
USERNAME.asString(), newMailboxName).serialize();
 
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
@@ -3291,7 +3291,7 @@ public abstract class SetMessagesMethodTest {
         String heartFolderId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, 
USERNAME.asString(), newMailboxName).serialize();
 
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
@@ -3335,7 +3335,7 @@ public abstract class SetMessagesMethodTest {
         String heartFolderId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, 
USERNAME.asString(), newMailboxName).serialize();
 
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
@@ -3375,7 +3375,7 @@ public abstract class SetMessagesMethodTest {
     @Test
     public void mailboxIdsShouldBeInOriginalMailboxWhenNoChange() throws 
Exception {
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
@@ -3415,7 +3415,7 @@ public abstract class SetMessagesMethodTest {
     @Test
     public void mailboxIdsShouldReturnErrorWhenMovingToADeletedMailbox() 
throws Exception {
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, 
USERNAME.asString(), "any");
@@ -3453,7 +3453,7 @@ public abstract class SetMessagesMethodTest {
     @Test
     public void mailboxIdsShouldReturnErrorWhenSetToEmpty() throws Exception {
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
@@ -3491,7 +3491,7 @@ public abstract class SetMessagesMethodTest {
         String heartFolderId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, 
USERNAME.asString(), newMailboxName).serialize();
 
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
@@ -3524,7 +3524,7 @@ public abstract class SetMessagesMethodTest {
         String heartFolderId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, 
USERNAME.asString(), newMailboxName).serialize();
 
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
@@ -3567,7 +3567,7 @@ public abstract class SetMessagesMethodTest {
         String trashId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, 
USERNAME.asString(), DefaultMailboxes.TRASH).serialize();
 
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
@@ -3603,7 +3603,7 @@ public abstract class SetMessagesMethodTest {
         String trashId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, 
USERNAME.asString(), DefaultMailboxes.TRASH).serialize();
 
         ZonedDateTime dateTime = ZonedDateTime.parse("2014-10-30T14:12:00Z");
-        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.forUser(USERNAME, 
MailboxConstants.INBOX),
+        ComposedMessageId message = 
mailboxProbe.appendMessage(USERNAME.asString(), MailboxPath.inbox(USERNAME),
             new ByteArrayInputStream("Subject: my test 
subject\r\n\r\ntestmail".getBytes(StandardCharsets.UTF_8)), 
Date.from(dateTime.toInstant()), false, new Flags());
 
         String messageToMoveId = message.getMessageId().serialize();
diff --git 
a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/GetMailboxesMethodTest.java
 
b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/GetMailboxesMethodTest.java
index 973b45e..2ac5c67 100644
--- 
a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/GetMailboxesMethodTest.java
+++ 
b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/GetMailboxesMethodTest.java
@@ -31,10 +31,10 @@ import java.util.stream.Collectors;
 import javax.mail.Flags;
 
 import org.apache.james.core.Username;
-import org.apache.james.jmap.draft.model.MethodCallId;
 import org.apache.james.jmap.draft.model.GetMailboxesRequest;
 import org.apache.james.jmap.draft.model.GetMailboxesResponse;
 import org.apache.james.jmap.draft.model.MailboxFactory;
+import org.apache.james.jmap.draft.model.MethodCallId;
 import org.apache.james.jmap.draft.model.Number;
 import org.apache.james.jmap.draft.model.mailbox.Mailbox;
 import org.apache.james.jmap.draft.model.mailbox.SortOrder;
@@ -246,7 +246,7 @@ public class GetMailboxesMethodTest {
     @SuppressWarnings("unchecked")
     public void getMailboxesShouldReturnMailboxesWithSortOrder() throws 
Exception {
         MailboxSession mailboxSession = 
mailboxManager.createSystemSession(USERNAME);
-        mailboxManager.createMailbox(MailboxPath.forUser(USERNAME, "INBOX"), 
mailboxSession);
+        mailboxManager.createMailbox(MailboxPath.inbox(USERNAME), 
mailboxSession);
         mailboxManager.createMailbox(MailboxPath.forUser(USERNAME, "Archive"), 
mailboxSession);
         mailboxManager.createMailbox(MailboxPath.forUser(USERNAME, "Drafts"), 
mailboxSession);
         mailboxManager.createMailbox(MailboxPath.forUser(USERNAME, "Outbox"), 
mailboxSession);
diff --git 
a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/model/MailboxFactoryTest.java
 
b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/model/MailboxFactoryTest.java
index f9c437a..24d8cb4 100644
--- 
a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/model/MailboxFactoryTest.java
+++ 
b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/model/MailboxFactoryTest.java
@@ -34,7 +34,6 @@ import org.apache.james.mailbox.inmemory.InMemoryId;
 import org.apache.james.mailbox.inmemory.manager.InMemoryIntegrationResources;
 import org.apache.james.mailbox.manager.ManagerTestProvisionner;
 import org.apache.james.mailbox.model.MailboxACL;
-import org.apache.james.mailbox.model.MailboxConstants;
 import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxMetaData;
 import org.apache.james.mailbox.model.MailboxPath;
@@ -140,7 +139,7 @@ public class MailboxFactoryTest {
 
     @Test
     public void 
getParentIdFromMailboxPathShouldReturnParentIdWhenChildMailbox() throws 
Exception {
-        MailboxPath parentMailboxPath = MailboxPath.forUser(user, 
MailboxConstants.INBOX);
+        MailboxPath parentMailboxPath = MailboxPath.inbox(user);
         mailboxManager.createMailbox(parentMailboxPath, mailboxSession);
         MailboxId parentId = mailboxManager.getMailbox(parentMailboxPath, 
mailboxSession).getId();
 
@@ -185,7 +184,7 @@ public class MailboxFactoryTest {
 
     @Test
     public void 
getNamespaceShouldReturnPersonalNamespaceWhenUserMailboxPathAndUserMailboxSessionAreTheSame()
 throws Exception {
-        MailboxPath inbox = MailboxPath.forUser(user, "inbox");
+        MailboxPath inbox = MailboxPath.inbox(user);
         Optional<MailboxId> mailboxId = mailboxManager.createMailbox(inbox, 
mailboxSession);
 
         Mailbox retrievedMailbox = sut.builder()
@@ -200,7 +199,7 @@ public class MailboxFactoryTest {
 
     @Test
     public void 
getNamespaceShouldReturnDelegatedNamespaceWhenUserMailboxPathAndUserMailboxSessionAreNotTheSame()
 throws Exception {
-        MailboxPath inbox = MailboxPath.forUser(user, MailboxConstants.INBOX);
+        MailboxPath inbox = MailboxPath.inbox(user);
         Optional<MailboxId> mailboxId = mailboxManager.createMailbox(inbox, 
mailboxSession);
         mailboxManager.applyRightsCommand(inbox,
             MailboxACL.command()
@@ -240,7 +239,7 @@ public class MailboxFactoryTest {
 
     @Test
     public void delegatedUserShouldHaveMayAddItemsWhenAllowedToInsert() throws 
Exception {
-        MailboxPath inbox = MailboxPath.forUser(user, MailboxConstants.INBOX);
+        MailboxPath inbox = MailboxPath.inbox(user);
         Optional<MailboxId> mailboxId = mailboxManager.createMailbox(inbox, 
mailboxSession);
         mailboxManager.applyRightsCommand(inbox,
             MailboxACL.command()
@@ -265,7 +264,7 @@ public class MailboxFactoryTest {
 
     @Test
     public void delegatedUserShouldHaveMayReadItemsWhenAllowedToRead() throws 
Exception {
-        MailboxPath inbox = MailboxPath.forUser(user, MailboxConstants.INBOX);
+        MailboxPath inbox = MailboxPath.inbox(user);
         Optional<MailboxId> mailboxId = mailboxManager.createMailbox(inbox, 
mailboxSession);
         mailboxManager.applyRightsCommand(inbox,
             MailboxACL.command()
@@ -290,7 +289,7 @@ public class MailboxFactoryTest {
 
     @Test
     public void 
delegatedUserShouldHaveMayRemoveItemsWhenAllowedToRemoveItems() throws 
Exception {
-        MailboxPath inbox = MailboxPath.forUser(user, MailboxConstants.INBOX);
+        MailboxPath inbox = MailboxPath.inbox(user);
         Optional<MailboxId> mailboxId = mailboxManager.createMailbox(inbox, 
mailboxSession);
         mailboxManager.applyRightsCommand(inbox,
             MailboxACL.command()
diff --git 
a/server/protocols/protocols-lmtp/src/main/java/org/apache/james/lmtpserver/hook/MailboxDeliverToRecipientHandler.java
 
b/server/protocols/protocols-lmtp/src/main/java/org/apache/james/lmtpserver/hook/MailboxDeliverToRecipientHandler.java
index 74f7d7d..15419ef 100644
--- 
a/server/protocols/protocols-lmtp/src/main/java/org/apache/james/lmtpserver/hook/MailboxDeliverToRecipientHandler.java
+++ 
b/server/protocols/protocols-lmtp/src/main/java/org/apache/james/lmtpserver/hook/MailboxDeliverToRecipientHandler.java
@@ -75,7 +75,7 @@ public class MailboxDeliverToRecipientHandler implements 
DeliverToRecipientHook
                 Optional<MailboxId> mailboxId = 
mailboxManager.createMailbox(inbox, mailboxSession);
                 LOGGER.info("Provisioning INBOX. {} created.", mailboxId);
             }
-            mailboxManager.getMailbox(MailboxPath.inbox(mailboxSession), 
mailboxSession)
+            mailboxManager.getMailbox(MailboxPath.inbox(username), 
mailboxSession)
                 .appendMessage(MessageManager.AppendCommand.builder()
                     .recent()
                     .build(envelope.getMessageInputStream()),
diff --git 
a/server/protocols/protocols-pop3/src/test/java/org/apache/james/pop3server/POP3ServerTest.java
 
b/server/protocols/protocols-pop3/src/test/java/org/apache/james/pop3server/POP3ServerTest.java
index b07fee9..affc673 100644
--- 
a/server/protocols/protocols-pop3/src/test/java/org/apache/james/pop3server/POP3ServerTest.java
+++ 
b/server/protocols/protocols-pop3/src/test/java/org/apache/james/pop3server/POP3ServerTest.java
@@ -208,7 +208,7 @@ public class POP3ServerTest {
         assertThat(list.length).describedAs("Found unexpected 
messages").isEqualTo(0);
 
         pop3Client.disconnect();
-        MailboxPath mailboxPath = MailboxPath.forUser(username, "INBOX");
+        MailboxPath mailboxPath = MailboxPath.inbox(username);
         MailboxSession session = mailboxManager.login(username, "bar");
         if (!mailboxManager.mailboxExists(mailboxPath, session)) {
             mailboxManager.createMailbox(mailboxPath, session);
@@ -294,7 +294,7 @@ public class POP3ServerTest {
         Username username = Username.of("foo2");
         usersRepository.addUser(username, "bar2");
 
-        MailboxPath mailboxPath = MailboxPath.forUser(username, "INBOX");
+        MailboxPath mailboxPath = MailboxPath.inbox(username);
         MailboxSession session = mailboxManager.login(username, "bar2");
 
         if (!mailboxManager.mailboxExists(mailboxPath, session)) {
@@ -384,7 +384,7 @@ public class POP3ServerTest {
         Username username = Username.of("foo2");
         usersRepository.addUser(username, "bar2");
 
-        MailboxPath mailboxPath = MailboxPath.forUser(username, "INBOX");
+        MailboxPath mailboxPath = MailboxPath.inbox(username);
         MailboxSession session = mailboxManager.login(username, "bar2");
 
         if (!mailboxManager.mailboxExists(mailboxPath, session)) {
@@ -438,7 +438,7 @@ public class POP3ServerTest {
         Username username = Username.of("foo2");
         usersRepository.addUser(username, "bar2");
 
-        MailboxPath mailboxPath = MailboxPath.forUser(username, "INBOX");
+        MailboxPath mailboxPath = MailboxPath.inbox(username);
         MailboxSession session = mailboxManager.login(username, "bar2");
 
         if (!mailboxManager.mailboxExists(mailboxPath, session)) {
@@ -650,7 +650,7 @@ public class POP3ServerTest {
         usersRepository.addUser(username, "bar6");
         MailboxSession session = mailboxManager.login(username, "bar6");
 
-        MailboxPath mailboxPath = MailboxPath.inbox(session);
+        MailboxPath mailboxPath = MailboxPath.inbox(username);
 
         mailboxManager.startProcessingRequest(session);
         if (!mailboxManager.mailboxExists(mailboxPath, session)) {
diff --git 
a/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/EventDeadLettersIntegrationTest.java
 
b/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/EventDeadLettersIntegrationTest.java
index 95fdd91..2927ac3 100644
--- 
a/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/EventDeadLettersIntegrationTest.java
+++ 
b/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/EventDeadLettersIntegrationTest.java
@@ -63,6 +63,7 @@ import org.junit.Rule;
 import org.junit.Test;
 
 import com.google.inject.multibindings.Multibinder;
+
 import io.restassured.RestAssured;
 import io.restassured.http.ContentType;
 
@@ -135,7 +136,7 @@ public class EventDeadLettersIntegrationTest {
     private static final String EVENTS_ACTION = "reDeliver";
     private static final String GROUP_ID = new 
RetryEventsListenerGroup().asString();
 
-    private static final MailboxPath BOB_INBOX_PATH = 
MailboxPath.forUser(Username.of(BOB), DefaultMailboxes.INBOX);
+    private static final MailboxPath BOB_INBOX_PATH = 
MailboxPath.inbox(Username.of(BOB));
 
     private Duration slowPacedPollInterval = ONE_HUNDRED_MILLISECONDS;
     private ConditionFactory calmlyAwait = Awaitility.with()
diff --git 
a/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/WebAdminServerTaskSerializationIntegrationTest.java
 
b/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/WebAdminServerTaskSerializationIntegrationTest.java
index 056ae96..9d633b0 100644
--- 
a/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/WebAdminServerTaskSerializationIntegrationTest.java
+++ 
b/server/protocols/webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/WebAdminServerTaskSerializationIntegrationTest.java
@@ -75,9 +75,6 @@ import 
org.apache.james.webadmin.routes.MailRepositoriesRoutes;
 import org.apache.james.webadmin.routes.TasksRoutes;
 import org.apache.james.webadmin.vault.routes.DeletedMessagesVaultRoutes;
 import org.apache.mailet.base.test.FakeMail;
-
-import io.restassured.RestAssured;
-import io.restassured.http.ContentType;
 import org.eclipse.jetty.http.HttpStatus;
 import org.hamcrest.Matchers;
 import org.junit.After;
@@ -85,6 +82,9 @@ import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
 
+import io.restassured.RestAssured;
+import io.restassured.http.ContentType;
+
 public class WebAdminServerTaskSerializationIntegrationTest {
 
     private static final String DOMAIN = "domain";
@@ -257,7 +257,7 @@ public class WebAdminServerTaskSerializationIntegrationTest 
{
         MailboxId mailboxId = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, USERNAME, 
MailboxConstants.INBOX);
         ComposedMessageId composedMessageId = mailboxProbe.appendMessage(
                 USERNAME,
-                MailboxPath.forUser(Username.of(USERNAME), 
MailboxConstants.INBOX),
+                MailboxPath.inbox(Username.of(USERNAME)),
                 new ByteArrayInputStream("Subject: 
test\r\n\r\ntestmail".getBytes()),
                 new Date(),
                 false,
@@ -286,7 +286,7 @@ public class WebAdminServerTaskSerializationIntegrationTest 
{
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, USERNAME, 
MailboxConstants.INBOX);
         ComposedMessageId composedMessageId = mailboxProbe.appendMessage(
             USERNAME,
-            MailboxPath.forUser(Username.of(USERNAME), MailboxConstants.INBOX),
+            MailboxPath.inbox(Username.of(USERNAME)),
             new ByteArrayInputStream("Subject: 
test\r\n\r\ntestmail".getBytes()),
             new Date(),
             false,
@@ -684,7 +684,7 @@ public class WebAdminServerTaskSerializationIntegrationTest 
{
         mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, USERNAME, 
MailboxConstants.INBOX);
         ComposedMessageId composedMessageId = mailboxProbe.appendMessage(
             USERNAME,
-            MailboxPath.forUser(Username.of(USERNAME), MailboxConstants.INBOX),
+            MailboxPath.inbox(Username.of(USERNAME)),
             new ByteArrayInputStream("Subject: 
test\r\n\r\ntestmail".getBytes()),
             new Date(),
             false,
diff --git 
a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ReindexingRoutesTest.java
 
b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ReindexingRoutesTest.java
index a924fbc..6271909 100644
--- 
a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ReindexingRoutesTest.java
+++ 
b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ReindexingRoutesTest.java
@@ -73,7 +73,7 @@ import io.restassured.RestAssured;
 
 class ReindexingRoutesTest {
     private static final Username USERNAME = Username.of("[email protected]");
-    private static final MailboxPath INBOX = MailboxPath.forUser(USERNAME, 
"INBOX");
+    private static final MailboxPath INBOX = MailboxPath.inbox(USERNAME);
 
     private WebAdminServer webAdminServer;
     private ListeningMessageSearchIndex searchIndex;
diff --git 
a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserQuotaRoutesTest.java
 
b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserQuotaRoutesTest.java
index c98a4fd..0763109 100644
--- 
a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserQuotaRoutesTest.java
+++ 
b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/UserQuotaRoutesTest.java
@@ -57,6 +57,7 @@ import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.ExtendWith;
 
 import com.google.common.base.Strings;
+
 import io.restassured.RestAssured;
 import io.restassured.http.ContentType;
 import io.restassured.path.json.JsonPath;
@@ -437,7 +438,7 @@ class UserQuotaRoutesTest {
             MailboxManager mailboxManager = testSystem.getMailboxManager();
             MailboxSession session = 
mailboxManager.createSystemSession(username);
 
-            MailboxPath mailboxPath = MailboxPath.inbox(session);
+            MailboxPath mailboxPath = MailboxPath.inbox(username);
             mailboxManager.createMailbox(mailboxPath, session);
             mailboxManager.getMailbox(mailboxPath, session)
                 .appendMessage(appendCommand, session);


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to