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("addr...@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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to