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 no...@apache.org on 2010/02/05 15:14:02 UTC

svn commit: r906943 - in /james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester: RemoteDeliveryTestable.java Tester.java TesterMailetConfig.java

Author: norman
Date: Fri Feb  5 14:14:02 2010
New Revision: 906943

URL: http://svn.apache.org/viewvc?rev=906943&view=rev
Log:
Fix RemoteDeliveryTest (threw NPE before)

Modified:
    james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/RemoteDeliveryTestable.java
    james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/Tester.java
    james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/TesterMailetConfig.java

Modified: james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/RemoteDeliveryTestable.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/RemoteDeliveryTestable.java?rev=906943&r1=906942&r2=906943&view=diff
==============================================================================
--- james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/RemoteDeliveryTestable.java (original)
+++ james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/RemoteDeliveryTestable.java Fri Feb  5 14:14:02 2010
@@ -20,6 +20,7 @@
 package org.apache.james.transport.remotedeliverytester;
 
 import org.apache.james.api.dnsservice.DNSService;
+import org.apache.james.services.MailServer;
 import org.apache.james.services.store.Store;
 import org.apache.mailet.Mail;
 import org.apache.mailet.MailetConfig;
@@ -37,6 +38,8 @@
     void setRemoteDeliveryTester(Tester tester);
     void setDNSService(DNSService dnsServer);
     void setStore(Store store);
+    void setMailServer(MailServer store);
+
     void init() throws MessagingException;
     void init(MailetConfig newConfig) throws MessagingException;
     void service(Mail mail) throws MessagingException;

Modified: james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/Tester.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/Tester.java?rev=906943&r1=906942&r2=906943&view=diff
==============================================================================
--- james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/Tester.java (original)
+++ james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/Tester.java Fri Feb  5 14:14:02 2010
@@ -22,6 +22,8 @@
 import org.apache.james.api.dnsservice.DNSService;
 import org.apache.james.api.dnsservice.TemporaryResolutionException;
 import org.apache.james.core.MailImpl;
+import org.apache.james.services.MailRepository;
+import org.apache.james.services.MailServer;
 import org.apache.james.services.store.Store;
 import org.apache.mailet.HostAddress;
 import org.apache.mailet.Mail;
@@ -39,6 +41,7 @@
 import javax.mail.Provider.Type;
 import javax.mail.internet.MimeMessage;
 
+import java.io.InputStream;
 import java.net.InetAddress;
 import java.net.UnknownHostException;
 import java.util.ArrayList;
@@ -130,7 +133,48 @@
         mailetConfig = new TesterMailetConfig(this, mailetConfigProperties);
         remoteDelivery.setDNSService(dnsServer);
         remoteDelivery.setStore(store);
-        
+        remoteDelivery.setMailServer(new MailServer() {
+            
+            public boolean supportVirtualHosting() {
+                return false;
+            }
+            
+            public void sendMail(MimeMessage message) throws MessagingException {                
+            }
+            
+            public void sendMail(Mail mail) throws MessagingException {                
+            }
+            
+            public void sendMail(MailAddress sender, Collection<MailAddress> recipients, InputStream msg) throws MessagingException {                
+            }
+            
+            public void sendMail(MailAddress sender, Collection<MailAddress> recipients, MimeMessage msg) throws MessagingException {                
+            }
+            
+            public boolean isLocalServer(String serverName) {
+                return false;
+            }
+            
+            public MailRepository getUserInbox(String userName) {
+                return null;
+            }
+            
+            public String getId() {
+                return null;
+            }
+            
+            public String getHelloName() {
+                return "hello.name.com";
+            }
+            
+            public String getDefaultDomain() {
+                return null;
+            }
+            
+            public boolean addUser(String userName, String password) {
+                return false;
+            }
+        });
         remoteDelivery.init(mailetConfig);
 
         if (mailetConfig.getWrappedSpoolRepository() != null) log("DEBUG", "Init WrappedSpoolRepository OK");

Modified: james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/TesterMailetConfig.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/TesterMailetConfig.java?rev=906943&r1=906942&r2=906943&view=diff
==============================================================================
--- james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/TesterMailetConfig.java (original)
+++ james/server/trunk/mailets/src/test/java/org/apache/james/transport/remotedeliverytester/TesterMailetConfig.java Fri Feb  5 14:14:02 2010
@@ -19,11 +19,9 @@
 
 package org.apache.james.transport.remotedeliverytester;
 
-import org.apache.commons.configuration.HierarchicalConfiguration;
-import org.apache.james.Constants;
 import org.apache.james.services.SpoolRepository;
-import org.apache.james.services.store.Store;
 import org.apache.mailet.base.test.FakeMailContext;
+import org.apache.mailet.HostAddress;
 import org.apache.mailet.Mail;
 import org.apache.mailet.MailAddress;
 import org.apache.mailet.MailetConfig;
@@ -46,9 +44,6 @@
         }
 
         public Object getAttribute(String name) {
-            if (name.equals(Constants.HELLO_NAME)) {
-                return "hello.name.com";
-            }
             return null;
         }
 
@@ -61,7 +56,7 @@
             System.out.println(message);
         }
 
-        public Iterator getSMTPHostAddresses(String domainName) {
+        public Iterator<HostAddress> getSMTPHostAddresses(String domainName) {
             return owner.onMailetContextGetSMTPHostAddresses(domainName);
         }
 
@@ -73,7 +68,7 @@
             owner.onMailetContextBounce(mail, message);
         }
 
-        public Collection getMailServers(String host) {
+        public Collection<String> getMailServers(String host) {
             throw new UnsupportedOperationException();
         }
 
@@ -99,84 +94,6 @@
 
     }
 
-    private class StoreWrapper implements Store {
-        private TesterMailetConfig owner;
-        private Store wrapped;
-        private SpoolRepository wrappedSpoolRepository;
-
-        public StoreWrapper(TesterMailetConfig owner, Store wrapped) {
-            this.owner = owner;
-            this.wrapped = wrapped;
-        }
-
-        public Object select(HierarchicalConfiguration arg0) throws StoreException {
-            //if ((arg0 instanceof Configuration) && ((Configuration) arg0).getLocation().equals("generated:RemoteDelivery.java")) {
-             //   if (wrappedSpoolRepository == null) wrappedSpoolRepository = new SpoolRepositoryWrapper(owner, (SpoolRepository) wrapped.select(arg0));
-             //   return wrappedSpoolRepository;
-            //}
-            return wrapped.select(arg0);
-        }
-    }
-
-    private class SpoolRepositoryWrapper implements SpoolRepository {
-        private TesterMailetConfig owner;
-        private SpoolRepository wrapped;
-
-        public SpoolRepositoryWrapper(TesterMailetConfig owner, SpoolRepository wrapped) {
-            this.owner = owner;
-            this.wrapped = wrapped;
-            owner.setWrappedSpoolRepository(this);
-        }
-
-        public void store(Mail mc) throws MessagingException {
-            owner.onOutgoingStore(mc);
-            wrapped.store(mc);
-        }
-
-        public void remove(Mail mail) throws MessagingException {
-            owner.onOutgoingRemove(mail);
-            wrapped.remove(mail);
-        }
-
-        public void remove(String key) throws MessagingException {
-            owner.onOutgoingRemove(key);
-            wrapped.remove(key);
-        }
-
-        public Mail accept(AcceptFilter filter) throws InterruptedException {
-            Mail mail = wrapped.accept(filter);
-            if (mail != null) owner.onOutgoingAccept(mail);
-            return mail;
-        }
-
-        public Mail accept() throws InterruptedException {
-            return wrapped.accept();
-        }
-
-        public Mail accept(long delay) throws InterruptedException {
-            return wrapped.accept(delay);
-        }
-
-        public Iterator list() throws MessagingException {
-            return wrapped.list();
-        }
-
-        public boolean lock(String key) throws MessagingException {
-            return wrapped.lock(key);
-        }
-
-        public void remove(Collection mails) throws MessagingException {
-            wrapped.remove(mails);
-        }
-
-        public Mail retrieve(String key) throws MessagingException {
-            return wrapped.retrieve(key);
-        }
-
-        public boolean unlock(String key) throws MessagingException {
-            return wrapped.unlock(key);
-        }
-    }
 
     private Tester owner;
     private Properties parameters;



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