MAILBOX-352 Put MailboxId inside MailboxEvent(literally)

Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/f3781620
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/f3781620
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/f3781620

Branch: refs/heads/master
Commit: f37816206bf65bf4dd57de322665014ad8148590
Parents: 5100702
Author: tran tien duc <dt...@linagora.com>
Authored: Tue Nov 27 11:13:03 2018 +0700
Committer: Benoit Tellier <btell...@linagora.com>
Committed: Wed Nov 28 17:18:55 2018 +0700

----------------------------------------------------------------------
 .../apache/james/mailbox/MailboxListener.java   | 51 ++++++++++++--------
 .../james/mailbox/store/StoreRightManager.java  |  4 +-
 .../james/mailbox/store/event/EventFactory.java | 17 ++++---
 .../store/event/MailboxEventDispatcher.java     |  5 +-
 .../event/AsynchronousEventDeliveryTest.java    |  6 +--
 .../DefaultDelegatingMailboxListenerTest.java   | 33 +++++++------
 .../event/MailboxAnnotationListenerTest.java    |  2 +-
 .../store/event/MixedEventDeliveryTest.java     |  6 +--
 .../event/SynchronousEventDeliveryTest.java     |  4 +-
 .../base/FakeMailboxListenerAdded.java          |  5 +-
 .../base/FakeMailboxListenerFlagsUpdate.java    |  5 +-
 .../base/MailboxEventAnalyserTest.java          | 28 +++++++----
 12 files changed, 97 insertions(+), 69 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxListener.java
----------------------------------------------------------------------
diff --git 
a/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxListener.java 
b/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxListener.java
index 3112378..5e52828 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxListener.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/MailboxListener.java
@@ -27,6 +27,7 @@ import java.util.Objects;
 import org.apache.james.core.quota.QuotaCount;
 import org.apache.james.core.quota.QuotaSize;
 import org.apache.james.mailbox.acl.ACLDiff;
+import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageMetaData;
 import org.apache.james.mailbox.model.Quota;
@@ -133,10 +134,12 @@ public interface MailboxListener {
     abstract class MailboxEvent implements Event, Serializable {
         private final MailboxSession session;
         private final MailboxPath path;
+        private final MailboxId mailboxId;
 
-        public MailboxEvent(MailboxSession session, MailboxPath path) {
+        public MailboxEvent(MailboxSession session, MailboxPath path, 
MailboxId mailboxId) {
             this.session = session;
             this.path = path;
+            this.mailboxId = mailboxId;
         }
 
         /**
@@ -158,6 +161,15 @@ public interface MailboxListener {
         public MailboxPath getMailboxPath() {
             return path;
         }
+
+        /**
+         * Return the id of the Mailbox this event belongs to.
+         *
+         * @return mailboxId
+         */
+        public MailboxId getMailboxId() {
+            return mailboxId;
+        }
     }
 
     /**
@@ -174,8 +186,9 @@ public interface MailboxListener {
         private final QuotaCount deletedMessageCOunt;
         private final QuotaSize totalDeletedSize;
 
-        public MailboxDeletion(MailboxSession session, MailboxPath path, 
QuotaRoot quotaRoot, QuotaCount deletedMessageCOunt, QuotaSize 
totalDeletedSize) {
-            super(session, path);
+        public MailboxDeletion(MailboxSession session, MailboxPath path, 
QuotaRoot quotaRoot, QuotaCount deletedMessageCOunt, QuotaSize totalDeletedSize,
+                               MailboxId mailboxId) {
+            super(session, path, mailboxId);
             this.quotaRoot = quotaRoot;
             this.deletedMessageCOunt = deletedMessageCOunt;
             this.totalDeletedSize = totalDeletedSize;
@@ -203,8 +216,8 @@ public interface MailboxListener {
          */
         private static final long serialVersionUID = 1L;
 
-        public MailboxAdded(MailboxSession session, MailboxPath path) {
-            super(session, path);
+        public MailboxAdded(MailboxSession session, MailboxPath path, 
MailboxId mailboxId) {
+            super(session, path, mailboxId);
         }
     }
 
@@ -217,8 +230,8 @@ public interface MailboxListener {
          */
         private static final long serialVersionUID = 1L;
 
-        public MailboxRenamed(MailboxSession session, MailboxPath path) {
-            super(session, path);
+        public MailboxRenamed(MailboxSession session, MailboxPath path, 
MailboxId mailboxId) {
+            super(session, path, mailboxId);
         }
 
         /**
@@ -237,8 +250,8 @@ public interface MailboxListener {
         private final ACLDiff aclDiff;
         private static final long serialVersionUID = 1L;
 
-        public MailboxACLUpdated(MailboxSession session, MailboxPath path, 
ACLDiff aclDiff) {
-            super(session, path);
+        public MailboxACLUpdated(MailboxSession session, MailboxPath path, 
ACLDiff aclDiff, MailboxId mailboxId) {
+            super(session, path, mailboxId);
             this.aclDiff = aclDiff;
         }
 
@@ -258,8 +271,8 @@ public interface MailboxListener {
          */
         private static final long serialVersionUID = 1L;
 
-        public MessageEvent(MailboxSession session, MailboxPath path) {
-            super(session, path);
+        public MessageEvent(MailboxSession session, MailboxPath path, 
MailboxId mailboxId) {
+            super(session, path, mailboxId);
         }
 
         /**
@@ -272,8 +285,8 @@ public interface MailboxListener {
 
     abstract class MetaDataHoldingEvent extends MessageEvent {
 
-        public MetaDataHoldingEvent(MailboxSession session, MailboxPath path) {
-            super(session, path);
+        public MetaDataHoldingEvent(MailboxSession session, MailboxPath path, 
MailboxId mailboxId) {
+            super(session, path, mailboxId);
         }
 
         /**
@@ -292,8 +305,8 @@ public interface MailboxListener {
          */
         private static final long serialVersionUID = 1L;
 
-        public Expunged(MailboxSession session, MailboxPath path) {
-            super(session, path);
+        public Expunged(MailboxSession session, MailboxPath path, MailboxId 
mailboxId) {
+            super(session, path, mailboxId);
         }
         
         /**
@@ -315,8 +328,8 @@ public interface MailboxListener {
          */
         private static final long serialVersionUID = 1L;
 
-        public FlagsUpdated(MailboxSession session, MailboxPath path) {
-            super(session, path);
+        public FlagsUpdated(MailboxSession session, MailboxPath path, 
MailboxId mailboxId) {
+            super(session, path, mailboxId);
         }
 
         public abstract List<UpdatedFlags> getUpdatedFlags();
@@ -332,8 +345,8 @@ public interface MailboxListener {
          */
         private static final long serialVersionUID = 1L;
 
-        public Added(MailboxSession session, MailboxPath path) {
-            super(session, path);
+        public Added(MailboxSession session, MailboxPath path, MailboxId 
mailboxId) {
+            super(session, path, mailboxId);
         }
         
         /**

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java
 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java
index d17b41f..5fd6491 100644
--- 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java
+++ 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreRightManager.java
@@ -138,7 +138,7 @@ public class StoreRightManager implements RightManager {
         Mailbox mailbox = mapper.findMailboxByPath(mailboxPath);
         ACLDiff aclDiff = mapper.updateACL(mailbox, mailboxACLCommand);
 
-        dispatcher.aclUpdated(session, mailboxPath, aclDiff);
+        dispatcher.aclUpdated(session, mailboxPath, aclDiff, 
mailbox.getMailboxId());
     }
 
     private void assertSharesBelongsToUserDomain(String user, ACLCommand 
mailboxACLCommand) throws DifferentDomainException {
@@ -216,7 +216,7 @@ public class StoreRightManager implements RightManager {
     private void setRights(MailboxACL mailboxACL, MailboxMapper mapper, 
Mailbox mailbox, MailboxSession session) throws MailboxException {
         ACLDiff aclDiff = mapper.setACL(mailbox, mailboxACL);
 
-        dispatcher.aclUpdated(session, mailbox.generateAssociatedPath(), 
aclDiff);
+        dispatcher.aclUpdated(session, mailbox.generateAssociatedPath(), 
aclDiff, mailbox.getMailboxId());
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java
 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java
index 4ee78b6..2af8b42 100644
--- 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java
+++ 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/EventFactory.java
@@ -29,6 +29,7 @@ import org.apache.james.mailbox.MailboxListener;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.acl.ACLDiff;
+import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageMetaData;
 import org.apache.james.mailbox.model.MessageMoves;
@@ -53,7 +54,7 @@ public class EventFactory {
         private final Mailbox mailbox;
 
         public AddedImpl(MailboxSession session, Mailbox mailbox, 
SortedMap<MessageUid, MessageMetaData> uids, Map<MessageUid, MailboxMessage> 
availableMessages) {
-            super(session, new StoreMailboxPath(mailbox));
+            super(session, new StoreMailboxPath(mailbox), 
mailbox.getMailboxId());
             this.added = ImmutableMap.copyOf(uids);
             this.mailbox = mailbox;
             this.availableMessages = ImmutableMap.copyOf(availableMessages);
@@ -84,7 +85,7 @@ public class EventFactory {
         private final Mailbox mailbox;
 
         public ExpungedImpl(MailboxSession session, Mailbox mailbox,  
Map<MessageUid, MessageMetaData> uids) {
-            super(session,  new StoreMailboxPath(mailbox));
+            super(session,  new StoreMailboxPath(mailbox), 
mailbox.getMailboxId());
             this.uids = ImmutableMap.copyOf(uids);
             this.mailbox = mailbox;
         }
@@ -113,7 +114,7 @@ public class EventFactory {
         private final List<UpdatedFlags> uFlags;
 
         public FlagsUpdatedImpl(MailboxSession session, Mailbox mailbox, 
List<MessageUid> uids, List<UpdatedFlags> uFlags) {
-            super(session, new StoreMailboxPath(mailbox));
+            super(session, new StoreMailboxPath(mailbox), 
mailbox.getMailboxId());
             this.uids = ImmutableList.copyOf(uids);
             this.uFlags = ImmutableList.copyOf(uFlags);
             this.mailbox = mailbox;
@@ -140,7 +141,7 @@ public class EventFactory {
         private final Mailbox mailbox;
 
         public MailboxDeletionImpl(MailboxSession session, Mailbox mailbox, 
QuotaRoot quotaRoot, QuotaCount deletedMessageCount, QuotaSize 
totalDeletedSize) {
-            super(session, new StoreMailboxPath(mailbox), quotaRoot, 
deletedMessageCount, totalDeletedSize);
+            super(session, new StoreMailboxPath(mailbox), quotaRoot, 
deletedMessageCount, totalDeletedSize, mailbox.getMailboxId());
             this.mailbox = mailbox;
         }
 
@@ -157,7 +158,7 @@ public class EventFactory {
         private final Mailbox mailbox;
 
         public MailboxAddedImpl(MailboxSession session, Mailbox mailbox) {
-            super(session,  new StoreMailboxPath(mailbox));
+            super(session,  new StoreMailboxPath(mailbox), 
mailbox.getMailboxId());
             this.mailbox = mailbox;
         }
 
@@ -175,7 +176,7 @@ public class EventFactory {
         private final Mailbox newMailbox;
 
         public MailboxRenamedEventImpl(MailboxSession session, MailboxPath 
oldPath, Mailbox newMailbox) {
-            super(session, oldPath);
+            super(session, oldPath, newMailbox.getMailboxId());
             this.newPath = new StoreMailboxPath(newMailbox);
             this.newMailbox = newMailbox;
         }
@@ -216,8 +217,8 @@ public class EventFactory {
         return new MailboxAddedImpl(session, mailbox);
     }
 
-    public MailboxListener.MailboxACLUpdated aclUpdated(MailboxSession 
session, MailboxPath mailboxPath, ACLDiff aclDiff) {
-        return new MailboxListener.MailboxACLUpdated(session, mailboxPath, 
aclDiff);
+    public MailboxListener.MailboxACLUpdated aclUpdated(MailboxSession 
session, MailboxPath mailboxPath, ACLDiff aclDiff, MailboxId mailboxId) {
+        return new MailboxListener.MailboxACLUpdated(session, mailboxPath, 
aclDiff, mailboxId);
     }
 
     public MessageMoveEvent moved(MailboxSession session, MessageMoves 
messageMoves, Map<MessageUid, MailboxMessage> messages) {

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MailboxEventDispatcher.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MailboxEventDispatcher.java
 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MailboxEventDispatcher.java
index da0f503..d6eee58 100644
--- 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MailboxEventDispatcher.java
+++ 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/MailboxEventDispatcher.java
@@ -33,6 +33,7 @@ import org.apache.james.mailbox.MailboxListener;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.mailbox.acl.ACLDiff;
+import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageMetaData;
 import org.apache.james.mailbox.model.MessageMoves;
@@ -157,8 +158,8 @@ public class MailboxEventDispatcher {
         listener.event(eventFactory.mailboxAdded(session, mailbox));
     }
 
-    public void aclUpdated(MailboxSession session, MailboxPath mailboxPath, 
ACLDiff aclDiff) {
-        listener.event(eventFactory.aclUpdated(session, mailboxPath, aclDiff));
+    public void aclUpdated(MailboxSession session, MailboxPath mailboxPath, 
ACLDiff aclDiff, MailboxId mailboxId) {
+        listener.event(eventFactory.aclUpdated(session, mailboxPath, aclDiff, 
mailboxId));
     }
 
     public void moved(MailboxSession session, MessageMoves messageMoves, 
Map<MessageUid, MailboxMessage> messages) {

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/AsynchronousEventDeliveryTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/AsynchronousEventDeliveryTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/AsynchronousEventDeliveryTest.java
index 1fbe4d7..7cd2176 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/AsynchronousEventDeliveryTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/AsynchronousEventDeliveryTest.java
@@ -53,14 +53,14 @@ public class AsynchronousEventDeliveryTest {
 
     @Test
     public void deliverShouldWork() throws Exception {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null, null) {};
         asynchronousEventDelivery.deliver(mailboxListener, event);
         verify(mailboxListener, timeout(ONE_MINUTE)).event(event);
     }
 
     @Test
     public void deliverShouldNotPropagateException() throws Exception {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(new MockMailboxSession("test"), null) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(new MockMailboxSession("test"), null, null) {};
         doThrow(new RuntimeException()).when(mailboxListener).event(event);
         asynchronousEventDelivery.deliver(mailboxListener, event);
         verify(mailboxListener, timeout(ONE_MINUTE)).event(event);
@@ -68,7 +68,7 @@ public class AsynchronousEventDeliveryTest {
 
     @Test
     public void deliverShouldWorkWhenThePoolIsFull() throws Exception {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(new MockMailboxSession("test"), null) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(new MockMailboxSession("test"), null, null) {};
         int operationCount = 10;
         for (int i = 0; i < operationCount; i++) {
             asynchronousEventDelivery.deliver(mailboxListener, event);

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
index fe509ec..190e0b2 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListenerTest.java
@@ -32,8 +32,10 @@ import org.apache.james.mailbox.MailboxListener;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.mock.MockMailboxSession;
+import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.QuotaRoot;
+import org.apache.james.mailbox.model.TestId;
 import org.apache.james.mailbox.util.EventCollector;
 import org.junit.Before;
 import org.junit.Test;
@@ -42,6 +44,7 @@ public class DefaultDelegatingMailboxListenerTest {
 
     private static final MailboxPath MAILBOX_PATH = new 
MailboxPath("namespace", "user", "name");
     private static final MailboxPath OTHER_MAILBOX_PATH = new 
MailboxPath("namespace", "other", "name");
+    private static final MailboxId MAILBOX_ID = TestId.of(100);
 
     private DefaultDelegatingMailboxListener defaultDelegatingMailboxListener;
     private EventCollector mailboxEventCollector;
@@ -79,7 +82,7 @@ public class DefaultDelegatingMailboxListenerTest {
 
     @Test
     public void eventShouldWork() throws Exception {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(event);
         assertThat(mailboxEventCollector.getEvents()).containsExactly(event);
         assertThat(eachNodeEventCollector.getEvents()).containsExactly(event);
@@ -88,7 +91,7 @@ public class DefaultDelegatingMailboxListenerTest {
 
     @Test
     public void eventShouldOnlyTriggerMAILBOXListenerRelatedToTheEvent() 
throws Exception {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, OTHER_MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, OTHER_MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(event);
         assertThat(mailboxEventCollector.getEvents()).isEmpty();
         assertThat(eachNodeEventCollector.getEvents()).containsExactly(event);
@@ -97,14 +100,14 @@ public class DefaultDelegatingMailboxListenerTest {
 
     @Test
     public void 
mailboxRenamedEventShouldUnregisterMAILBOXFromTheirPreviousPath() throws 
Exception {
-        MailboxListener.MailboxRenamed event = new 
MailboxListener.MailboxRenamed(null, MAILBOX_PATH) {
+        MailboxListener.MailboxRenamed event = new 
MailboxListener.MailboxRenamed(null, MAILBOX_PATH, MAILBOX_ID) {
             @Override
             public MailboxPath getNewPath() {
                 return OTHER_MAILBOX_PATH;
             }
         };
         defaultDelegatingMailboxListener.event(event);
-        MailboxListener.MailboxEvent secondEvent = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent secondEvent = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(secondEvent);
         assertThat(mailboxEventCollector.getEvents()).containsExactly(event);
         assertThat(eachNodeEventCollector.getEvents()).containsOnly(event, 
secondEvent);
@@ -113,14 +116,14 @@ public class DefaultDelegatingMailboxListenerTest {
 
     @Test
     public void mailboxRenamedEventShouldRegisterMAILBOXToTheirNewPath() 
throws Exception {
-        MailboxListener.MailboxRenamed event = new 
MailboxListener.MailboxRenamed(null, MAILBOX_PATH) {
+        MailboxListener.MailboxRenamed event = new 
MailboxListener.MailboxRenamed(null, MAILBOX_PATH, MAILBOX_ID) {
             @Override
             public MailboxPath getNewPath() {
                 return OTHER_MAILBOX_PATH;
             }
         };
         defaultDelegatingMailboxListener.event(event);
-        MailboxListener.MailboxEvent secondEvent = new 
MailboxListener.MailboxEvent(null, OTHER_MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent secondEvent = new 
MailboxListener.MailboxEvent(null, OTHER_MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(secondEvent);
         assertThat(mailboxEventCollector.getEvents()).containsOnly(event, 
secondEvent);
         assertThat(eachNodeEventCollector.getEvents()).containsOnly(event, 
secondEvent);
@@ -132,9 +135,9 @@ public class DefaultDelegatingMailboxListenerTest {
         QuotaRoot quotaRoot = QuotaRoot.quotaRoot("root", Optional.empty());
         QuotaCount deletedMessageCount = QuotaCount.count(123);
         QuotaSize totalDeletedSize = QuotaSize.size(456);
-        MailboxListener.MailboxDeletion event = new 
MailboxListener.MailboxDeletion(null, MAILBOX_PATH, quotaRoot, 
deletedMessageCount, totalDeletedSize) {};
+        MailboxListener.MailboxDeletion event = new 
MailboxListener.MailboxDeletion(null, MAILBOX_PATH, quotaRoot, 
deletedMessageCount, totalDeletedSize, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(event);
-        MailboxListener.MailboxEvent secondEvent = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent secondEvent = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(secondEvent);
         assertThat(mailboxEventCollector.getEvents()).containsExactly(event);
         assertThat(eachNodeEventCollector.getEvents()).containsOnly(event, 
secondEvent);
@@ -146,9 +149,9 @@ public class DefaultDelegatingMailboxListenerTest {
         QuotaRoot quotaRoot = QuotaRoot.quotaRoot("root", Optional.empty());
         QuotaCount quotaCount = QuotaCount.count(123);
         QuotaSize quotaSize = QuotaSize.size(456);
-        MailboxListener.MailboxDeletion event = new 
MailboxListener.MailboxDeletion(null, MAILBOX_PATH, quotaRoot, quotaCount, 
quotaSize) {};
+        MailboxListener.MailboxDeletion event = new 
MailboxListener.MailboxDeletion(null, MAILBOX_PATH, quotaRoot, quotaCount, 
quotaSize, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(event);
-        MailboxListener.MailboxEvent secondEvent = new 
MailboxListener.MailboxEvent(null, OTHER_MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent secondEvent = new 
MailboxListener.MailboxEvent(null, OTHER_MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(secondEvent);
         assertThat(mailboxEventCollector.getEvents()).containsExactly(event);
         assertThat(eachNodeEventCollector.getEvents()).containsOnly(event, 
secondEvent);
@@ -158,7 +161,7 @@ public class DefaultDelegatingMailboxListenerTest {
     @Test
     public void removeListenerShouldWork() throws Exception {
         defaultDelegatingMailboxListener.removeListener(MAILBOX_PATH, 
mailboxEventCollector, null);
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(event);
         assertThat(mailboxEventCollector.getEvents()).isEmpty();
         assertThat(eachNodeEventCollector.getEvents()).containsExactly(event);
@@ -168,7 +171,7 @@ public class DefaultDelegatingMailboxListenerTest {
     @Test
     public void removeListenerShouldNotRemoveAListenerFromADifferentPath() 
throws Exception {
         defaultDelegatingMailboxListener.removeListener(OTHER_MAILBOX_PATH, 
mailboxEventCollector, null);
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(event);
         assertThat(mailboxEventCollector.getEvents()).containsExactly(event);
         assertThat(eachNodeEventCollector.getEvents()).containsExactly(event);
@@ -178,7 +181,7 @@ public class DefaultDelegatingMailboxListenerTest {
     @Test
     public void removeGlobalListenerShouldWorkForONCE() throws Exception {
         
defaultDelegatingMailboxListener.removeGlobalListener(eachNodeEventCollector, 
null);
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(event);
         assertThat(mailboxEventCollector.getEvents()).containsExactly(event);
         assertThat(eachNodeEventCollector.getEvents()).isEmpty();
@@ -188,7 +191,7 @@ public class DefaultDelegatingMailboxListenerTest {
     @Test
     public void removeGlobalListenerShouldWorkForEACH_NODE() throws Exception {
         
defaultDelegatingMailboxListener.removeGlobalListener(onceEventCollector, null);
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH, MAILBOX_ID) {};
         defaultDelegatingMailboxListener.event(event);
         assertThat(mailboxEventCollector.getEvents()).containsExactly(event);
         assertThat(eachNodeEventCollector.getEvents()).containsExactly(event);
@@ -198,7 +201,7 @@ public class DefaultDelegatingMailboxListenerTest {
     @Test
     public void listenersErrorsShouldNotBePropageted() throws Exception {
         MailboxSession session = new MockMailboxSession("benwa");
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(session, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(session, MAILBOX_PATH, MAILBOX_ID) {};
         MailboxListener mockedListener = mock(MailboxListener.class);
         
when(mockedListener.getType()).thenReturn(MailboxListener.ListenerType.ONCE);
         doThrow(new RuntimeException()).when(mockedListener).event(event);

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java
index 524ad7d..69a1257 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MailboxAnnotationListenerTest.java
@@ -91,7 +91,7 @@ public class MailboxAnnotationListenerTest {
 
     @Test
     public void eventShouldDoNothingIfDoNotHaveMailboxDeletionEvent() {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, MAILBOX_PATH, MAILBOX_ID) {};
         listener.event(event);
 
         verifyNoMoreInteractions(mailboxSessionMapperFactory);

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MixedEventDeliveryTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MixedEventDeliveryTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MixedEventDeliveryTest.java
index 5a6dc92..7eecc59 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MixedEventDeliveryTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/MixedEventDeliveryTest.java
@@ -58,14 +58,14 @@ public class MixedEventDeliveryTest {
     @Test
     public void deliverShouldWorkOnSynchronousListeners() {
         
when(listener.getExecutionMode()).thenReturn(MailboxListener.ExecutionMode.SYNCHRONOUS);
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null, null) {};
         mixedEventDelivery.deliver(listener, event);
         verify(listener).event(event);
     }
 
     @Test
     public void deliverShouldEventuallyDeliverOnAsynchronousListeners() {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null, null) {};
         
when(listener.getExecutionMode()).thenReturn(MailboxListener.ExecutionMode.ASYNCHRONOUS);
         mixedEventDelivery.deliver(listener, event);
         verify(listener, timeout(DELIVERY_DELAY * 10)).event(event);
@@ -73,7 +73,7 @@ public class MixedEventDeliveryTest {
 
     @Test(timeout = ONE_MINUTE)
     public void deliverShouldNotBlockOnAsynchronousListeners() {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null, null) {};
         
when(listener.getExecutionMode()).thenReturn(MailboxListener.ExecutionMode.ASYNCHRONOUS);
         final CountDownLatch latch = new CountDownLatch(1);
         doAnswer(invocation -> {

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/SynchronousEventDeliveryTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/SynchronousEventDeliveryTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/SynchronousEventDeliveryTest.java
index 85bc13f..2b3e90a 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/SynchronousEventDeliveryTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/event/SynchronousEventDeliveryTest.java
@@ -42,14 +42,14 @@ public class SynchronousEventDeliveryTest {
 
     @Test
     public void deliverShouldWork() {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(null, null, null) {};
         synchronousEventDelivery.deliver(mailboxListener, event);
         verify(mailboxListener).event(event);
     }
 
     @Test
     public void deliverShouldNotPropagateException() {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(new MockMailboxSession("test"), null) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(new MockMailboxSession("test"), null, null) {};
         doThrow(new RuntimeException()).when(mailboxListener).event(event);
         synchronousEventDelivery.deliver(mailboxListener, event);
         verify(mailboxListener).event(event);

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java
----------------------------------------------------------------------
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java
index fae3525..c80b019 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java
@@ -27,6 +27,7 @@ import javax.mail.Flags;
 import org.apache.james.mailbox.MailboxListener;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
+import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.MessageId;
 import org.apache.james.mailbox.model.MessageMetaData;
@@ -35,8 +36,8 @@ public class FakeMailboxListenerAdded extends 
MailboxListener.Added {
 
     public List<MessageUid> uids;
 
-    public FakeMailboxListenerAdded(MailboxSession session, List<MessageUid> 
uids, MailboxPath path) {
-        super(session, path);
+    public FakeMailboxListenerAdded(MailboxSession session, List<MessageUid> 
uids, MailboxPath path, MailboxId mailboxId) {
+        super(session, path, mailboxId);
         this.uids = uids;
     }
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java
----------------------------------------------------------------------
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java
index eb794bd..dbedabe 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java
@@ -24,6 +24,7 @@ import java.util.List;
 import org.apache.james.mailbox.MailboxListener.FlagsUpdated;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
+import org.apache.james.mailbox.model.MailboxId;
 import org.apache.james.mailbox.model.MailboxPath;
 import org.apache.james.mailbox.model.UpdatedFlags;
 
@@ -33,8 +34,8 @@ public class FakeMailboxListenerFlagsUpdate extends 
FlagsUpdated {
 
     public List<UpdatedFlags> flags;
 
-    public FakeMailboxListenerFlagsUpdate(MailboxSession session, 
List<MessageUid> uids, List<UpdatedFlags> flags, MailboxPath path) {
-        super(session, path);
+    public FakeMailboxListenerFlagsUpdate(MailboxSession session, 
List<MessageUid> uids, List<UpdatedFlags> flags, MailboxPath path, MailboxId 
mailboxId) {
+        super(session, path, mailboxId);
         this.uids = uids;
         this.flags = flags;
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/f3781620/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
----------------------------------------------------------------------
diff --git 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
index 87f7c76..48c6fd8 100644
--- 
a/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
+++ 
b/protocols/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
@@ -49,6 +49,7 @@ import org.junit.Test;
 import com.google.common.collect.ImmutableList;
 
 public class MailboxEventAnalyserTest {
+
     public static class SingleMessageResultIterator implements 
MessageResultIterator {
         private final MessageResult messageResult;
         private boolean done;
@@ -86,6 +87,7 @@ public class MailboxEventAnalyserTest {
     private static final MockMailboxSession OTHER_MAILBOX_SESSION = new 
MockMailboxSession("user");
     private static final char PATH_DELIMITER = '.';
     private static final MailboxPath MAILBOX_PATH = new 
MailboxPath("namespace", "user", "name");
+    private static final TestId MAILBOX_ID = TestId.of(36);
 
     private SelectedMailboxImpl testee;
 
@@ -105,7 +107,7 @@ public class MailboxEventAnalyserTest {
             .thenReturn(messageManager);
 
         MessageResult messageResult = mock(MessageResult.class);
-        when(messageResult.getMailboxId()).thenReturn(TestId.of(36));
+        when(messageResult.getMailboxId()).thenReturn(MAILBOX_ID);
         when(messageResult.getUid()).thenReturn(MESSAGE_UID);
 
         when(messageManager.getApplicableFlags(any()))
@@ -120,7 +122,7 @@ public class MailboxEventAnalyserTest {
 
     @Test
     public void testShouldBeNoSizeChangeOnOtherEvent() {
-        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(MAILBOX_SESSION, MAILBOX_PATH) {};
+        MailboxListener.MailboxEvent event = new 
MailboxListener.MailboxEvent(MAILBOX_SESSION, MAILBOX_PATH, MAILBOX_ID) {};
       
         testee.event(event);
 
@@ -129,13 +131,13 @@ public class MailboxEventAnalyserTest {
 
     @Test
     public void testShouldBeNoSizeChangeOnAdded() {
-        testee.event(new FakeMailboxListenerAdded(MAILBOX_SESSION, 
ImmutableList.of(MessageUid.of(11)), MAILBOX_PATH));
+        testee.event(new FakeMailboxListenerAdded(MAILBOX_SESSION, 
ImmutableList.of(MessageUid.of(11)), MAILBOX_PATH, MAILBOX_ID));
         assertThat(testee.isSizeChanged()).isTrue();
     }
 
     @Test
     public void testShouldNoSizeChangeAfterReset() {
-        testee.event(new FakeMailboxListenerAdded(MAILBOX_SESSION, 
ImmutableList.of(MessageUid.of(11)), MAILBOX_PATH));
+        testee.event(new FakeMailboxListenerAdded(MAILBOX_SESSION, 
ImmutableList.of(MessageUid.of(11)), MAILBOX_PATH, MAILBOX_ID));
         testee.resetEvents();
 
         assertThat(testee.isSizeChanged()).isFalse();
@@ -151,7 +153,8 @@ public class MailboxEventAnalyserTest {
                 .oldFlags(new Flags())
                 .newFlags(new Flags())
                 .build()),
-            MAILBOX_PATH);
+            MAILBOX_PATH,
+            MAILBOX_ID);
         testee.event(update);
 
         assertThat(testee.flagUpdateUids()).isEmpty();
@@ -169,7 +172,8 @@ public class MailboxEventAnalyserTest {
                 .oldFlags(new Flags())
                 .newFlags(new Flags(Flags.Flag.ANSWERED))
                 .build()),
-            MAILBOX_PATH);
+            MAILBOX_PATH,
+            MAILBOX_ID);
         testee.event(update);
 
        assertThat(testee.flagUpdateUids().iterator()).containsExactly(uid);
@@ -188,7 +192,8 @@ public class MailboxEventAnalyserTest {
                 .oldFlags(new Flags())
                 .newFlags(new Flags(Flags.Flag.ANSWERED))
                 .build()),
-            MAILBOX_PATH);
+            MAILBOX_PATH,
+            MAILBOX_ID);
         analyser.event(update);
         analyser.event(update);
         analyser.deselect();
@@ -208,7 +213,8 @@ public class MailboxEventAnalyserTest {
                 .oldFlags(new Flags())
                 .newFlags(new Flags(Flags.Flag.ANSWERED))
                 .build()),
-            MAILBOX_PATH);
+            MAILBOX_PATH,
+            MAILBOX_ID);
         testee.event(update);
         testee.setSilentFlagChanges(true);
         testee.event(update);
@@ -226,7 +232,8 @@ public class MailboxEventAnalyserTest {
                 .oldFlags(new Flags())
                 .newFlags(new Flags())
                 .build()),
-            MAILBOX_PATH);
+            MAILBOX_PATH,
+            MAILBOX_ID);
         testee.event(update);
         testee.setSilentFlagChanges(true);
         testee.event(update);
@@ -244,7 +251,8 @@ public class MailboxEventAnalyserTest {
                 .oldFlags(new Flags())
                 .newFlags(new Flags(Flags.Flag.RECENT))
                 .build()),
-            MAILBOX_PATH);
+            MAILBOX_PATH,
+            MAILBOX_ID);
         testee.event(update);
 
         assertThat(testee.flagUpdateUids().iterator()).isEmpty();


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

Reply via email to