JAMES-1874 Make constructor of UpdatedFlags private

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

Branch: refs/heads/master
Commit: 41c860c171f446ae01e9a54235003b67fafdcff3
Parents: 948b58f
Author: Benoit Tellier <[email protected]>
Authored: Mon Feb 6 09:55:55 2017 +0700
Committer: Benoit Tellier <[email protected]>
Committed: Tue Feb 7 08:57:46 2017 +0700

----------------------------------------------------------------------
 .../james/mailbox/model/UpdatedFlags.java       |   2 +-
 .../mail/CassandraMessageIdMapper.java          |  10 +-
 .../cassandra/mail/CassandraMessageMapper.java  |   7 +-
 ...hListeningMailboxMessageSearchIndexTest.java |  14 +-
 .../mailbox/hbase/mail/HBaseMessageMapper.java  |   8 +-
 .../maildir/mail/MaildirMessageMapper.java      |   7 +-
 .../dto/UpdatedFlagsDataTransferObject.java     |   7 +-
 .../store/mail/AbstractMessageMapper.java       |  10 +-
 .../james/mailbox/store/mail/MessageUtils.java  |  10 +-
 .../AbstractMessageIdManagerSideEffectTest.java |   7 +-
 .../store/MailboxEventDispatcherTest.java       | 360 +++++++++++--------
 .../store/TestMailboxSessionMapperFactory.java  |   7 +-
 .../mailbox/store/json/EventSerializerTest.java |   8 +-
 .../store/mail/model/MessageIdMapperTest.java   |  42 ++-
 .../store/mail/model/MessageMapperTest.java     |  30 +-
 .../registrations/MailboxRegistrationTest.java  |   7 +-
 .../base/MailboxEventAnalyserTest.java          | 139 ++++---
 17 files changed, 422 insertions(+), 253 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/api/src/main/java/org/apache/james/mailbox/model/UpdatedFlags.java
----------------------------------------------------------------------
diff --git 
a/mailbox/api/src/main/java/org/apache/james/mailbox/model/UpdatedFlags.java 
b/mailbox/api/src/main/java/org/apache/james/mailbox/model/UpdatedFlags.java
index 989729b..9b7a7ef 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/model/UpdatedFlags.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/model/UpdatedFlags.java
@@ -86,7 +86,7 @@ public class UpdatedFlags {
     private final Flags modifiedFlags;
     private final long modSeq;
 
-    public UpdatedFlags(MessageUid uid, long modSeq, Flags oldFlags, Flags 
newFlags) {
+    private UpdatedFlags(MessageUid uid, long modSeq, Flags oldFlags, Flags 
newFlags) {
        this.uid = uid;
        this.modSeq = modSeq;
        this.oldFlags = oldFlags;

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
----------------------------------------------------------------------
diff --git 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
index e403268..61045d1 100644
--- 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
+++ 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
@@ -210,10 +210,12 @@ public class CassandraMessageIdMapper implements 
MessageIdMapper {
             ComposedMessageIdWithMetaData composedMessageIdWithMetaData = 
pair.getRight();
             Flags oldFlags = pair.getLeft();
             return 
Stream.of(Pair.of(composedMessageIdWithMetaData.getComposedMessageId().getMailboxId(),
-                    new 
UpdatedFlags(composedMessageIdWithMetaData.getComposedMessageId().getUid(),
-                        composedMessageIdWithMetaData.getModSeq(),
-                        oldFlags,
-                        composedMessageIdWithMetaData.getFlags())));
+                    UpdatedFlags.builder()
+                        
.uid(composedMessageIdWithMetaData.getComposedMessageId().getUid())
+                        .modSeq(composedMessageIdWithMetaData.getModSeq())
+                        .oldFlags(oldFlags)
+                        .newFlags(composedMessageIdWithMetaData.getFlags())
+                        .build()));
         } catch (LightweightTransactionException e) {
             throw Throwables.propagate(e);
         } catch (MailboxDeleteDuringUpdateException e) {

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java
----------------------------------------------------------------------
diff --git 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java
 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java
index 91d600e..ff0d084 100644
--- 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java
+++ 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java
@@ -280,7 +280,12 @@ public class CassandraMessageMapper implements 
MessageMapper {
             message.setFlags(newFlags);
             message.setModSeq(modSeqProvider.nextModSeq(mailboxSession, 
mailbox));
             if (updateFlags(message, oldModSeq)) {
-                return Optional.of(new UpdatedFlags(message.getUid(), 
message.getModSeq(), oldFlags, newFlags));
+                return Optional.of(UpdatedFlags.builder()
+                    .uid(message.getUid())
+                    .modSeq(message.getModSeq())
+                    .oldFlags(oldFlags)
+                    .newFlags(newFlags)
+                    .build());
             } else {
                 return Optional.empty();
             }

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMailboxMessageSearchIndexTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMailboxMessageSearchIndexTest.java
 
b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMailboxMessageSearchIndexTest.java
index a9ea500..3efe045 100644
--- 
a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMailboxMessageSearchIndexTest.java
+++ 
b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/events/ElasticSearchListeningMailboxMessageSearchIndexTest.java
@@ -195,7 +195,12 @@ public class 
ElasticSearchListeningMailboxMessageSearchIndexTest {
 
         Flags flags = new Flags();
         MessageUid messageUid = MessageUid.of(1);
-        UpdatedFlags updatedFlags = new UpdatedFlags(messageUid, MODSEQ, 
flags, flags);
+        UpdatedFlags updatedFlags = UpdatedFlags.builder()
+            .uid(messageUid)
+            .modSeq(MODSEQ)
+            .oldFlags(flags)
+            .newFlags(flags)
+            .build();
         TestId mailboxId = TestId.of(12);
 
         expectLastCall();
@@ -218,7 +223,12 @@ public class 
ElasticSearchListeningMailboxMessageSearchIndexTest {
         Mailbox mailbox = control.createMock(Mailbox.class);
         Flags flags = new Flags();
         MessageUid messageUid = MessageUid.of(1);
-        UpdatedFlags updatedFlags = new UpdatedFlags(messageUid, MODSEQ, 
flags, flags);
+        UpdatedFlags updatedFlags = UpdatedFlags.builder()
+            .uid(messageUid)
+            .modSeq(MODSEQ)
+            .oldFlags(flags)
+            .newFlags(flags)
+            .build();
         TestId mailboxId = TestId.of(12);
 
         expectLastCall();

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/hbase/src/main/java/org/apache/james/mailbox/hbase/mail/HBaseMessageMapper.java
----------------------------------------------------------------------
diff --git 
a/mailbox/hbase/src/main/java/org/apache/james/mailbox/hbase/mail/HBaseMessageMapper.java
 
b/mailbox/hbase/src/main/java/org/apache/james/mailbox/hbase/mail/HBaseMessageMapper.java
index dba79fb..411b15d 100644
--- 
a/mailbox/hbase/src/main/java/org/apache/james/mailbox/hbase/mail/HBaseMessageMapper.java
+++ 
b/mailbox/hbase/src/main/java/org/apache/james/mailbox/hbase/mail/HBaseMessageMapper.java
@@ -551,8 +551,12 @@ public class HBaseMessageMapper extends 
NonTransactionalMapper implements Messag
                     messages.flushCommits();
                 }
 
-                UpdatedFlags uFlags = new UpdatedFlags(member.getUid(), 
member.getModSeq(), originalFlags, newFlags);
-                updatedFlags.add(uFlags);
+                updatedFlags.add(UpdatedFlags.builder()
+                    .uid(member.getUid())
+                    .modSeq(member.getModSeq())
+                    .newFlags(newFlags)
+                    .oldFlags(originalFlags)
+                    .build());
             }
         } catch (IOException e) {
             throw new MailboxException("Error setting flags for messages in " 
+ mailbox, e);

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java
----------------------------------------------------------------------
diff --git 
a/mailbox/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java
 
b/mailbox/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java
index d00220a..4867dde 100644
--- 
a/mailbox/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java
+++ 
b/mailbox/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java
@@ -192,7 +192,12 @@ public class MaildirMessageMapper extends 
AbstractMessageMapper {
                     }
                     member.setModSeq(modSeq);
 
-                    updatedFlags.add(new UpdatedFlags(member.getUid(), modSeq, 
originalFlags, newFlags));
+                    updatedFlags.add(UpdatedFlags.builder()
+                        .uid(member.getUid())
+                        .modSeq(member.getModSeq())
+                        .newFlags(newFlags)
+                        .oldFlags(originalFlags)
+                        .build());
 
                     MessageUid uid = member.getUid();
                     folder.update(mailboxSession, uid, newMessageName);

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/store/src/main/java/org/apache/james/mailbox/store/json/event/dto/UpdatedFlagsDataTransferObject.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/json/event/dto/UpdatedFlagsDataTransferObject.java
 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/json/event/dto/UpdatedFlagsDataTransferObject.java
index ada06f6..b5cdda0 100644
--- 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/json/event/dto/UpdatedFlagsDataTransferObject.java
+++ 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/json/event/dto/UpdatedFlagsDataTransferObject.java
@@ -45,7 +45,12 @@ public class UpdatedFlagsDataTransferObject {
     }
 
     public UpdatedFlags retrieveUpdatedFlags() {
-        return new UpdatedFlags(MessageUid.of(uid), modseq, 
oldFlags.getFlags(), newFlags.getFlags());
+        return UpdatedFlags.builder()
+            .uid(MessageUid.of(uid))
+            .modSeq(modseq)
+            .oldFlags(oldFlags.getFlags())
+            .newFlags(newFlags.getFlags())
+            .build();
     }
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/AbstractMessageMapper.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/AbstractMessageMapper.java
 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/AbstractMessageMapper.java
index 006fee5..de82a8d 100644
--- 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/AbstractMessageMapper.java
+++ 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/AbstractMessageMapper.java
@@ -85,11 +85,13 @@ public abstract class AbstractMessageMapper extends 
TransactionalMapper implemen
                 member.setModSeq(modSeq);
                 save(mailbox, member);
             }
-
-            
-            UpdatedFlags uFlags = new UpdatedFlags(member.getUid(), 
member.getModSeq(), originalFlags, newFlags);
             
-            updatedFlags.add(uFlags);
+            updatedFlags.add(UpdatedFlags.builder()
+                .uid(member.getUid())
+                .modSeq(member.getModSeq())
+                .newFlags(newFlags)
+                .oldFlags(originalFlags)
+                .build());
             
         }
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/MessageUtils.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/MessageUtils.java
 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/MessageUtils.java
index 7cdcab0..9e1d958 100644
--- 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/MessageUtils.java
+++ 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/MessageUtils.java
@@ -88,10 +88,12 @@ public class MessageUtils {
                 changedFlags.add(member);
             }
 
-            UpdatedFlags uFlags = new UpdatedFlags(member.getUid(), 
member.getModSeq(), originalFlags, newFlags);
-
-            updatedFlags.add(uFlags);
-
+            updatedFlags.add(UpdatedFlags.builder()
+                .uid(member.getUid())
+                .modSeq(member.getModSeq())
+                .newFlags(newFlags)
+                .oldFlags(originalFlags)
+                .build());
         }
 
         return new MessageChangedFlags(updatedFlags.build().iterator(), 
changedFlags.build());

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java
index ccf3aae..ec2dac1 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/AbstractMessageIdManagerSideEffectTest.java
@@ -288,7 +288,12 @@ public abstract class 
AbstractMessageIdManagerSideEffectTest {
         MessageResult messageResult = messages.get(0);
         MessageUid messageUid = messageResult.getUid();
         long modSeq = messageResult.getModSeq();
-        UpdatedFlags updatedFlags = new UpdatedFlags(messageUid, modSeq, 
FLAGS, newFlags);
+        UpdatedFlags updatedFlags = UpdatedFlags.builder()
+            .uid(messageUid)
+            .modSeq(modSeq)
+            .oldFlags(FLAGS)
+            .newFlags(newFlags)
+            .build();
 
         verify(dispatcher, times(1)).flagsUpdated(session, messageUid, 
mailbox2, updatedFlags);
         verifyNoMoreInteractions(dispatcher);

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java
index 41140dd..552ac21 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/MailboxEventDispatcherTest.java
@@ -19,18 +19,13 @@
 
 package org.apache.james.mailbox.store;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.assertj.core.api.Assertions.assertThat;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
-import java.util.Arrays;
-import java.util.Iterator;
-
 import javax.mail.Flags;
 
+import org.apache.james.mailbox.FlagsBuilder;
 import org.apache.james.mailbox.MailboxListener;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageUid;
@@ -40,18 +35,25 @@ import org.apache.james.mailbox.model.UpdatedFlags;
 import org.apache.james.mailbox.store.event.MailboxEventDispatcher;
 import org.apache.james.mailbox.store.mail.model.Mailbox;
 import org.apache.james.mailbox.util.EventCollector;
+import org.assertj.core.api.Condition;
 import org.junit.Before;
 import org.junit.Test;
 
+import com.google.common.collect.ImmutableList;
+
 public class MailboxEventDispatcherTest {
     private static final int sessionId = 10;
+    private static final int MOD_SEQ = -1;
+    public static final Condition<MailboxListener.Event> 
INSTANCE_OF_EVENT_FLAGS_UPDATED = new Condition<MailboxListener.Event>() {
+        @Override
+        public boolean matches(MailboxListener.Event event) {
+            return event instanceof MailboxListener.FlagsUpdated;
+        }
+    };
 
     private MailboxEventDispatcher dispatcher;
-
     private EventCollector collector;
-
     private MessageResult result;
-
     private Mailbox mailbox;
 
     private MailboxSession session = new MockMailboxSession("test") {
@@ -78,220 +80,286 @@ public class MailboxEventDispatcherTest {
 
     @Test
     public void testShouldReturnNoChangesWhenSystemFlagsUnchanged() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1,  new Flags(
-                Flags.Flag.DELETED), new Flags(Flags.Flag.DELETED))));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags(Flags.Flag.DELETED))
+                .oldFlags(new Flags(Flags.Flag.DELETED))
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertFalse(iterator.hasNext());
+        
assertThat(event.getUpdatedFlags().get(0).systemFlagIterator()).isEmpty();
     }
 
     @Test
     public void testShouldShowAnsweredAdded() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(),
-                new Flags(Flags.Flag.ANSWERED))));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(
+                UpdatedFlags.builder()
+                    .uid(result.getUid())
+                    .modSeq(MOD_SEQ)
+                    .newFlags(new Flags(Flags.Flag.ANSWERED))
+                    .oldFlags(new Flags())
+                    .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.ANSWERED, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.ANSWERED);
     }
 
     @Test
     public void testShouldShowAnsweredRemoved() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(
-                Flags.Flag.ANSWERED), new Flags())));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(
+                UpdatedFlags.builder()
+                    .uid(result.getUid())
+                    .modSeq(MOD_SEQ)
+                    .newFlags(new Flags(Flags.Flag.ANSWERED))
+                    .oldFlags(new Flags())
+                    .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.ANSWERED, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.ANSWERED);
     }
 
     @Test
     public void testShouldShowDeletedAdded() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(),
-                new Flags(Flags.Flag.DELETED))));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags())
+                .oldFlags(new Flags(Flags.Flag.DELETED))
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.DELETED, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.DELETED);
     }
 
     @Test
     public void testShouldShowDeletedRemoved() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(
-                Flags.Flag.DELETED), new Flags())));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags(Flags.Flag.DELETED))
+                .oldFlags(new Flags())
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.DELETED, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.DELETED);
     }
 
     @Test
     public void testShouldShowDraftAdded() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(),
-                new Flags(Flags.Flag.DRAFT))));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags())
+                .oldFlags(new Flags(Flags.Flag.DRAFT))
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.DRAFT, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.DRAFT);
     }
 
     @Test
     public void testShouldShowDraftRemoved() {
-        dispatcher.flagsUpdated(session,Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(
-                Flags.Flag.DRAFT), new Flags())));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags())
+                .oldFlags(new Flags(Flags.Flag.DRAFT))
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.DRAFT, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.DRAFT);
     }
 
     @Test
     public void testShouldShowFlaggedAdded() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(),
-                new Flags(Flags.Flag.FLAGGED))));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags(Flags.Flag.FLAGGED))
+                .oldFlags(new Flags())
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.FLAGGED, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.FLAGGED);
     }
 
     @Test
     public void testShouldShowFlaggedRemoved() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(
-                Flags.Flag.FLAGGED), new Flags())));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags())
+                .oldFlags(new Flags(Flags.Flag.FLAGGED))
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.FLAGGED, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.FLAGGED);
     }
 
     @Test
     public void testShouldShowRecentAdded() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(),
-                new Flags(Flags.Flag.RECENT))));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags(Flags.Flag.RECENT))
+                .oldFlags(new Flags())
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.RECENT, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.RECENT);
     }
 
     @Test
     public void testShouldShowRecentRemoved() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(
-                Flags.Flag.RECENT), new Flags())));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags())
+                .oldFlags(new Flags(Flags.Flag.RECENT))
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.RECENT, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.RECENT);
     }
 
     @Test
     public void testShouldShowSeenAdded() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(),
-                new Flags(Flags.Flag.SEEN))));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags(Flags.Flag.SEEN))
+                .oldFlags(new Flags())
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.SEEN, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.SEEN);
     }
 
     @Test
     public void testShouldShowSeenRemoved() {
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, new Flags(
-                Flags.Flag.SEEN), new Flags())));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(new Flags())
+                .oldFlags(new Flags(Flags.Flag.SEEN))
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
-                .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.SEEN, iterator.next());
-        assertFalse(iterator.hasNext());
+            .get(0);
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.SEEN);
     }
 
     @Test
     public void testShouldShowMixedChanges() {
-        Flags originals = new Flags();
-        originals.add(Flags.Flag.DRAFT);
-        originals.add(Flags.Flag.RECENT);
-        Flags updated = new Flags();
-        updated.add(Flags.Flag.ANSWERED);
-        updated.add(Flags.Flag.DRAFT);
-        updated.add(Flags.Flag.SEEN);
-
-        dispatcher.flagsUpdated(session, Arrays.asList(result.getUid()), 
mailbox, Arrays.asList(new UpdatedFlags(result.getUid(), -1, originals, 
updated)));
-        assertEquals(1, collector.getEvents().size());
-        assertTrue(collector.getEvents().get(0) instanceof 
MailboxListener.FlagsUpdated);
+        dispatcher.flagsUpdated(session,
+            ImmutableList.of(result.getUid()),
+            mailbox,
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(result.getUid())
+                .modSeq(MOD_SEQ)
+                .newFlags(FlagsBuilder.builder()
+                    .add(Flags.Flag.ANSWERED, Flags.Flag.DRAFT, 
Flags.Flag.SEEN)
+                    .build())
+                .oldFlags(FlagsBuilder.builder()
+                    .add(Flags.Flag.DRAFT, Flags.Flag.RECENT)
+                    .build())
+                .build()));
+
+        assertThat(collector.getEvents()).hasSize(1)
+            .are(INSTANCE_OF_EVENT_FLAGS_UPDATED);
         MailboxListener.FlagsUpdated event = (MailboxListener.FlagsUpdated) 
collector.getEvents()
                 .get(0);
-        Iterator<Flags.Flag> iterator = 
event.getUpdatedFlags().get(0).systemFlagIterator();
-        assertNotNull(iterator);
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.ANSWERED, iterator.next());
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.RECENT, iterator.next());
-        assertTrue(iterator.hasNext());
-        assertEquals(Flags.Flag.SEEN, iterator.next());
-        assertFalse(iterator.hasNext());
+        assertThat(event.getUpdatedFlags().get(0).systemFlagIterator())
+            .containsOnly(Flags.Flag.SEEN, Flags.Flag.RECENT, 
Flags.Flag.ANSWERED);
     }
 }

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/store/src/test/java/org/apache/james/mailbox/store/TestMailboxSessionMapperFactory.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/TestMailboxSessionMapperFactory.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/TestMailboxSessionMapperFactory.java
index e90e982..98e51f4 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/TestMailboxSessionMapperFactory.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/TestMailboxSessionMapperFactory.java
@@ -345,7 +345,12 @@ public class TestMailboxSessionMapperFactory extends 
MailboxSessionMapperFactory
             public Map.Entry<MailboxId, UpdatedFlags> apply(MailboxMessage 
input) {
                 
Preconditions.checkState(updateMode.equals(MessageManager.FlagsUpdateMode.ADD));
                 return new AbstractMap.SimpleEntry<MailboxId, 
UpdatedFlags>(input.getMailboxId(),
-                    new UpdatedFlags(input.getUid(), input.getModSeq(), 
input.createFlags(), newState));
+                    UpdatedFlags.builder()
+                        .uid(input.getUid())
+                        .modSeq(input.getModSeq())
+                        .newFlags(newState)
+                        .oldFlags(input.createFlags())
+                        .build());
             }
         };
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/store/src/test/java/org/apache/james/mailbox/store/json/EventSerializerTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/json/EventSerializerTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/json/EventSerializerTest.java
index 6d92eff..900225a 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/json/EventSerializerTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/json/EventSerializerTest.java
@@ -48,12 +48,18 @@ public abstract class EventSerializerTest {
 
     public static final MessageUid UID = MessageUid.of(42);
     public static final long MOD_SEQ = 24L;
-    public static final UpdatedFlags UPDATED_FLAGS = new UpdatedFlags(UID, 
MOD_SEQ, new Flags(), new Flags(Flags.Flag.SEEN));
     public static final Flags FLAGS = new Flags();
+    public static final UpdatedFlags UPDATED_FLAGS = UpdatedFlags.builder()
+        .uid(UID)
+        .modSeq(MOD_SEQ)
+        .oldFlags(FLAGS)
+        .newFlags(new Flags(Flags.Flag.SEEN))
+        .build();
     public static final long SIZE = 45L;
     private static final MessageId MESSAGE_ID = new 
TestMessageId.Factory().generate();
     public static final SimpleMessageMetaData MESSAGE_META_DATA = new 
SimpleMessageMetaData(UID, MOD_SEQ, FLAGS, SIZE, null, MESSAGE_ID);
     public static final MailboxPath FROM = new MailboxPath("namespace", 
"user", "name");
+
     private EventSerializer serializer;
     private EventFactory eventFactory;
     private MailboxSession mailboxSession;

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageIdMapperTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageIdMapperTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageIdMapperTest.java
index 0770ec1..b5c1070 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageIdMapperTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageIdMapperTest.java
@@ -329,7 +329,12 @@ public class MessageIdMapperTest<T extends MapperProvider> 
{
         Map<MailboxId, UpdatedFlags> flags = sut.setFlags(messageId, 
ImmutableList.of(message1.getMailboxId()), newFlags, FlagsUpdateMode.ADD);
 
         long modSeq = mapperProvider.highestModSeq(benwaInboxMailbox);
-        UpdatedFlags expectedUpdatedFlags = new 
UpdatedFlags(message1.getUid(), modSeq, new Flags(), newFlags);
+        UpdatedFlags expectedUpdatedFlags = UpdatedFlags.builder()
+            .uid(message1.getUid())
+            .modSeq(modSeq)
+            .oldFlags(new Flags())
+            .newFlags(newFlags)
+            .build();
         
assertThat(flags).containsOnly(MapEntry.entry(benwaInboxMailbox.getMailboxId(), 
expectedUpdatedFlags));
     }
 
@@ -351,7 +356,12 @@ public class MessageIdMapperTest<T extends MapperProvider> 
{
         Map<MailboxId, UpdatedFlags> flags = sut.setFlags(messageId, 
ImmutableList.of(message1.getMailboxId()), newFlags, FlagsUpdateMode.REPLACE);
 
         long modSeq = mapperProvider.highestModSeq(benwaInboxMailbox);
-        UpdatedFlags expectedUpdatedFlags = new 
UpdatedFlags(message1.getUid(), modSeq, messageFlags, newFlags);
+        UpdatedFlags expectedUpdatedFlags = UpdatedFlags.builder()
+            .uid(message1.getUid())
+            .modSeq(modSeq)
+            .oldFlags(messageFlags)
+            .newFlags(newFlags)
+            .build();
 
         
assertThat(flags).contains(MapEntry.entry(benwaInboxMailbox.getMailboxId(), 
expectedUpdatedFlags));
     }
@@ -374,7 +384,12 @@ public class MessageIdMapperTest<T extends MapperProvider> 
{
         Map<MailboxId, UpdatedFlags> flags = sut.setFlags(messageId, 
ImmutableList.of(message1.getMailboxId()), newFlags, FlagsUpdateMode.REMOVE);
 
         long modSeq = mapperProvider.highestModSeq(benwaInboxMailbox);
-        UpdatedFlags expectedUpdatedFlags = new 
UpdatedFlags(message1.getUid(), modSeq, messageFlags, new 
Flags(Flags.Flag.RECENT));
+        UpdatedFlags expectedUpdatedFlags = UpdatedFlags.builder()
+            .uid(message1.getUid())
+            .modSeq(modSeq)
+            .oldFlags(messageFlags)
+            .newFlags(new Flags(Flags.Flag.RECENT))
+            .build();
 
         
assertThat(flags).contains(MapEntry.entry(benwaInboxMailbox.getMailboxId(), 
expectedUpdatedFlags));
     }
@@ -440,7 +455,12 @@ public class MessageIdMapperTest<T extends MapperProvider> 
{
             .add(Flag.ANSWERED)
             .build();
         long modSeq = mapperProvider.highestModSeq(benwaInboxMailbox);
-        UpdatedFlags expectedUpdatedFlags = new 
UpdatedFlags(message1.getUid(), modSeq, initialFlags, newFlags);
+        UpdatedFlags expectedUpdatedFlags = UpdatedFlags.builder()
+            .uid(message1.getUid())
+            .modSeq(modSeq)
+            .oldFlags(initialFlags)
+            .newFlags(newFlags)
+            .build();
         
assertThat(flags).containsOnly(MapEntry.entry(benwaInboxMailbox.getMailboxId(), 
expectedUpdatedFlags));
     }
 
@@ -461,8 +481,18 @@ public class MessageIdMapperTest<T extends MapperProvider> 
{
 
         long modSeqBenwaInboxMailbox = 
mapperProvider.highestModSeq(benwaInboxMailbox);
         long modSeqBenwaWorkMailbox = 
mapperProvider.highestModSeq(benwaWorkMailbox);
-        UpdatedFlags expectedUpdatedFlags = new 
UpdatedFlags(message1.getUid(), modSeqBenwaInboxMailbox, new Flags(), newFlags);
-        UpdatedFlags expectedUpdatedFlags2 = new 
UpdatedFlags(message1InOtherMailbox.getUid(), modSeqBenwaWorkMailbox, new 
Flags(), newFlags);
+        UpdatedFlags expectedUpdatedFlags = UpdatedFlags.builder()
+            .uid(message1.getUid())
+            .modSeq(modSeqBenwaInboxMailbox)
+            .oldFlags(new Flags())
+            .newFlags(newFlags)
+            .build();
+        UpdatedFlags expectedUpdatedFlags2 = UpdatedFlags.builder()
+            .uid(message1.getUid())
+            .modSeq(modSeqBenwaWorkMailbox)
+            .oldFlags(new Flags())
+            .newFlags(newFlags)
+            .build();
         
assertThat(flags).containsOnly(MapEntry.entry(benwaInboxMailbox.getMailboxId(), 
expectedUpdatedFlags),
                 MapEntry.entry(benwaWorkMailbox.getMailboxId(), 
expectedUpdatedFlags2));
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageMapperTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageMapperTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageMapperTest.java
index 156744f..f7a315d 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageMapperTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/mail/model/MessageMapperTest.java
@@ -593,7 +593,12 @@ public class MessageMapperTest<T extends MapperProvider> {
         Iterator<UpdatedFlags> updatedFlags = 
messageMapper.updateFlags(benwaInboxMailbox, 
                 new FlagsUpdateCalculator(new Flags(Flags.Flag.FLAGGED), 
FlagsUpdateMode.REPLACE), MessageRange.one(message1.getUid()));
         assertThat(Lists.newArrayList(updatedFlags))
-            .containsOnly(new UpdatedFlags(message1.getUid(), modSeq + 1, new 
Flags(), new Flags(Flags.Flag.FLAGGED)));
+            .containsOnly(UpdatedFlags.builder()
+                .uid(message1.getUid())
+                .modSeq(modSeq + 1)
+                .oldFlags(new Flags())
+                .newFlags(new Flags(Flags.Flag.FLAGGED))
+                .build());
     }
 
     @ContractTest
@@ -602,7 +607,12 @@ public class MessageMapperTest<T extends MapperProvider> {
         messageMapper.updateFlags(benwaInboxMailbox, new 
FlagsUpdateCalculator(new Flags(Flags.Flag.FLAGGED), FlagsUpdateMode.REPLACE), 
MessageRange.one(message1.getUid()));
         long modSeq = messageMapper.getHighestModSeq(benwaInboxMailbox);
         assertThat(messageMapper.updateFlags(benwaInboxMailbox, new 
FlagsUpdateCalculator(new Flags(Flags.Flag.SEEN), FlagsUpdateMode.ADD), 
MessageRange.one(message1.getUid())))
-            .containsOnly(new UpdatedFlags(message1.getUid(), modSeq + 1, new 
Flags(Flags.Flag.FLAGGED), new FlagsBuilder().add(Flags.Flag.SEEN, 
Flags.Flag.FLAGGED).build()));
+            .containsOnly(UpdatedFlags.builder()
+                    .uid(message1.getUid())
+                    .modSeq(modSeq + 1)
+                    .oldFlags(new Flags(Flags.Flag.FLAGGED))
+                    .newFlags(new FlagsBuilder().add(Flags.Flag.SEEN, 
Flags.Flag.FLAGGED).build())
+                    .build());
     }
 
     @ContractTest
@@ -619,7 +629,13 @@ public class MessageMapperTest<T extends MapperProvider> {
         messageMapper.updateFlags(benwaInboxMailbox, new 
FlagsUpdateCalculator(new FlagsBuilder().add(Flags.Flag.FLAGGED, 
Flags.Flag.SEEN).build(), FlagsUpdateMode.REPLACE), 
MessageRange.one(message1.getUid()));
         long modSeq = messageMapper.getHighestModSeq(benwaInboxMailbox);
         assertThat(messageMapper.updateFlags(benwaInboxMailbox, new 
FlagsUpdateCalculator(new Flags(Flags.Flag.SEEN), FlagsUpdateMode.REMOVE), 
MessageRange.one(message1.getUid())))
-            .containsOnly(new UpdatedFlags(message1.getUid(), modSeq + 1, new 
FlagsBuilder().add(Flags.Flag.SEEN, Flags.Flag.FLAGGED).build(), new 
Flags(Flags.Flag.FLAGGED)));
+            .containsOnly(
+                UpdatedFlags.builder()
+                    .uid(message1.getUid())
+                    .modSeq(modSeq + 1)
+                    .oldFlags(new FlagsBuilder().add(Flags.Flag.SEEN, 
Flags.Flag.FLAGGED).build())
+                    .newFlags(new Flags(Flags.Flag.FLAGGED))
+                    .build());
     }
 
     @ContractTest
@@ -734,7 +750,13 @@ public class MessageMapperTest<T extends MapperProvider> {
         saveMessages();
         long modSeq = messageMapper.getHighestModSeq(benwaInboxMailbox);
         assertThat(messageMapper.updateFlags(benwaInboxMailbox, new 
FlagsUpdateCalculator(new Flags(USER_FLAG), FlagsUpdateMode.ADD), 
MessageRange.one(message1.getUid())))
-            .containsOnly(new UpdatedFlags(message1.getUid(), modSeq + 1, new 
Flags(), new Flags(USER_FLAG)));
+            .containsOnly(
+                UpdatedFlags.builder()
+                    .uid(message1.getUid())
+                    .modSeq(modSeq + 1)
+                    .oldFlags(new Flags())
+                    .newFlags(new Flags(USER_FLAG))
+                    .build());
     }
 
     @ContractTest

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/mailbox/tool/src/test/java/org/apache/james/mailbox/indexer/registrations/MailboxRegistrationTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/tool/src/test/java/org/apache/james/mailbox/indexer/registrations/MailboxRegistrationTest.java
 
b/mailbox/tool/src/test/java/org/apache/james/mailbox/indexer/registrations/MailboxRegistrationTest.java
index 4db7021..e965aec 100644
--- 
a/mailbox/tool/src/test/java/org/apache/james/mailbox/indexer/registrations/MailboxRegistrationTest.java
+++ 
b/mailbox/tool/src/test/java/org/apache/james/mailbox/indexer/registrations/MailboxRegistrationTest.java
@@ -91,7 +91,12 @@ public class MailboxRegistrationTest {
         MailboxListener.Event event = eventFactory.flagsUpdated(SESSION,
             Lists.newArrayList(UID),
             MAILBOX,
-            Lists.newArrayList(new UpdatedFlags(UID, MOD_SEQ, new Flags(), 
NEW_FLAGS)));
+            Lists.newArrayList(UpdatedFlags.builder()
+                .uid(UID)
+                .modSeq(MOD_SEQ)
+                .oldFlags(new Flags())
+                .newFlags(NEW_FLAGS)
+                .build()));
         mailboxRegistration.event(event);
         
assertThat(mailboxRegistration.getImpactingEvents(UID)).containsExactly(new 
FlagsMessageEvent(INBOX, UID, NEW_FLAGS));
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/41c860c1/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 abc895a..b687c53 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
@@ -26,7 +26,6 @@ import static org.junit.Assert.assertTrue;
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.util.Arrays;
 import java.util.Collection;
 import java.util.Date;
 import java.util.EnumSet;
@@ -48,7 +47,6 @@ import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageManager;
 import org.apache.james.mailbox.MessageUid;
-import org.apache.james.mailbox.exception.BadCredentialsException;
 import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.model.ComposedMessageId;
 import org.apache.james.mailbox.model.Content;
@@ -78,6 +76,8 @@ import 
org.apache.james.mailbox.store.mail.model.DefaultMessageId;
 import org.junit.Test;
 import org.slf4j.Logger;
 
+import com.google.common.collect.ImmutableList;
+
 public class MailboxEventAnalyserTest {
 
     private static final long BASE_SESSION_ID = 99;
@@ -159,7 +159,7 @@ public class MailboxEventAnalyserTest {
         }
         
         
-        public MailboxSession login(String userid, String passwd, Logger log) 
throws BadCredentialsException, MailboxException {
+        public MailboxSession login(String userid, String passwd, Logger log) 
throws MailboxException {
             throw new UnsupportedOperationException("Not implemented");
 
         }
@@ -181,13 +181,11 @@ public class MailboxEventAnalyserTest {
                 public long getMessageCount(MailboxSession mailboxSession) 
throws MailboxException {
                     return 1;
                 }
-
                 
                 public boolean isWriteable(MailboxSession session) {
                     return false;
                 }
 
-                
                 public boolean isModSeqPermanent(MailboxSession session) {
                     return false;
                 }
@@ -195,29 +193,22 @@ public class MailboxEventAnalyserTest {
                 @Override
                 public Iterator<MessageUid> search(SearchQuery searchQuery, 
MailboxSession mailboxSession) throws MailboxException {
                     throw new UnsupportedOperationException("Not implemented");
-
                 }
 
                 @Override
                 public Iterator<MessageUid> expunge(MessageRange set, 
MailboxSession mailboxSession) throws MailboxException {
                     throw new UnsupportedOperationException("Not implemented");
-
                 }
 
-                
                 @Override
                 public Map<MessageUid, Flags> setFlags(Flags flags, 
FlagsUpdateMode mode, MessageRange set, MailboxSession mailboxSession) throws 
MailboxException {
                     throw new UnsupportedOperationException("Not implemented");
-
                 }
-
                 
                 public ComposedMessageId appendMessage(InputStream msgIn, Date 
internalDate, MailboxSession mailboxSession, boolean isRecent, Flags flags) 
throws MailboxException {
                     throw new UnsupportedOperationException("Not implemented");
-
                 }
 
-                
                 public MessageResultIterator getMessages(MessageRange set, 
FetchGroup fetchGroup, MailboxSession mailboxSession) throws MailboxException {
                     return new MessageResultIterator() {
                         boolean done = false;
@@ -225,8 +216,7 @@ public class MailboxEventAnalyserTest {
                         public void remove() {
                             throw new UnsupportedOperationException("Not 
implemented");
                         }
-                        
-                        
+
                         public MessageResult next() {
                             done = true;
                             return new MessageResult() {
@@ -253,98 +243,73 @@ public class MailboxEventAnalyserTest {
                                 public long getModSeq() {
                                     return 0;
                                 }
-
                                 
                                 public Flags getFlags() {
                                     return new Flags();
                                 }
 
-                                
                                 public long getSize() {
                                     return 0;
                                 }
-
                                 
                                 public Date getInternalDate() {
                                     throw new 
UnsupportedOperationException("Not implemented");
-
                                 }
 
-                                
                                 public MimeDescriptor getMimeDescriptor() 
throws MailboxException {
                                     throw new 
UnsupportedOperationException("Not implemented");
                                 }
-
                                 
                                 public Iterator<Header> 
iterateHeaders(MimePath path) throws MailboxException {
                                     throw new 
UnsupportedOperationException("Not implemented");
-
                                 }
-
                                 
                                 public Iterator<Header> 
iterateMimeHeaders(MimePath path) throws MailboxException {
                                     throw new 
UnsupportedOperationException("Not implemented");
                                 }
-
                                 
                                 public Content getFullContent() throws 
MailboxException, IOException {
                                     throw new 
UnsupportedOperationException("Not implemented");
-
                                 }
-
                                 
                                 public Content getFullContent(MimePath path) 
throws MailboxException {
                                     throw new 
UnsupportedOperationException("Not implemented");
-
                                 }
 
-                                
                                 public Content getBody() throws 
MailboxException, IOException {
                                     throw new 
UnsupportedOperationException("Not implemented");
-
                                 }
 
-                                
                                 public Content getBody(MimePath path) throws 
MailboxException {
                                     throw new 
UnsupportedOperationException("Not implemented");
-
                                 }
 
-                                
                                 public Content getMimeBody(MimePath path) 
throws MailboxException {
                                     throw new 
UnsupportedOperationException("Not implemented");
-
                                 }
 
-                                
                                 public Headers getHeaders() throws 
MailboxException {
                                     throw new 
UnsupportedOperationException("Not implemented");
-
                                 }
                                 
                                 public List<MessageAttachment> 
getAttachments() {
                                     throw new 
UnsupportedOperationException("Not implemented");
                                 }
-                                
                             };
                         }
                         
-                        
                         public boolean hasNext() {
                             return !done;
                         }
-                        
-                        
+
                         public MailboxException getException() {
                             return null;
                         }
                     };
                 }
-
                 
                 public MetaData getMetaData(boolean resetRecent, 
MailboxSession mailboxSession, 
org.apache.james.mailbox.MessageManager.MetaData.FetchGroup fetchGroup) throws 
MailboxException {
                     throw new UnsupportedOperationException("Not implemented");
-
                 }
                 
                 public MailboxId getId() {
@@ -364,36 +329,29 @@ public class MailboxEventAnalyserTest {
         public char getDelimiter() {
             return '.';
         }
-        
-        
+
         public void deleteMailbox(MailboxPath mailboxPath, MailboxSession 
session) throws MailboxException {
             throw new UnsupportedOperationException("Not implemented");
-
         }
         
-        
-        public MailboxSession createSystemSession(String userName, Logger log) 
throws BadCredentialsException, MailboxException {
+        public MailboxSession createSystemSession(String userName, Logger log) 
throws MailboxException {
             throw new UnsupportedOperationException("Not implemented");
         }
         
-        
         public void createMailbox(MailboxPath mailboxPath, MailboxSession 
mailboxSession) throws MailboxException {
             throw new UnsupportedOperationException("Not implemented");
-            
         }
         
-        
         public List<MessageRange> copyMessages(MessageRange set, MailboxPath 
from, MailboxPath to, MailboxSession session) throws MailboxException {
             throw new UnsupportedOperationException("Not implemented");
         }
 
         public java.util.List<MessageRange> copyMessages(MessageRange set, 
MailboxId from, MailboxId to, MailboxSession session) throws MailboxException {
             throw new UnsupportedOperationException("Not implemented");
-        };
+        }
         
         public List<MessageRange> moveMessages(MessageRange set, MailboxPath 
from, MailboxPath to, MailboxSession session) throws MailboxException {
             throw new UnsupportedOperationException("Not implemented");
-
         }
 
         public boolean hasRight(MailboxPath mailboxPath, MailboxACLRight 
mailboxACLRight, MailboxSession mailboxSession) throws MailboxException {
@@ -619,7 +577,7 @@ public class MailboxEventAnalyserTest {
         
         SelectedMailboxImpl analyser = new SelectedMailboxImpl(mockManager, 
imapsession, mailboxPath);
         
-        analyser.event(new FakeMailboxListenerAdded(mSession, 
Arrays.asList(MessageUid.of(11)), mailboxPath));
+        analyser.event(new FakeMailboxListenerAdded(mSession, 
ImmutableList.of(MessageUid.of(11)), mailboxPath));
         assertTrue(analyser.isSizeChanged());
     }
 
@@ -631,7 +589,7 @@ public class MailboxEventAnalyserTest {
         
         SelectedMailboxImpl analyser = new SelectedMailboxImpl(mockManager, 
imapsession, mailboxPath);
         
-        analyser.event(new FakeMailboxListenerAdded(mSession,  
Arrays.asList(MessageUid.of(11)), mailboxPath));
+        analyser.event(new FakeMailboxListenerAdded(mSession,  
ImmutableList.of(MessageUid.of(11)), mailboxPath));
         analyser.resetEvents();
         assertFalse(analyser.isSizeChanged());
     }
@@ -644,8 +602,15 @@ public class MailboxEventAnalyserTest {
         
         SelectedMailboxImpl analyser = new SelectedMailboxImpl(mockManager, 
imapsession, mailboxPath);
         
-        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(
-                mSession,  Arrays.asList(MessageUid.of(90L)),  
Arrays.asList(new UpdatedFlags(MessageUid.of(90), -1, new Flags(), new 
Flags())), mailboxPath);
+        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(mSession,
+            ImmutableList.of(MessageUid.of(90L)),
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(MessageUid.of(90))
+                .modSeq(-1)
+                .oldFlags(new Flags())
+                .newFlags(new Flags())
+                .build()),
+            mailboxPath);
         analyser.event(update);
         assertNotNull(analyser.flagUpdateUids());
         assertFalse(analyser.flagUpdateUids().iterator().hasNext());
@@ -660,8 +625,15 @@ public class MailboxEventAnalyserTest {
         
         SelectedMailboxImpl analyser = new SelectedMailboxImpl(mockManager, 
imapsession, mailboxPath);
         
-        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(
-                new MyMailboxSession(41), Arrays.asList(uid), 
Arrays.asList(new UpdatedFlags(uid, -1, new Flags(), new 
Flags(Flags.Flag.ANSWERED))), mailboxPath);
+        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(new MyMailboxSession(41),
+            ImmutableList.of(uid),
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(uid)
+                .modSeq(-1)
+                .oldFlags(new Flags())
+                .newFlags(new Flags(Flags.Flag.ANSWERED))
+                .build()),
+            mailboxPath);
         analyser.event(update);
         final Iterator<MessageUid> iterator = 
analyser.flagUpdateUids().iterator();
         assertNotNull(iterator);
@@ -677,8 +649,15 @@ public class MailboxEventAnalyserTest {
         MyImapSession imapsession = new MyImapSession(mSession);
         SelectedMailboxImpl analyser = new SelectedMailboxImpl(mockManager, 
imapsession, mailboxPath);
         
-        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(
-                mSession, Arrays.asList(uid), Arrays.asList(new 
UpdatedFlags(uid, -1, new Flags(), new Flags(Flags.Flag.ANSWERED))), 
mailboxPath);
+        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(mSession,
+            ImmutableList.of(uid),
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(uid)
+                .modSeq(-1)
+                .oldFlags(new Flags())
+                .newFlags(new Flags(Flags.Flag.ANSWERED))
+                .build()),
+            mailboxPath);
         analyser.event(update);
         analyser.event(update);
         analyser.deselect();
@@ -695,8 +674,15 @@ public class MailboxEventAnalyserTest {
         MyImapSession imapsession = new MyImapSession(mSession);
         SelectedMailboxImpl analyser = new SelectedMailboxImpl(mockManager, 
imapsession, mailboxPath);
         
-        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(
-                new MyMailboxSession(BASE_SESSION_ID), Arrays.asList(uid), 
Arrays.asList(new UpdatedFlags(uid, -1, new Flags(), new 
Flags(Flags.Flag.ANSWERED))), mailboxPath);
+        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(new MyMailboxSession(BASE_SESSION_ID),
+            ImmutableList.of(uid),
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(uid)
+                .modSeq(-1)
+                .oldFlags(new Flags())
+                .newFlags(new Flags(Flags.Flag.ANSWERED))
+                .build()),
+            mailboxPath);
         analyser.event(update);
         analyser.setSilentFlagChanges(true);
         analyser.event(update);
@@ -715,8 +701,15 @@ public class MailboxEventAnalyserTest {
         SelectedMailboxImpl analyser = new SelectedMailboxImpl(mockManager, 
imapsession, mailboxPath);
         
         
-        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(
-                mSession, Arrays.asList(MessageUid.of(345)), Arrays.asList(new 
UpdatedFlags(MessageUid.of(345), -1, new Flags(), new Flags())), mailboxPath);
+        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(mSession,
+            ImmutableList.of(MessageUid.of(345)),
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(MessageUid.of(345))
+                .modSeq(-1)
+                .oldFlags(new Flags())
+                .newFlags(new Flags())
+                .build()),
+            mailboxPath);
         analyser.event(update);
         analyser.setSilentFlagChanges(true);
         analyser.event(update);
@@ -730,20 +723,20 @@ public class MailboxEventAnalyserTest {
         MyMailboxSession mSession = new MyMailboxSession(BASE_SESSION_ID);
         MyImapSession imapsession = new MyImapSession(mSession);
         SelectedMailboxImpl analyser = new SelectedMailboxImpl(mockManager, 
imapsession, mailboxPath);
-        
-        
-        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(
-                mSession, Arrays.asList(MessageUid.of(886)), Arrays.asList(new 
UpdatedFlags(MessageUid.of(886), -1, new Flags(), new 
Flags(Flags.Flag.RECENT))), mailboxPath);
+
+
+        final FakeMailboxListenerFlagsUpdate update = new 
FakeMailboxListenerFlagsUpdate(mSession,
+            ImmutableList.of(MessageUid.of(886)),
+            ImmutableList.of(UpdatedFlags.builder()
+                .uid(MessageUid.of(886))
+                .modSeq(-1)
+                .oldFlags(new Flags())
+                .newFlags(new Flags(Flags.Flag.RECENT))
+                .build()),
+            mailboxPath);
         analyser.event(update);
         final Iterator<MessageUid> iterator = 
analyser.flagUpdateUids().iterator();
         assertNotNull(iterator);
         assertFalse(iterator.hasNext());
     }
-
-    /**
-     * @see 
org.apache.james.mailbox.MessageManager#myRights(org.apache.james.mailbox.MailboxSession)
-     */
-    public MailboxACLRights myRights(MailboxSession session) throws 
MailboxException {
-        return null;
-    }
 }


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

Reply via email to