Author: norman
Date: Mon Dec 18 05:14:03 2006
New Revision: 488265

URL: http://svn.apache.org/viewvc?view=rev&rev=488265
Log:
Change getAllMappings() to store the mappings as Collection the Map. 
Delete all previous stored mappings from JDBC if a test fail. 

Modified:
    
james/server/trunk/src/java/org/apache/james/services/VirtualUserTableManagement.java
    james/server/trunk/src/java/org/apache/james/vut/JDBCVirtualUserTable.java
    james/server/trunk/src/java/org/apache/james/vut/XMLVirtualUserTable.java
    
james/server/trunk/src/test/org/apache/james/vut/JDBCVirtualUserTableTest.java

Modified: 
james/server/trunk/src/java/org/apache/james/services/VirtualUserTableManagement.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/services/VirtualUserTableManagement.java?view=diff&rev=488265&r1=488264&r2=488265
==============================================================================
--- 
james/server/trunk/src/java/org/apache/james/services/VirtualUserTableManagement.java
 (original)
+++ 
james/server/trunk/src/java/org/apache/james/services/VirtualUserTableManagement.java
 Mon Dec 18 05:14:03 2006
@@ -134,7 +134,8 @@
 
 
     /**
-     * Return a Map which holds all mappings
+     * Return a Map which holds all mappings. The key is the [EMAIL PROTECTED] 
and the value is a Collection 
+     * which holds all mappings
      * 
      * @return Map which holds all mappings
      */

Modified: 
james/server/trunk/src/java/org/apache/james/vut/JDBCVirtualUserTable.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/vut/JDBCVirtualUserTable.java?view=diff&rev=488265&r1=488264&r2=488265
==============================================================================
--- james/server/trunk/src/java/org/apache/james/vut/JDBCVirtualUserTable.java 
(original)
+++ james/server/trunk/src/java/org/apache/james/vut/JDBCVirtualUserTable.java 
Mon Dec 18 05:14:03 2006
@@ -80,7 +80,7 @@
      * @see 
org.apache.avalon.framework.service.Serviceable#service(org.apache.avalon.framework.service.ServiceManager)
      */
     public void service(ServiceManager arg0) throws ServiceException {
-    super.service(arg0);
+        super.service(arg0);
         datasources = 
(DataSourceSelector)arg0.lookup(DataSourceSelector.ROLE); 
         setFileSystem((FileSystem) arg0.lookup(FileSystem.ROLE));
     }
@@ -594,7 +594,7 @@
                     String domain = mappingRS.getString(2);
                     String map = mappingRS.getString(3);
                     
-                    mapping.put(user + "@" + domain,map);
+                    mapping.put(user + "@" + 
domain,VirtualUserTableUtil.mappingToCollection(map));
                 }
                 
                 if (mapping.size() > 0 ) return mapping;

Modified: 
james/server/trunk/src/java/org/apache/james/vut/XMLVirtualUserTable.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/vut/XMLVirtualUserTable.java?view=diff&rev=488265&r1=488264&r2=488265
==============================================================================
--- james/server/trunk/src/java/org/apache/james/vut/XMLVirtualUserTable.java 
(original)
+++ james/server/trunk/src/java/org/apache/james/vut/XMLVirtualUserTable.java 
Mon Dec 18 05:14:03 2006
@@ -135,7 +135,14 @@
      */
     public Map getAllMappingsInternal() {
         if (mappings.size() > 0) {
-                return mappings;
+            Map mappingsNew = new HashMap();
+            Iterator maps = mappings.keySet().iterator();
+                
+            while (maps.hasNext()) {
+                String key = maps.next().toString();
+                mappingsNew.put(key, 
VirtualUserTableUtil.mappingToCollection(mappings.get(key).toString()));
+            }
+            return mappingsNew;
         } else {
             return null;
         }

Modified: 
james/server/trunk/src/test/org/apache/james/vut/JDBCVirtualUserTableTest.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/src/test/org/apache/james/vut/JDBCVirtualUserTableTest.java?view=diff&rev=488265&r1=488264&r2=488265
==============================================================================
--- 
james/server/trunk/src/test/org/apache/james/vut/JDBCVirtualUserTableTest.java 
(original)
+++ 
james/server/trunk/src/test/org/apache/james/vut/JDBCVirtualUserTableTest.java 
Mon Dec 18 05:14:03 2006
@@ -23,6 +23,9 @@
 
 import java.net.InetAddress;
 import java.net.UnknownHostException;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.Map;
 
 import org.apache.avalon.cornerstone.services.datasources.DataSourceSelector;
 import org.apache.avalon.framework.configuration.ConfigurationException;
@@ -41,6 +44,32 @@
 import org.apache.james.test.util.Util;
 
 public class JDBCVirtualUserTableTest extends AbstractVirtualUserTableTest {
+    
+    public void tearDown() {
+        Map mappings = virtualUserTable.getAllMappings();
+    
+        if (mappings != null) {
+            Iterator mappingsIt = 
virtualUserTable.getAllMappings().keySet().iterator();
+    
+    
+            while(mappingsIt.hasNext()) {
+                String key = mappingsIt.next().toString();
+                String args[] = key.split("@");
+        
+                Collection map = (Collection) mappings.get(key);
+        
+                Iterator mapIt = map.iterator();
+        
+                while (mapIt.hasNext()) {
+                    try {
+                        virtualUserTable.removeMapping(args[0], args[1], 
mapIt.next().toString());
+                    } catch (InvalidMappingException e) {
+                        e.printStackTrace();
+                    }
+                }
+            }
+        }
+    }
     
     protected AbstractVirtualUserTable getVirtalUserTable() throws 
ServiceException, ConfigurationException, Exception {
         DefaultServiceManager serviceManager = new DefaultServiceManager();



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to