JAMES-1854 Refactor SievePoster

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

Branch: refs/heads/master
Commit: 6a2d1881a75c0b9d431f00d5caeeabf80dce3b20
Parents: 27517fd
Author: Benoit Tellier <[email protected]>
Authored: Fri Nov 18 13:24:38 2016 +0700
Committer: Benoit Tellier <[email protected]>
Committed: Wed Nov 23 18:19:30 2016 +0700

----------------------------------------------------------------------
 .../mailet/base/test/FakeMailContext.java       |  10 ++
 .../mailets/jsieve/delivery/SievePoster.java    |  21 ++-
 .../james/transport/mailets/BounceTest.java     |   4 +-
 .../mailets/delivery/MailDispatcherTest.java    |   4 +-
 .../mailets/delivery/SieveIntegrationTest.java  | 176 +++++++++----------
 .../managesieve/ManageSieveMailetTestCase.java  |   4 +-
 6 files changed, 120 insertions(+), 99 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/6a2d1881/mailet/base/src/test/java/org/apache/mailet/base/test/FakeMailContext.java
----------------------------------------------------------------------
diff --git 
a/mailet/base/src/test/java/org/apache/mailet/base/test/FakeMailContext.java 
b/mailet/base/src/test/java/org/apache/mailet/base/test/FakeMailContext.java
index 86872df..d6a4516 100644
--- a/mailet/base/src/test/java/org/apache/mailet/base/test/FakeMailContext.java
+++ b/mailet/base/src/test/java/org/apache/mailet/base/test/FakeMailContext.java
@@ -40,6 +40,7 @@ import org.slf4j.Logger;
 import com.google.common.base.MoreObjects;
 import com.google.common.base.Objects;
 import com.google.common.base.Optional;
+import com.google.common.base.Preconditions;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.Lists;
@@ -51,6 +52,10 @@ public class FakeMailContext implements MailetContext {
         return new Builder();
     }
 
+    public static SentMail.Builder sentMailBuilder() {
+        return new SentMail.Builder();
+    }
+
     public static FakeMailContext defaultContext() {
         return builder().build();
     }
@@ -88,6 +93,11 @@ public class FakeMailContext implements MailetContext {
                 return this;
             }
 
+            public Builder recipient(MailAddress recipient) {
+                Preconditions.checkNotNull(recipient);
+                return recipients(ImmutableList.of(recipient));
+            }
+
             public Builder message(MimeMessage mimeMessage) {
                 this.msg = mimeMessage;
                 return this;

http://git-wip-us.apache.org/repos/asf/james-project/blob/6a2d1881/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/jsieve/delivery/SievePoster.java
----------------------------------------------------------------------
diff --git 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/jsieve/delivery/SievePoster.java
 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/jsieve/delivery/SievePoster.java
index 7a71930..9717df5 100644
--- 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/jsieve/delivery/SievePoster.java
+++ 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/jsieve/delivery/SievePoster.java
@@ -48,14 +48,15 @@ public class SievePoster implements Poster {
         } else {
             String scheme = url.substring(0, endOfScheme);
             if (scheme.equals("mailbox")) {
-                handleMailboxProtocol(url, mail, endOfScheme);
+                UserAndPath userAndPath = retrieveUserAndPath(url, 
endOfScheme);
+                mailboxAppender.appendAndUseSlashAsSeparator(mail, 
userAndPath.user, userAndPath.path, folder);
             } else {
                 throw new MessagingException("Unsupported protocol");
             }
         }
     }
 
-    private void handleMailboxProtocol(String url, MimeMessage mail, int 
endOfScheme) throws MessagingException {
+    private UserAndPath retrieveUserAndPath(String url, int endOfScheme) 
throws MessagingException {
         int startOfUser = endOfScheme + 3;
         int endOfUser = url.indexOf('@', startOfUser);
         int startOfHost = endOfUser + 1;
@@ -65,10 +66,10 @@ public class SievePoster implements Poster {
             throw new MessagingException("Shared mailbox is not supported");
         } else {
             String host = url.substring(startOfHost, endOfHost);
-            String user = parseUser(url, startOfUser, endOfUser, host);
+            String user = retrieveUser(url, startOfUser, endOfUser, host);
             String urlPath = parseUrlPath(url, endOfHost);
 
-            mailboxAppender.appendAndUseSlashAsSeparator(mail, user, urlPath, 
folder);
+            return new UserAndPath(user, urlPath);
         }
     }
 
@@ -81,7 +82,7 @@ public class SievePoster implements Poster {
         }
     }
 
-    private String parseUser(String url, int startOfUser, int endOfUser, 
String host) throws MessagingException {
+    private String retrieveUser(String url, int startOfUser, int endOfUser, 
String host) throws MessagingException {
         // lowerCase the user - see
         // https://issues.apache.org/jira/browse/JAMES-1369
         String user = url.substring(startOfUser, endOfUser).toLowerCase();
@@ -92,4 +93,14 @@ public class SievePoster implements Poster {
             throw new MessagingException("Unable to accessUsersRepository", e);
         }
     }
+
+    private static class UserAndPath {
+        private final String user;
+        private final String path;
+
+        public UserAndPath(String user, String path) {
+            this.user = user;
+            this.path = path;
+        }
+    }
 }

http://git-wip-us.apache.org/repos/asf/james-project/blob/6a2d1881/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/BounceTest.java
----------------------------------------------------------------------
diff --git 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/BounceTest.java
 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/BounceTest.java
index f2724d4..afe2149 100644
--- 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/BounceTest.java
+++ 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/BounceTest.java
@@ -77,8 +77,8 @@ public class BounceTest {
 
         bounce.service(mail);
 
-        FakeMailContext.SentMail expected = new 
FakeMailContext.SentMail.Builder()
-            .recipients(Lists.newArrayList(senderMailAddress))
+        FakeMailContext.SentMail expected = FakeMailContext.sentMailBuilder()
+            .recipient(senderMailAddress)
             .build();
         assertThat(fakeMailContext.getSentMails()).containsOnly(expected);
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/6a2d1881/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/MailDispatcherTest.java
----------------------------------------------------------------------
diff --git 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/MailDispatcherTest.java
 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/MailDispatcherTest.java
index 2a1e923..3c70b96 100644
--- 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/MailDispatcherTest.java
+++ 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/MailDispatcherTest.java
@@ -159,9 +159,9 @@ public class MailDispatcherTest {
         testee.dispatch(mail);
 
         List<FakeMailContext.SentMail> actual = fakeMailContext.getSentMails();
-        FakeMailContext.SentMail expected = new 
FakeMailContext.SentMail.Builder()
+        FakeMailContext.SentMail expected = FakeMailContext.sentMailBuilder()
             .sender(MailAddressFixture.OTHER_AT_JAMES)
-            .recipients(ImmutableList.of(MailAddressFixture.ANY_AT_JAMES))
+            .recipient(MailAddressFixture.ANY_AT_JAMES)
             .state(Mail.ERROR).build();
         assertThat(actual).containsOnly(expected);
         assertThat(IOUtils.toString(actual.get(0).getMsg().getInputStream(), 
Charsets.UTF_8))

http://git-wip-us.apache.org/repos/asf/james-project/blob/6a2d1881/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveIntegrationTest.java
----------------------------------------------------------------------
diff --git 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveIntegrationTest.java
 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveIntegrationTest.java
index 9582add..c3071cc 100644
--- 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveIntegrationTest.java
+++ 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveIntegrationTest.java
@@ -122,7 +122,7 @@ public class SieveIntegrationTest {
         when(resourceLocator.get(RECEIVER_DOMAIN_COM)).thenThrow(new 
ScriptNotFoundException());
         final MessageManager messageManager = prepareMessageManagerOn(new 
MailboxPath("#private", RECEIVER_DOMAIN_COM, "INBOX"));
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -134,7 +134,7 @@ public class SieveIntegrationTest {
         when(resourceLocator.get("receiver")).thenThrow(new 
ScriptNotFoundException());
         final MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -144,7 +144,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/keep.script");
         final MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -153,7 +153,7 @@ public class SieveIntegrationTest {
     public void discardScriptShouldWork() throws Exception {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/discard.script");
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verifyNoMoreInteractions(mailboxManager);
     }
@@ -163,7 +163,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/fileinto.script");
         final MessageManager messageManager = prepareMessageManagerOn(new 
MailboxPath("#private", "receiver", "INBOX.any"));
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -173,7 +173,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/allofAllFalse.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -183,7 +183,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/allofOneFalse.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -193,7 +193,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/allofAllTrue.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -203,7 +203,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/anyofAllFalse.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -213,7 +213,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/false.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -223,7 +223,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/true.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -233,7 +233,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/notFalse.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -243,7 +243,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/notTrue.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -253,7 +253,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/anyofOneFalse.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -263,7 +263,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/anyofAllTrue.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -273,7 +273,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/stop.script");
         final MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -283,7 +283,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/header.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -294,7 +294,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubject("JAMES-1620 revolution");
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -306,7 +306,7 @@ public class SieveIntegrationTest {
 
         FakeMail mail = createMail();
         mail.setMessageSize(100);
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -318,7 +318,7 @@ public class SieveIntegrationTest {
 
         FakeMail mail = createMail();
         mail.setMessageSize(100);
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -330,7 +330,7 @@ public class SieveIntegrationTest {
 
         FakeMail mail = createMail();
         mail.setMessageSize(1000);
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -342,7 +342,7 @@ public class SieveIntegrationTest {
 
         FakeMail mail = createMail();
         mail.setMessageSize(1000);
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -353,7 +353,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Cc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -365,7 +365,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Cc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -377,7 +377,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Cc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -389,7 +389,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Cc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -400,7 +400,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Cc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -411,7 +411,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Bcc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -422,7 +422,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Bcc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -433,7 +433,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Bcc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -442,12 +442,12 @@ public class SieveIntegrationTest {
     public void redirectShouldWork() throws Exception {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/redirect.script");
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verifyZeroInteractions(mailboxManager);
-        FakeMailContext.SentMail expectedSentMail = new 
FakeMailContext.SentMail.Builder()
+        FakeMailContext.SentMail expectedSentMail = 
FakeMailContext.sentMailBuilder()
             .sender(new MailAddress("[email protected]"))
-            .recipients(Lists.newArrayList(new 
MailAddress("[email protected]")))
+            .recipient(new MailAddress("[email protected]"))
             .build();
         assertThat(fakeMailContext.getSentMails())
             .containsExactly(expectedSentMail);
@@ -459,7 +459,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Resend-From", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -470,7 +470,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Cc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -481,7 +481,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Cc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -492,7 +492,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Cc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -503,7 +503,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Cc", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -514,7 +514,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("From", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -525,7 +525,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("From", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -536,7 +536,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("From", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -547,7 +547,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Resent-To", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -558,7 +558,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("To", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -569,7 +569,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("To", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -580,7 +580,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("To", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -591,7 +591,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("To", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -602,7 +602,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Sender", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -613,7 +613,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Sender", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -624,7 +624,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Sender", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -635,7 +635,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("From", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -646,7 +646,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Resend-From", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -657,7 +657,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Resend-From", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -668,7 +668,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Resend-From", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -679,7 +679,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("To", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -690,7 +690,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Resend-To", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -701,7 +701,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Resend-To", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -712,7 +712,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("Resend-To", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -723,7 +723,7 @@ public class SieveIntegrationTest {
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
         FakeMail mail = createMailWithSubjectAndHeaders("Default", new 
Header("From", "[email protected]"));
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -733,7 +733,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/envelopeFromOtherSender.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -743,7 +743,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/envelopeTo.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -753,7 +753,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/envelopeToOtherReceiver.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -763,7 +763,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/bodyRawInvalid.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -773,7 +773,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/bodyRawMatch.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -783,7 +783,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/bodyContentMatch.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -793,7 +793,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/bodyContentInvalid.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -803,7 +803,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/bodyContentWrongContentType.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -813,7 +813,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/bodyTextInvalid.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(NOT_SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -823,7 +823,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/bodyTextMatch.script");
         final MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
     }
@@ -833,7 +833,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/doubleVacation.script");
         MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
         assertThat(fakeMailContext.getSentMails()).isEmpty();
@@ -844,12 +844,12 @@ public class SieveIntegrationTest {
         
prepareTestUsingScript("org/apache/james/transport/mailets/delivery/vacationReason.script");
         MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
-        FakeMailContext.SentMail expectedSentMail = new 
FakeMailContext.SentMail.Builder()
+        FakeMailContext.SentMail expectedSentMail = 
FakeMailContext.sentMailBuilder()
             .sender(new MailAddress(RECEIVER_DOMAIN_COM))
-            .recipients(Lists.newArrayList(new MailAddress("[email protected]")))
+            .recipient(new MailAddress("[email protected]"))
             .build();
         
assertThat(fakeMailContext.getSentMails()).containsExactly(expectedSentMail);
     }
@@ -861,7 +861,7 @@ public class SieveIntegrationTest {
         Mail mail = createMail();
         mail.getMessage().addHeader("List-Id", "0123456789");
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), mail);
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), mail);
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
         assertThat(fakeMailContext.getSentMails()).isEmpty();
@@ -872,7 +872,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScriptAndDates("org/apache/james/transport/mailets/delivery/vacationReason.script",
 DATE_OLD, DATE_NEW);
         MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
         assertThat(fakeMailContext.getSentMails()).isEmpty();
@@ -883,7 +883,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScriptAndDates("org/apache/james/transport/mailets/delivery/vacationReasonAndFileInto.script",
 DATE_OLD, DATE_NEW);
         MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
         assertThat(fakeMailContext.getSentMails()).isEmpty();
@@ -894,7 +894,7 @@ public class SieveIntegrationTest {
         
prepareTestUsingScriptAndDates("org/apache/james/transport/mailets/delivery/vacationDaysReason.script",
 DATE_DEFAULT, DATE_NEW);
         MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
         assertThat(fakeMailContext.getSentMails()).isEmpty();
@@ -905,12 +905,12 @@ public class SieveIntegrationTest {
         
prepareTestUsingScriptAndDates("org/apache/james/transport/mailets/delivery/vacationDaysReason.script",
 DATE_CLOSE, DATE_NEW);
         MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
-        FakeMailContext.SentMail expectedSentMail = new 
FakeMailContext.SentMail.Builder()
+        FakeMailContext.SentMail expectedSentMail = 
FakeMailContext.sentMailBuilder()
             .sender(new MailAddress(RECEIVER_DOMAIN_COM))
-            .recipients(Lists.newArrayList(new MailAddress("[email protected]")))
+            .recipient(new MailAddress("[email protected]"))
             .build();
         
assertThat(fakeMailContext.getSentMails()).containsExactly(expectedSentMail);
     }
@@ -920,12 +920,12 @@ public class SieveIntegrationTest {
         
prepareTestUsingScriptAndDates("org/apache/james/transport/mailets/delivery/vacationReasonAndFileInto.script",
 DATE_DEFAULT, DATE_NEW);
         MessageManager messageManager = 
prepareMessageManagerOn(SELECTED_MAILBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
-        FakeMailContext.SentMail expectedSentMail = new 
FakeMailContext.SentMail.Builder()
+        FakeMailContext.SentMail expectedSentMail = 
FakeMailContext.sentMailBuilder()
             .sender(new MailAddress(RECEIVER_DOMAIN_COM))
-            .recipients(Lists.newArrayList(new MailAddress("[email protected]")))
+            .recipient(new MailAddress("[email protected]"))
             .build();
         
assertThat(fakeMailContext.getSentMails()).containsExactly(expectedSentMail);
     }
@@ -935,12 +935,12 @@ public class SieveIntegrationTest {
         
prepareTestUsingScriptAndDates("org/apache/james/transport/mailets/delivery/vacationSubjectFromReason.script",
 DATE_DEFAULT, DATE_NEW);
         MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
-        FakeMailContext.SentMail expectedSentMail = new 
FakeMailContext.SentMail.Builder()
+        FakeMailContext.SentMail expectedSentMail = 
FakeMailContext.sentMailBuilder()
             .sender(new MailAddress("[email protected]"))
-            .recipients(Lists.newArrayList(new MailAddress("[email protected]")))
+            .recipient(new MailAddress("[email protected]"))
             .build();
         
assertThat(fakeMailContext.getSentMails()).containsExactly(expectedSentMail);
     }
@@ -950,12 +950,12 @@ public class SieveIntegrationTest {
         
prepareTestUsingScriptAndDates("org/apache/james/transport/mailets/delivery/vacationDaysAddressesReason.script",
 DATE_CLOSE, DATE_NEW);
         MessageManager messageManager = prepareMessageManagerOn(INBOX);
 
-        testee.storeMail(sender, new MailAddress(RECEIVER_DOMAIN_COM), 
createMail());
+        testee.storeMail(new MailAddress(RECEIVER_DOMAIN_COM), createMail());
 
         verify(messageManager).appendMessage(any(InputStream.class), 
any(Date.class), any(MailboxSession.class), eq(true), any(Flags.class));
-        FakeMailContext.SentMail expectedSentMail = new 
FakeMailContext.SentMail.Builder()
+        FakeMailContext.SentMail expectedSentMail = 
FakeMailContext.sentMailBuilder()
             .sender(new MailAddress(RECEIVER_DOMAIN_COM))
-            .recipients(Lists.newArrayList(new MailAddress("[email protected]")))
+            .recipient(new MailAddress("[email protected]"))
             .build();
         
assertThat(fakeMailContext.getSentMails()).containsExactly(expectedSentMail);
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/6a2d1881/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java
----------------------------------------------------------------------
diff --git 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java
 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java
index 322f699..bd05700 100644
--- 
a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java
+++ 
b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/managesieve/ManageSieveMailetTestCase.java
@@ -538,8 +538,8 @@ public class ManageSieveMailetTestCase {
     }
 
     private MimeMessage verifyHeaders(String subject) throws 
MessagingException {
-        FakeMailContext.SentMail sentMail = new 
FakeMailContext.SentMail.Builder()
-            .recipients(Lists.newArrayList(new MailAddress(USER)))
+        FakeMailContext.SentMail sentMail = FakeMailContext.sentMailBuilder()
+            .recipient(new MailAddress(USER))
             .sender(new MailAddress(SIEVE_LOCALHOST))
             .build();
         assertThat(fakeMailContext.getSentMails()).containsOnly(sentMail);


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

Reply via email to