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 2006/10/15 18:54:41 UTC

svn commit: r464226 - in /james/server/trunk/src/java/org/apache/james/vut: AbstractVirtualUserTable.java JDBCVirtualUserTable.java

Author: norman
Date: Sun Oct 15 09:54:39 2006
New Revision: 464226

URL: http://svn.apache.org/viewvc?view=rev&rev=464226
Log:
Move wildcard implementation ti JDBCVirtualUserTable

Modified:
    james/server/trunk/src/java/org/apache/james/vut/AbstractVirtualUserTable.java
    james/server/trunk/src/java/org/apache/james/vut/JDBCVirtualUserTable.java

Modified: james/server/trunk/src/java/org/apache/james/vut/AbstractVirtualUserTable.java
URL: http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/vut/AbstractVirtualUserTable.java?view=diff&rev=464226&r1=464225&r2=464226
==============================================================================
--- james/server/trunk/src/java/org/apache/james/vut/AbstractVirtualUserTable.java (original)
+++ james/server/trunk/src/java/org/apache/james/vut/AbstractVirtualUserTable.java Sun Oct 15 09:54:39 2006
@@ -38,8 +38,6 @@
 
 public abstract class AbstractVirtualUserTable extends AbstractLogEnabled
     implements VirtualUserTable, VirtualUserTableManagement {
-    
-    private static String WILDCARD = "%";
 
     /**
      * @see org.apache.james.services.VirtualUserTable#getMapping(org.apache.mailet.MailAddress)
@@ -104,7 +102,7 @@
         } catch (MalformedPatternException e) {
             throw new InvalidMappingException("Invalid regex: " + regex);
         }
-        return addMappingInternal(getUserString(user),getDomainString(domain),"regex:" + regex);
+        return addMappingInternal(user, domain, "regex:" + regex);
     }
 
     
@@ -131,7 +129,7 @@
         } catch (ParseException e) {
             throw new InvalidMappingException("Invalid emailAddress: " + address);
         }
-        return addMappingInternal(getUserString(user),getDomainString(domain), address);
+        return addMappingInternal(user, domain, address);
     }
     
     /**
@@ -153,7 +151,7 @@
     public boolean addErrorMapping(String user, String domain, String error) throws InvalidMappingException {
         // TODO: More logging
     
-        return addMappingInternal(getUserString(user),getDomainString(domain), "error:" + error);
+        return addMappingInternal(user,domain, "error:" + error);
     }
     
     /**
@@ -206,46 +204,8 @@
         return mapping.toString();
     
    }
-    
-    /**
-     * Return user String for the given argument
-     * 
-     * @param user the given user String
-     * @return user the user String
-     * @throws InvalidMappingException get thrown on invalid argument
-     */
-    private String getUserString(String user) throws InvalidMappingException {
-        if (user != null) {
-            if(user.equals(WILDCARD) || user.indexOf("@") < 0) {
-                return user;
-            } else {
-                throw new InvalidMappingException("Invalid user: " + user);
-            }
-        } else {
-            return WILDCARD;
-        }
-    }
-    
-    /**
-     * Return domain String for the given argument
-     * 
-     * @param domain the given domain String
-     * @return domainString the domain String
-     * @throws InvalidMappingException get thrown on invalid argument
-     */
-    private String getDomainString(String domain) throws InvalidMappingException {
-        if(domain != null) {
-            if (domain.equals(WILDCARD) || domain.indexOf("@") < 0) {
-                return domain;  
-            } else {
-                throw new InvalidMappingException("Invalid domain: " + domain);
-            }
-        } else {
-            return WILDCARD;
-        }
-    }
-    
-    
+
+ 
 
     /**
      * Override to map virtual recipients to real recipients, both local and non-local.
@@ -269,8 +229,9 @@
      * @param domain the domain
      * @param mapping the mapping
      * @return true if successfully
+     * @throws InvalidMappingException 
      */
-    public abstract boolean  addMappingInternal(String user, String domain, String mapping);
+    public abstract boolean  addMappingInternal(String user, String domain, String mapping) throws InvalidMappingException;
     
     /**
      * Remove mapping 

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=464226&r1=464225&r2=464226
==============================================================================
--- james/server/trunk/src/java/org/apache/james/vut/JDBCVirtualUserTable.java (original)
+++ james/server/trunk/src/java/org/apache/james/vut/JDBCVirtualUserTable.java Sun Oct 15 09:54:39 2006
@@ -52,6 +52,9 @@
     private DataSourceComponent dataSourceComponent = null;
     private String tableName = "VirtualUserTable";
     private String dataSourceName = null;
+    
+    private static String WILDCARD = "%";
+
 
     /**
      * Contains all of the sql strings for this component.
@@ -287,17 +290,20 @@
 
 
     /**
+     * @throws InvalidMappingException 
      * @see org.apache.james.vut.AbstractVirtualUserTable#addRegexMappingInternal(java.lang.String, java.lang.String, java.lang.String)
      */
-    public boolean addMappingInternal(String user, String domain, String regex) {
-        String mapping =  mapAddress(user,domain);
+    public boolean addMappingInternal(String user, String domain, String regex) throws InvalidMappingException {
+	String newUser = getUserString(user);
+	String newDomain = getDomainString(domain);
+        String mapping =  mapAddress(newUser,newDomain);
         if (mapping != null) {
             ArrayList map = mappingToColletion(mapping);
             map.add(regex);
         
             return updateMapping(user,domain,CollectionToMapping(map));
         }
-        return addMapping(user,domain,regex);
+        return addMapping(newUser,newDomain,regex);
     }
     
     /**
@@ -415,5 +421,43 @@
         return false;
     }
 
+    
+    /**
+     * Return user String for the given argument
+     * 
+     * @param user the given user String
+     * @return user the user String
+     * @throws InvalidMappingException get thrown on invalid argument
+     */
+    private String getUserString(String user) throws InvalidMappingException {
+        if (user != null) {
+            if(user.equals(WILDCARD) || user.indexOf("@") < 0) {
+                return user;
+            } else {
+                throw new InvalidMappingException("Invalid user: " + user);
+            }
+        } else {
+            return WILDCARD;
+        }
+    }
+    
+    /**
+     * Return domain String for the given argument
+     * 
+     * @param domain the given domain String
+     * @return domainString the domain String
+     * @throws InvalidMappingException get thrown on invalid argument
+     */
+    private String getDomainString(String domain) throws InvalidMappingException {
+        if(domain != null) {
+            if (domain.equals(WILDCARD) || domain.indexOf("@") < 0) {
+                return domain;  
+            } else {
+                throw new InvalidMappingException("Invalid domain: " + domain);
+            }
+        } else {
+            return WILDCARD;
+        }
+    }
 }
 



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