You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by ro...@apache.org on 2016/11/23 13:50:12 UTC

[09/46] james-project git commit: JAMES-1854 Delivery header is always the same

JAMES-1854 Delivery header is always the same


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

Branch: refs/heads/master
Commit: 375ef686ae3c6dca0a1d21df07a74e5cbf89d96c
Parents: e2550e2
Author: Benoit Tellier <bt...@linagora.com>
Authored: Thu Oct 27 16:43:27 2016 +0200
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Fri Nov 18 18:46:46 2016 +0700

----------------------------------------------------------------------
 .../mailets/delivery/LocalDelivery.java         |  1 -
 .../transport/mailets/delivery/SieveMailet.java | 56 ++++++++------------
 .../mailets/delivery/ToRecipientFolder.java     |  1 -
 .../mailets/delivery/SieveMailetTest.java       |  1 -
 4 files changed, 23 insertions(+), 36 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/375ef686/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/LocalDelivery.java
----------------------------------------------------------------------
diff --git a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/LocalDelivery.java b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/LocalDelivery.java
index 9fcc785..4412794 100644
--- a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/LocalDelivery.java
+++ b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/LocalDelivery.java
@@ -118,7 +118,6 @@ public class LocalDelivery extends GenericMailet {
             .userRepository(usersRepository)
             .resourceLocator(ResourceLocatorImpl.instanciate(usersRepository, sieveRepository))
             .consume(getInitParameter("consume", true))
-            .deliveryHeader("Delivered-To")
             .quiet(getInitParameter("quiet", false))
             .verbose(getInitParameter("verbose", false))
             .folder("INBOX")

http://git-wip-us.apache.org/repos/asf/james-project/blob/375ef686/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SieveMailet.java
----------------------------------------------------------------------
diff --git a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SieveMailet.java b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SieveMailet.java
index 14415d4..47c325d 100644
--- a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SieveMailet.java
+++ b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SieveMailet.java
@@ -68,6 +68,8 @@ import com.google.common.base.Optional;
  */
 public class SieveMailet  extends GenericMailet implements Poster {
 
+    public static final String DELIVERED_TO = "Delivered-To";
+
     public static Builder builder() {
         return new Builder();
     }
@@ -77,7 +79,6 @@ public class SieveMailet  extends GenericMailet implements Poster {
         private MailboxManager mailboxManager;
         private String folder;
         private ResourceLocator resourceLocator;
-        private String deliveryHeader;
         private boolean consume;
         private Optional<Boolean> verbose = Optional.absent();
         private Optional<Boolean> quiet = Optional.absent();
@@ -102,11 +103,6 @@ public class SieveMailet  extends GenericMailet implements Poster {
             return this;
         }
 
-        public Builder deliveryHeader(String deliveryHeader) {
-            this.deliveryHeader = deliveryHeader;
-            return this;
-        }
-
         public Builder verbose(boolean verbose) {
             this.verbose = Optional.of(verbose);
             return this;
@@ -126,7 +122,7 @@ public class SieveMailet  extends GenericMailet implements Poster {
             if (resourceLocator == null) {
                 throw new MailetException("Not initialised. Please ensure that the mailet container supports either setter or constructor injection");
             }
-            return new SieveMailet(usersRepos, mailboxManager, resourceLocator, folder, deliveryHeader, consume, verbose.or(false), quiet.or(false));
+            return new SieveMailet(usersRepos, mailboxManager, resourceLocator, folder, consume, verbose.or(false), quiet.or(false));
         }
 
     }
@@ -135,7 +131,6 @@ public class SieveMailet  extends GenericMailet implements Poster {
     private final MailboxManager mailboxManager;
     private final String folder;
     private final ResourceLocator resourceLocator;
-    private final String deliveryHeader;
     private final boolean isInfo;
     private final boolean verbose;
     private final boolean consume;
@@ -143,7 +138,7 @@ public class SieveMailet  extends GenericMailet implements Poster {
     private final ActionDispatcher actionDispatcher;
     private final Log log;
 
-    private SieveMailet(UsersRepository usersRepos, MailboxManager mailboxManager, ResourceLocator resourceLocator, String folder, String deliveryHeader,
+    private SieveMailet(UsersRepository usersRepos, MailboxManager mailboxManager, ResourceLocator resourceLocator, String folder,
                         boolean consume, boolean verbose, boolean quiet) throws MessagingException {
 
         this.usersRepos = usersRepos;
@@ -151,7 +146,6 @@ public class SieveMailet  extends GenericMailet implements Poster {
         this.mailboxManager = mailboxManager;
         this.folder = folder;
         this.actionDispatcher = new ActionDispatcher();
-        this.deliveryHeader = deliveryHeader;
         this.consume = consume;
         this.isInfo = verbose || !quiet;
         this.verbose = verbose;
@@ -346,37 +340,33 @@ public class SieveMailet  extends GenericMailet implements Poster {
 
         Enumeration headers;
         InternetHeaders deliveredTo = new InternetHeaders();
-        if (deliveryHeader != null) {
-            // Copy any Delivered-To headers from the message
-            headers = message
-                .getMatchingHeaders(new String[] { deliveryHeader });
-            while (headers.hasMoreElements()) {
-                Header header = (Header) headers.nextElement();
-                deliveredTo.addHeader(header.getName(), header.getValue());
-            }
+
+        // Copy any Delivered-To headers from the message
+        headers = message
+            .getMatchingHeaders(new String[] { DELIVERED_TO });
+        while (headers.hasMoreElements()) {
+            Header header = (Header) headers.nextElement();
+            deliveredTo.addHeader(header.getName(), header.getValue());
         }
 
+
         for (Iterator<MailAddress> i = recipients.iterator(); i.hasNext();) {
             MailAddress recipient = i.next();
             try {
-                if (deliveryHeader != null) {
-                    // Add qmail's de facto standard Delivered-To header
-                    message.addHeader(deliveryHeader, recipient.toString());
-                }
+                // Add qmail's de facto standard Delivered-To header
+                message.addHeader(DELIVERED_TO, recipient.toString());
 
                 storeMail(mail.getSender(), recipient, mail);
 
-                if (deliveryHeader != null) {
-                    if (i.hasNext()) {
-                        // Remove headers but leave all placeholders
-                        message.removeHeader(deliveryHeader);
-                        headers = deliveredTo.getAllHeaders();
-                        // And restore any original Delivered-To headers
-                        while (headers.hasMoreElements()) {
-                            Header header = (Header) headers.nextElement();
-                            message.addHeader(header.getName(), header
-                                .getValue());
-                        }
+                if (i.hasNext()) {
+                    // Remove headers but leave all placeholders
+                    message.removeHeader(DELIVERED_TO);
+                    headers = deliveredTo.getAllHeaders();
+                    // And restore any original Delivered-To headers
+                    while (headers.hasMoreElements()) {
+                        Header header = (Header) headers.nextElement();
+                        message.addHeader(header.getName(), header
+                            .getValue());
                     }
                 }
             } catch (Exception ex) {

http://git-wip-us.apache.org/repos/asf/james-project/blob/375ef686/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/ToRecipientFolder.java
----------------------------------------------------------------------
diff --git a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/ToRecipientFolder.java b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/ToRecipientFolder.java
index fa8242d..642d087 100644
--- a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/ToRecipientFolder.java
+++ b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/ToRecipientFolder.java
@@ -95,7 +95,6 @@ public class ToRecipientFolder extends GenericMailet {
             .mailboxManager(mailboxManager)
             .userRepository(usersRepository)
             .resourceLocator(ResourceLocatorImpl.instanciate(usersRepository, sieveRepository))
-            .deliveryHeader("Delivered-To")
             .folder(getInitParameter(FOLDER_PARAMETER, "INBOX"))
             .consume(getInitParameter(CONSUME_PARAMETER, false))
             .verbose(getInitParameter("verbose", false))

http://git-wip-us.apache.org/repos/asf/james-project/blob/375ef686/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveMailetTest.java
----------------------------------------------------------------------
diff --git a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveMailetTest.java b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveMailetTest.java
index 4155f46..9df40ee 100644
--- a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveMailetTest.java
+++ b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/delivery/SieveMailetTest.java
@@ -108,7 +108,6 @@ public class SieveMailetTest {
             .mailboxManager(mailboxManager)
             .resourceLocator(resourceLocator)
             .folder("INBOX")
-            .deliveryHeader("DELIVERY_HEADER")
             .consume(true)
             .build();
     }


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