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 rd...@apache.org on 2009/09/17 15:35:28 UTC

svn commit: r816184 - in /james/server/trunk: smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ smtpserver-function/src/test/java/org/apache/james/smtpserver/ user-api/src/main/java/org/apache/james/api/vut/ user-libra...

Author: rdonkin
Date: Thu Sep 17 13:35:28 2009
New Revision: 816184

URL: http://svn.apache.org/viewvc?rev=816184&view=rev
Log:
JAMES-919 Default virtual user store now loaded through convention https://issues.apache.org/jira/browse/JAMES-919

Modified:
    james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java
    james/server/trunk/smtpserver-function/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java
    james/server/trunk/user-api/src/main/java/org/apache/james/api/vut/VirtualUserTableStore.java
    james/server/trunk/user-library/src/test/java/org/apache/james/test/mock/james/MockVirtualUserTableStore.java

Modified: james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java?rev=816184&r1=816183&r2=816184&view=diff
==============================================================================
--- james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java (original)
+++ james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/core/filter/fastfail/ValidRcptHandler.java Thu Sep 17 13:35:28 2009
@@ -97,10 +97,9 @@
      */
     public void service(ServiceManager arg0) throws ServiceException {
         if (tableName == null || tableName.equals("")) {
-            table = (VirtualUserTable) arg0.lookup(VirtualUserTable.ROLE); 
-        } else {
-            table = ((VirtualUserTableStore) arg0.lookup(VirtualUserTableStore.ROLE)).getTable(tableName);
+            tableName =  VirtualUserTableStore.DEFAULT_TABLE;
         }
+        table = ((VirtualUserTableStore) arg0.lookup(VirtualUserTableStore.ROLE)).getTable(tableName);
     }
     
     /**

Modified: james/server/trunk/smtpserver-function/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java?rev=816184&r1=816183&r2=816184&view=diff
==============================================================================
--- james/server/trunk/smtpserver-function/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java (original)
+++ james/server/trunk/smtpserver-function/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java Thu Sep 17 13:35:28 2009
@@ -33,11 +33,13 @@
 import org.apache.james.api.user.UsersRepository;
 import org.apache.james.api.vut.ErrorMappingException;
 import org.apache.james.api.vut.VirtualUserTable;
+import org.apache.james.api.vut.VirtualUserTableStore;
 import org.apache.james.services.MailServer;
 import org.apache.james.smtpserver.core.filter.fastfail.ValidRcptHandler;
 import org.apache.james.smtpserver.hook.HookReturnCode;
 import org.apache.james.test.mock.avalon.MockLogger;
 import org.apache.james.test.mock.avalon.MockServiceManager;
+import org.apache.james.test.mock.james.MockVirtualUserTableStore;
 import org.apache.james.userrepository.MockUsersRepository;
 import org.apache.mailet.MailAddress;
 import org.apache.oro.text.regex.MalformedPatternException;
@@ -79,15 +81,15 @@
     
     private MockServiceManager setUpServiceManager() throws Exception {
         serviceMan = new MockServiceManager();
-        serviceMan.put(VirtualUserTable.ROLE, setUpVirtualUserTable());
+        serviceMan.put(VirtualUserTableStore.ROLE, setUpVirtualUserTableStore());
         return serviceMan;
     }
     
-    private VirtualUserTable setUpVirtualUserTable() {
-        VirtualUserTable table = new VirtualUserTable() {
+    private VirtualUserTableStore setUpVirtualUserTableStore() {
+        final VirtualUserTable table = new VirtualUserTable() {
  
             public Collection<String> getMappings(String user, String domain) throws ErrorMappingException {
-                Collection mappings = new ArrayList();
+                Collection<String> mappings = new ArrayList<String>();
                 if (user.equals(USER1)) {
                     mappings.add("address@localhost");
                 } else if (user.equals(USER2)) {
@@ -96,7 +98,9 @@
                 return mappings;
             }
         };
-        return table;
+        final MockVirtualUserTableStore store = new MockVirtualUserTableStore();
+        store.tableStore.put(VirtualUserTableStore.DEFAULT_TABLE, table);
+        return store;
     }
     
     private SMTPConfiguration setupMockedSMTPConfiguration() {

Modified: james/server/trunk/user-api/src/main/java/org/apache/james/api/vut/VirtualUserTableStore.java
URL: http://svn.apache.org/viewvc/james/server/trunk/user-api/src/main/java/org/apache/james/api/vut/VirtualUserTableStore.java?rev=816184&r1=816183&r2=816184&view=diff
==============================================================================
--- james/server/trunk/user-api/src/main/java/org/apache/james/api/vut/VirtualUserTableStore.java (original)
+++ james/server/trunk/user-api/src/main/java/org/apache/james/api/vut/VirtualUserTableStore.java Thu Sep 17 13:35:28 2009
@@ -31,10 +31,15 @@
 public interface VirtualUserTableStore 
 {
     /**
+     * Conventional name for the default table for virtual users.
+     */
+    String DEFAULT_TABLE = "default";
+    
+    /**
      * The component role used by components implementing this service
      */
     String ROLE = "org.apache.james.api.vut.VirtualUserTableStore";
-
+    
     /** 
      * Get the table, if any, whose name corresponds to
      * the argument parameter

Modified: james/server/trunk/user-library/src/test/java/org/apache/james/test/mock/james/MockVirtualUserTableStore.java
URL: http://svn.apache.org/viewvc/james/server/trunk/user-library/src/test/java/org/apache/james/test/mock/james/MockVirtualUserTableStore.java?rev=816184&r1=816183&r2=816184&view=diff
==============================================================================
--- james/server/trunk/user-library/src/test/java/org/apache/james/test/mock/james/MockVirtualUserTableStore.java (original)
+++ james/server/trunk/user-library/src/test/java/org/apache/james/test/mock/james/MockVirtualUserTableStore.java Thu Sep 17 13:35:28 2009
@@ -22,12 +22,13 @@
 package org.apache.james.test.mock.james;
 
 import java.util.HashMap;
+import java.util.Map;
 
 import org.apache.james.api.vut.VirtualUserTable;
 import org.apache.james.api.vut.VirtualUserTableStore;
 
 public class MockVirtualUserTableStore implements VirtualUserTableStore {
-    HashMap<String, VirtualUserTable> tableStore = new HashMap<String, VirtualUserTable>();
+    public Map<String, VirtualUserTable> tableStore = new HashMap<String, VirtualUserTable>();
     
     public VirtualUserTable getTable(String name) {
         return (VirtualUserTable) tableStore.get(name);



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