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 ro...@apache.org on 2020/06/08 13:16:03 UTC

[james-project] 09/30: JAMES-3179 Fix MessageContent hashCode

This is an automated email from the ASF dual-hosted git repository.

rouazana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit c3ee324cdada5efaad20bf4de0980b60c90283a8
Author: Gautier DI FOLCO <gd...@linagora.com>
AuthorDate: Tue May 12 15:34:13 2020 +0200

    JAMES-3179 Fix MessageContent hashCode
---
 .../java/org/apache/james/util/mime/MessageContentExtractor.java   | 7 ++++++-
 .../org/apache/james/util/mime/MessageContentExtractorTest.java    | 7 +++++++
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/server/container/util/src/main/java/org/apache/james/util/mime/MessageContentExtractor.java b/server/container/util/src/main/java/org/apache/james/util/mime/MessageContentExtractor.java
index 454d3d0..5a3292a 100644
--- a/server/container/util/src/main/java/org/apache/james/util/mime/MessageContentExtractor.java
+++ b/server/container/util/src/main/java/org/apache/james/util/mime/MessageContentExtractor.java
@@ -179,7 +179,7 @@ public class MessageContentExtractor {
             && part.getHeader().getField(CONTENT_ID) == null;
     }
 
-    public static class MessageContent {
+    public static final class MessageContent {
         private final Optional<String> textBody;
         private final Optional<String> htmlBody;
 
@@ -230,6 +230,11 @@ public class MessageContentExtractor {
         }
 
         @Override
+        public int hashCode() {
+            return Objects.hash(textBody, htmlBody);
+        }
+
+        @Override
         public boolean equals(Object other) {
             if (!(other instanceof MessageContent)) {
                 return false;
diff --git a/server/container/util/src/test/java/org/apache/james/util/mime/MessageContentExtractorTest.java b/server/container/util/src/test/java/org/apache/james/util/mime/MessageContentExtractorTest.java
index e622d80..65ab84d 100644
--- a/server/container/util/src/test/java/org/apache/james/util/mime/MessageContentExtractorTest.java
+++ b/server/container/util/src/test/java/org/apache/james/util/mime/MessageContentExtractorTest.java
@@ -41,6 +41,8 @@ import org.apache.james.util.mime.MessageContentExtractor.MessageContent;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
+import nl.jqno.equalsverifier.EqualsVerifier;
+
 class MessageContentExtractorTest {
     private static final String BINARY_CONTENT = "binary";
     private static final String TEXT_CONTENT = "text content";
@@ -91,6 +93,11 @@ class MessageContentExtractorTest {
     }
 
     @Test
+    void shouldRespectBeanContract() {
+        EqualsVerifier.forClass(MessageContent.class).verify();
+    }
+
+    @Test
     void extractShouldReturnEmptyWhenBinaryContentOnly() throws IOException {
         Message message = Message.Builder.of()
                 .setBody(BasicBodyFactory.INSTANCE.binaryBody(BINARY_CONTENT, StandardCharsets.UTF_8))


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