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 ma...@apache.org on 2015/11/02 14:48:21 UTC

svn commit: r1711992 - in /james/project/trunk/server/data/data-library/src: main/java/org/apache/james/rrt/lib/ test/java/org/apache/james/rrt/lib/

Author: matthieu
Date: Mon Nov  2 13:48:21 2015
New Revision: 1711992

URL: http://svn.apache.org/viewvc?rev=1711992&view=rev
Log:
JAMES-1595 create some factory methods for Mapping

Modified:
    james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/MappingImpl.java
    james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTableTest.java
    james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/MappingImplTest.java

Modified: james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/MappingImpl.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/MappingImpl.java?rev=1711992&r1=1711991&r2=1711992&view=diff
==============================================================================
--- james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/MappingImpl.java (original)
+++ james/project/trunk/server/data/data-library/src/main/java/org/apache/james/rrt/lib/MappingImpl.java Mon Nov  2 13:48:21 2015
@@ -28,15 +28,34 @@ import com.google.common.base.Preconditi
 
 public class MappingImpl implements Mapping {
 
+    private static final String ADDRESS_PREFIX = "";
+
+
     public static MappingImpl of(String mapping) {
-        return new MappingImpl(mapping);
+        return new MappingImpl("", mapping);
+    }
+    
+    public static MappingImpl address(String mapping) {
+        return new MappingImpl(ADDRESS_PREFIX, mapping);
     }
 
+    public static MappingImpl regex(String mapping) {
+        return new MappingImpl(RecipientRewriteTable.REGEX_PREFIX, mapping);
+    }
+
+    public static MappingImpl error(String mapping) {
+        return new MappingImpl(RecipientRewriteTable.ERROR_PREFIX, mapping);
+    }
+
+    public static MappingImpl domain(String mapping) {
+        return new MappingImpl(RecipientRewriteTable.ALIASDOMAIN_PREFIX, mapping);
+    }
+    
     private final String mapping;
 
-    public MappingImpl(String mapping) {
+    private MappingImpl(String prefix, String mapping) {
         Preconditions.checkNotNull(mapping);
-        this.mapping = mapping;
+        this.mapping = prefix + mapping;
     }
     
     @Override
@@ -52,7 +71,7 @@ public class MappingImpl implements Mapp
     @Override
     public Mapping appendDomain(String domain) {
         Preconditions.checkNotNull(domain);
-        return new MappingImpl(mapping + "@" + domain);
+        return new MappingImpl("", mapping + "@" + domain);
     }
     
     @Override
@@ -82,4 +101,9 @@ public class MappingImpl implements Mapp
         return Objects.hashCode(mapping);
     }
     
+    @Override
+    public String toString() {
+        return Objects.toStringHelper(getClass()).add("mapping", mapping).toString();
+    }
+    
 }
\ No newline at end of file

Modified: james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTableTest.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTableTest.java?rev=1711992&r1=1711991&r2=1711992&view=diff
==============================================================================
--- james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTableTest.java (original)
+++ james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTableTest.java Mon Nov  2 13:48:21 2015
@@ -241,7 +241,7 @@ public abstract class AbstractRecipientR
 
             assertThat(addMapping(user1, domain1, user2 + "@" + domain2, ADDRESS_TYPE)).describedAs("Added mapping").isTrue();
             assertThat(addMapping(user2, domain2, user3 + "@" + domain3, ADDRESS_TYPE)).describedAs("Added mapping").isTrue();
-            assertThat(virtualUserTable.getMappings(user1, domain1)).containsOnly(MappingImpl.of(user3 + "@" + domain3));
+            assertThat(virtualUserTable.getMappings(user1, domain1)).containsOnly(MappingImpl.address(user3 + "@" + domain3));
             assertThat(addMapping(user3, domain3, user1 + "@" + domain1, ADDRESS_TYPE)).describedAs("Added mapping").isTrue();
             
             try {
@@ -253,7 +253,7 @@ public abstract class AbstractRecipientR
 
             // disable recursive mapping
             virtualUserTable.setRecursiveMapping(false);
-            assertThat(virtualUserTable.getMappings(user1, domain1)).describedAs("Not recursive mapped").containsExactly(MappingImpl.of(user2 + "@" + domain2));
+            assertThat(virtualUserTable.getMappings(user1, domain1)).describedAs("Not recursive mapped").containsExactly(MappingImpl.address(user2 + "@" + domain2));
 
         } catch (IllegalArgumentException e) {
             fail("Storing failed");
@@ -279,7 +279,7 @@ public abstract class AbstractRecipientR
 
             assertThat(virtualUserTable.getMappings(user, aliasDomain))
                 .describedAs("Domain mapped as first, Address mapped as second")
-                .containsExactly(MappingImpl.of(user + "@" + domain), MappingImpl.of(user2 + "@" + domain));
+                .containsExactly(MappingImpl.address(user + "@" + domain), MappingImpl.address(user2 + "@" + domain));
 
             assertThat(removeMapping(RecipientRewriteTable.WILDCARD, aliasDomain, user2 + "@" + domain,
                     ADDRESS_TYPE)).describedAs("Remove mapping").isTrue();

Modified: james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/MappingImplTest.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/MappingImplTest.java?rev=1711992&r1=1711991&r2=1711992&view=diff
==============================================================================
--- james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/MappingImplTest.java (original)
+++ james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/MappingImplTest.java Mon Nov  2 13:48:21 2015
@@ -20,80 +20,95 @@
 
 package org.apache.james.rrt.lib;
 
-import org.apache.james.rrt.api.RecipientRewriteTable;
-import org.junit.Test;
-
 import static org.assertj.core.api.Assertions.assertThat;
 
+import org.junit.Test;
+
 public class MappingImplTest {
 
     @Test(expected=NullPointerException.class)
-    public void factoryMethodShouldThrowOnNull() {
-        assertThat(MappingImpl.of(null));
+    public void addressFactoryMethodShouldThrowOnNull() {
+        assertThat(MappingImpl.address(null));
+    }
+    
+    @Test(expected=NullPointerException.class)
+    public void regexFactoryMethodShouldThrowOnNull() {
+        assertThat(MappingImpl.regex(null));
+    }
+    
+    @Test(expected=NullPointerException.class)
+    public void domainFactoryMethodShouldThrowOnNull() {
+        assertThat(MappingImpl.domain(null));
+    }
+    
+    
+    @Test(expected=NullPointerException.class)
+    public void errorFactoryMethodShouldThrowOnNull() {
+        assertThat(MappingImpl.error(null));
     }
     
     @Test
     public void hasDomainshouldReturnTrueWhenMappingContainAtMark() {
-        assertThat(MappingImpl.of("a@b").hasDomain()).isTrue();
+        assertThat(MappingImpl.address("a@b").hasDomain()).isTrue();
     }
     
     @Test
     public void hasDomainshouldReturnFalseWhenMappingIsEmpty() {
-        assertThat(MappingImpl.of("").hasDomain()).isFalse();
+        assertThat(MappingImpl.address("").hasDomain()).isFalse();
     }
 
     @Test
     public void hasDomainshouldReturnFalseWhenMappingIsBlank() {
-        assertThat(MappingImpl.of(" ").hasDomain()).isFalse();
+        assertThat(MappingImpl.address(" ").hasDomain()).isFalse();
     }
 
     @Test
     public void hasDomainshouldReturnFalseWhenMappingDoesntContainAtMark() {
-        assertThat(MappingImpl.of("abc").hasDomain()).isFalse();
+        assertThat(MappingImpl.address("abc").hasDomain()).isFalse();
     }
     
     @Test
     public void appendDomainShouldWorkOnValidDomain() {
-        assertThat(MappingImpl.of("abc").appendDomain("domain")).isEqualTo(MappingImpl.of("abc@domain"));
+        assertThat(MappingImpl.address("abc").appendDomain("domain")).isEqualTo(MappingImpl.address("abc@domain"));
     }
     
     @Test
     public void appendDomainShouldWorkWhenMappingAlreadyContainsDomains() {
-        assertThat(MappingImpl.of("abc@d").appendDomain("domain")).isEqualTo(MappingImpl.of("abc@d@domain"));
+        assertThat(MappingImpl.address("abc@d").appendDomain("domain")).isEqualTo(MappingImpl.address("abc@d@domain"));
     }
     
     @Test(expected=NullPointerException.class)
     public void appendDomainShouldThrowWhenNullDomain() {
-        MappingImpl.of("abc@d").appendDomain(null);
+        MappingImpl.address("abc@d").appendDomain(null);
     }
     
     @Test
     public void appendDomainShouldWorkWhenEmptyDomain() {
-        assertThat(MappingImpl.of("abc").appendDomain("")).isEqualTo(MappingImpl.of("abc@"));
+        assertThat(MappingImpl.address("abc").appendDomain("")).isEqualTo(MappingImpl.address("abc@"));
     }
 
     @Test
     public void getTypeShouldReturnAddressWhenNoPrefix() {
-        assertThat(MappingImpl.of("abc").getType()).isEqualTo(Mapping.Type.Address);
+        assertThat(MappingImpl.address("abc").getType()).isEqualTo(Mapping.Type.Address);
     }
 
     @Test
     public void getTypeShouldReturnAddressWhenEmpty() {
-        assertThat(MappingImpl.of("").getType()).isEqualTo(Mapping.Type.Address);
+        assertThat(MappingImpl.address("").getType()).isEqualTo(Mapping.Type.Address);
     }
     
     @Test
     public void getTypeShouldReturnRegexWhenRegexPrefix() {
-        assertThat(MappingImpl.of(RecipientRewriteTable.REGEX_PREFIX + "abc").getType()).isEqualTo(Mapping.Type.Regex);
+        assertThat(MappingImpl.regex("abc").getType()).isEqualTo(Mapping.Type.Regex);
     }
 
     @Test
     public void getTypeShouldReturnErrorWhenErrorPrefix() {
-        assertThat(MappingImpl.of(RecipientRewriteTable.ERROR_PREFIX + "abc").getType()).isEqualTo(Mapping.Type.Error);
+        assertThat(MappingImpl.error("abc").getType()).isEqualTo(Mapping.Type.Error);
     }
 
     @Test
     public void getTypeShouldReturnDomainWhenDomainPrefix() {
-        assertThat(MappingImpl.of(RecipientRewriteTable.ALIASDOMAIN_PREFIX + "abc").getType()).isEqualTo(Mapping.Type.Domain);
+        assertThat(MappingImpl.domain("abc").getType()).isEqualTo(Mapping.Type.Domain);
     }
 }



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