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