JAMES-2529 Add a OptionalUtils::ofNullableToStream convenience method

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

Branch: refs/heads/master
Commit: 924d23df354ebcb76b835a5916d93ac33d64111e
Parents: 016a282
Author: Benoit Tellier <[email protected]>
Authored: Thu Aug 30 09:28:07 2018 +0700
Committer: Antoine Duprat <[email protected]>
Committed: Thu Aug 30 15:07:01 2018 +0200

----------------------------------------------------------------------
 .../util/src/main/java/org/apache/james/util/OptionalUtils.java | 4 ++++
 .../org/apache/james/transport/matchers/dlp/DlpDomainRules.java | 2 +-
 .../java/org/apache/james/jmap/mailet/filter/MailMatcher.java   | 5 ++---
 3 files changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/924d23df/server/container/util/src/main/java/org/apache/james/util/OptionalUtils.java
----------------------------------------------------------------------
diff --git 
a/server/container/util/src/main/java/org/apache/james/util/OptionalUtils.java 
b/server/container/util/src/main/java/org/apache/james/util/OptionalUtils.java
index 4a3449c..8f64e38 100644
--- 
a/server/container/util/src/main/java/org/apache/james/util/OptionalUtils.java
+++ 
b/server/container/util/src/main/java/org/apache/james/util/OptionalUtils.java
@@ -42,6 +42,10 @@ public class OptionalUtils {
             .orElse(Stream.of());
     }
 
+    public static <T> Stream<T> ofNullableToStream(T maybeNull) {
+        return toStream(Optional.ofNullable(maybeNull));
+    }
+
     @SafeVarargs
     public static <T> Optional<T> or(Optional<T>... optionals) {
         return orStream(Arrays.stream(optionals));

http://git-wip-us.apache.org/repos/asf/james-project/blob/924d23df/server/mailet/mailets/src/main/java/org/apache/james/transport/matchers/dlp/DlpDomainRules.java
----------------------------------------------------------------------
diff --git 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/matchers/dlp/DlpDomainRules.java
 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/matchers/dlp/DlpDomainRules.java
index d3f0eef..3dcfec7 100644
--- 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/matchers/dlp/DlpDomainRules.java
+++ 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/matchers/dlp/DlpDomainRules.java
@@ -168,7 +168,7 @@ public class DlpDomainRules {
             }
 
             private Stream<String> listEnvelopSender(Mail mail) {
-                return 
OptionalUtils.toStream(Optional.ofNullable(mail.getSender()).map(MailAddress::asString));
+                return 
OptionalUtils.ofNullableToStream(mail.getSender()).map(MailAddress::asString);
             }
 
             private Stream<String> listFromHeaders(Mail mail) throws 
MessagingException {

http://git-wip-us.apache.org/repos/asf/james-project/blob/924d23df/server/protocols/jmap/src/main/java/org/apache/james/jmap/mailet/filter/MailMatcher.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap/src/main/java/org/apache/james/jmap/mailet/filter/MailMatcher.java
 
b/server/protocols/jmap/src/main/java/org/apache/james/jmap/mailet/filter/MailMatcher.java
index 4626a7f..185c08b 100644
--- 
a/server/protocols/jmap/src/main/java/org/apache/james/jmap/mailet/filter/MailMatcher.java
+++ 
b/server/protocols/jmap/src/main/java/org/apache/james/jmap/mailet/filter/MailMatcher.java
@@ -36,6 +36,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.apache.james.javax.AddressHelper;
 import org.apache.james.jmap.api.filtering.Rule;
 import org.apache.james.jmap.api.filtering.Rule.Condition.Field;
+import org.apache.james.util.OptionalUtils;
 import org.apache.mailet.Mail;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -176,9 +177,7 @@ public interface MailMatcher {
     }
 
     HeaderExtractor SUBJECT_EXTRACTOR = mail ->
-            Optional.ofNullable(mail.getMessage().getSubject())
-                    .map(Stream::of)
-                    .orElse(Stream.empty());
+        OptionalUtils.ofNullableToStream(mail.getMessage().getSubject());
     HeaderExtractor RECIPIENT_EXTRACTOR =  mail -> addressExtractor(
                 mail.getMessage().getRecipients(Message.RecipientType.TO),
                 mail.getMessage().getRecipients(Message.RecipientType.CC));


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to