Author: norman
Date: Fri Apr 22 19:53:34 2011
New Revision: 1096006

URL: http://svn.apache.org/viewvc?rev=1096006&view=rev
Log:
Set Delivered-To header on local delivery. See JAMES-1225

Modified:
    
james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/LocalDelivery.java

Modified: 
james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/LocalDelivery.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/LocalDelivery.java?rev=1096006&r1=1096005&r2=1096006&view=diff
==============================================================================
--- 
james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/LocalDelivery.java
 (original)
+++ 
james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/LocalDelivery.java
 Fri Apr 22 19:53:34 2011
@@ -19,6 +19,7 @@
 
 package org.apache.james.transport.mailets;
 
+import org.apache.commons.collections.iterators.IteratorChain;
 import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.user.api.UsersRepository;
 import org.apache.mailet.base.GenericMailet;
@@ -30,6 +31,7 @@ import javax.annotation.Resource;
 import javax.mail.MessagingException;
 
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.Iterator;
 
 /**
@@ -107,14 +109,26 @@ public class LocalDelivery extends Gener
              * @see 
org.apache.mailet.MailetConfig#getInitParameter(java.lang.String)
              */
             public String getInitParameter(String name) {
-                return null;
+                if ("addDeliveryHeader".equals(name)) {
+                    return "Delivered-To";
+                } else if ("resetReturnPath".equals(name)) {
+                    return "true";
+                } else {
+                    return getMailetConfig().getInitParameter(name);
+                }
             }
 
             /**
              * @see org.apache.mailet.MailetConfig#getInitParameterNames()
              */
-            public Iterator<String> getInitParameterNames() {
-                return new ArrayList<String>().iterator();
+            public Iterator getInitParameterNames() {
+                IteratorChain c = new IteratorChain();
+                Collection<String> h = new ArrayList<String>();
+                h.add("addDeliveryHeader");
+                h.add("resetReturnPath");
+                c.addIterator(getMailetConfig().getInitParameterNames());
+                c.addIterator(h.iterator());
+                return c;
             }
 
             /**



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

Reply via email to