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 bt...@apache.org on 2019/01/16 06:59:18 UTC

[10/17] james-project git commit: JAMES-2637 Rely on asMailAddressString for MappingSource serialization

JAMES-2637 Rely on asMailAddressString for MappingSource serialization


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/92f44f28
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/92f44f28
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/92f44f28

Branch: refs/heads/master
Commit: 92f44f28455adb9f5017d58c02158e072cde13c1
Parents: 8ea2c22
Author: Rene Cordier <rc...@linagora.com>
Authored: Tue Jan 15 14:52:00 2019 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Wed Jan 16 13:48:56 2019 +0700

----------------------------------------------------------------------
 .../james/rrt/api/RecipientRewriteTable.java     |  3 ++-
 .../org/apache/james/rrt/lib/MappingSource.java  | 19 +------------------
 .../james/webadmin/dto/MappingSourceModule.java  | 13 ++-----------
 .../james/webadmin/routes/AliasRoutes.java       |  4 ++--
 4 files changed, 7 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/92f44f28/server/data/data-api/src/main/java/org/apache/james/rrt/api/RecipientRewriteTable.java
----------------------------------------------------------------------
diff --git a/server/data/data-api/src/main/java/org/apache/james/rrt/api/RecipientRewriteTable.java b/server/data/data-api/src/main/java/org/apache/james/rrt/api/RecipientRewriteTable.java
index 2c53f3a..378c10e 100644
--- a/server/data/data-api/src/main/java/org/apache/james/rrt/api/RecipientRewriteTable.java
+++ b/server/data/data-api/src/main/java/org/apache/james/rrt/api/RecipientRewriteTable.java
@@ -18,6 +18,7 @@
  ****************************************************************/
 package org.apache.james.rrt.api;
 
+import java.util.Comparator;
 import java.util.EnumSet;
 import java.util.List;
 import java.util.Map;
@@ -127,7 +128,7 @@ public interface RecipientRewriteTable {
             .entrySet().stream()
             .filter(e -> e.getValue().contains(type))
             .map(Map.Entry::getKey)
-            .sorted()
+            .sorted(Comparator.comparing(MappingSource::asMailAddressString))
             .collect(Guavate.toImmutableList());
     }
 }

http://git-wip-us.apache.org/repos/asf/james-project/blob/92f44f28/server/data/data-api/src/main/java/org/apache/james/rrt/lib/MappingSource.java
----------------------------------------------------------------------
diff --git a/server/data/data-api/src/main/java/org/apache/james/rrt/lib/MappingSource.java b/server/data/data-api/src/main/java/org/apache/james/rrt/lib/MappingSource.java
index 9e5d90f..92c5264 100644
--- a/server/data/data-api/src/main/java/org/apache/james/rrt/lib/MappingSource.java
+++ b/server/data/data-api/src/main/java/org/apache/james/rrt/lib/MappingSource.java
@@ -32,7 +32,7 @@ import org.apache.james.util.OptionalUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class MappingSource implements Serializable, Comparable<MappingSource> {
+public class MappingSource implements Serializable {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(MappingSource.class);
     private static final String WILDCARD = "*";
@@ -149,21 +149,4 @@ public class MappingSource implements Serializable, Comparable<MappingSource> {
     public String asMailAddressString() {
         return getFixedUser() + "@" + getFixedDomain();
     }
-
-    @Override
-    public int compareTo(MappingSource mappingSource) {
-        final int result;
-        final MailAddress mailAddress1 = this.asMailAddress().get();
-        final MailAddress mailAddress2 = mappingSource.asMailAddress().get();
-
-        if (mailAddress1 == null) {
-            result = mailAddress2 == null ? 0 : 1;
-        } else if (mailAddress2 == null) {
-            result = -1;
-        } else {
-            result = mailAddress1.asString().compareTo(mailAddress2.asString());
-        }
-
-        return result;
-    }
 }

http://git-wip-us.apache.org/repos/asf/james-project/blob/92f44f28/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/dto/MappingSourceModule.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/dto/MappingSourceModule.java b/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/dto/MappingSourceModule.java
index 424a04e..a8b4181 100644
--- a/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/dto/MappingSourceModule.java
+++ b/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/dto/MappingSourceModule.java
@@ -20,9 +20,7 @@
 package org.apache.james.webadmin.dto;
 
 import java.io.IOException;
-import java.util.Optional;
 
-import org.apache.james.core.MailAddress;
 import org.apache.james.rrt.lib.MappingSource;
 import org.apache.james.webadmin.utils.JsonTransformerModule;
 
@@ -40,15 +38,8 @@ public class MappingSourceModule implements JsonTransformerModule {
         simpleModule = new SimpleModule()
             .addSerializer(MappingSource.class, new JsonSerializer<MappingSource>() {
                 @Override
-                public void serialize(MappingSource t, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
-                    jsonGenerator.writeString(serialize(t.asMailAddress()));
-                }
-
-                private String serialize(Optional<MailAddress> mailAddress) {
-                    if (mailAddress.isPresent()) {
-                        return mailAddress.get().asString();
-                    }
-                    return "";
+                public void serialize(MappingSource mappingSource, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
+                    jsonGenerator.writeString(mappingSource.asMailAddressString());
                 }
             });
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/92f44f28/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/routes/AliasRoutes.java
----------------------------------------------------------------------
diff --git a/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/routes/AliasRoutes.java b/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/routes/AliasRoutes.java
index 43004d0..f039559 100644
--- a/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/routes/AliasRoutes.java
+++ b/server/protocols/webadmin/webadmin-data/src/main/java/org/apache/james/webadmin/routes/AliasRoutes.java
@@ -22,6 +22,7 @@ package org.apache.james.webadmin.routes;
 import static org.apache.james.webadmin.Constants.SEPARATOR;
 import static spark.Spark.halt;
 
+import java.util.Comparator;
 import java.util.List;
 import java.util.Map;
 
@@ -226,8 +227,7 @@ public class AliasRoutes implements Routes {
             .entrySet().stream()
             .filter(e -> e.getValue().contains(Mapping.alias(baseAddress.asString())))
             .map(Map.Entry::getKey)
-            .flatMap(source -> OptionalUtils.toStream(source.asMailAddress()))
-            .map(MailAddress::asString)
+            .map(MappingSource::asMailAddressString)
             .sorted()
             .map(AliasSourcesResponse::new)
             .collect(Guavate.toImmutableSet());


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