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 2017/01/06 10:47:31 UTC

[1/3] james-project git commit: JAMES-1898 Correct Cassandra implementation

Repository: james-project
Updated Branches:
  refs/heads/master 0a11a4410 -> 20e6f63b9


JAMES-1898 Correct Cassandra implementation


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

Branch: refs/heads/master
Commit: 4ed7c609a2c07a3cd0e83230cf30f4e8c19509bd
Parents: 4ecc8ba
Author: Benoit Tellier <bt...@linagora.com>
Authored: Mon Dec 26 16:15:10 2016 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Mon Dec 26 16:21:46 2016 +0700

----------------------------------------------------------------------
 .../cassandra/mail/AttachmentLoader.java        |  5 +--
 .../mail/CassandraMessageIdMapper.java          |  8 +++--
 .../cassandra/mail/CassandraMessageMapper.java  |  9 ++++--
 .../cassandra/mail/AttachmentLoaderTest.java    | 32 +++++++++++++++++---
 4 files changed, 44 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/4ed7c609/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoader.java
----------------------------------------------------------------------
diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoader.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoader.java
index 1152627..c07c033 100644
--- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoader.java
+++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoader.java
@@ -19,6 +19,7 @@
 package org.apache.james.mailbox.cassandra.mail;
 
 import java.util.Collection;
+import java.util.List;
 import java.util.Map;
 import java.util.Set;
 import java.util.function.Function;
@@ -40,14 +41,14 @@ public class AttachmentLoader {
         this.attachmentMapper = attachmentMapper;
     }
 
-    public Collection<MessageAttachment> getAttachments(Set<CassandraMessageDAO.MessageAttachmentRepresentation> attachmentRepresentations) {
+    public Collection<MessageAttachment> getAttachments(List<CassandraMessageDAO.MessageAttachmentRepresentation> attachmentRepresentations) {
         Map<AttachmentId, Attachment> attachmentsById = attachmentsById(attachmentRepresentations.stream()
             .map(CassandraMessageDAO.MessageAttachmentRepresentation::getAttachmentId)
             .collect(Guavate.toImmutableSet()));
 
         return attachmentRepresentations.stream()
             .map(representation -> constructMessageAttachment(attachmentsById.get(representation.getAttachmentId()), representation))
-            .collect(Guavate.toImmutableSet());
+            .collect(Guavate.toImmutableList());
     }
 
     private MessageAttachment constructMessageAttachment(Attachment attachment, CassandraMessageDAO.MessageAttachmentRepresentation messageAttachmentRepresentation) {

http://git-wip-us.apache.org/repos/asf/james-project/blob/4ed7c609/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
----------------------------------------------------------------------
diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
index a87edd4..2a756cf 100644
--- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
+++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageIdMapper.java
@@ -115,11 +115,15 @@ public class CassandraMessageIdMapper implements MessageIdMapper {
 
     private Function<Pair<CassandraMessageDAO.MessageWithoutAttachment, Stream<CassandraMessageDAO.MessageAttachmentRepresentation>>, Pair<CassandraMessageDAO.MessageWithoutAttachment, Stream<MessageAttachment>>> loadAttachments() {
         return pair -> Pair.of(pair.getLeft(),
-            new AttachmentLoader(attachmentMapper).getAttachments(pair.getRight().collect(Guavate.toImmutableSet())).stream());
+            new AttachmentLoader(attachmentMapper)
+                .getAttachments(pair.getRight().collect(Guavate.toImmutableList()))
+                .stream());
     }
 
     private FunctionChainer<Pair<CassandraMessageDAO.MessageWithoutAttachment, Stream<MessageAttachment>>, SimpleMailboxMessage> toMailboxMessages() {
-        return Throwing.function(pair -> pair.getLeft().toMailboxMessage(pair.getRight().collect(Guavate.toImmutableList())));
+        return Throwing.function(pair -> pair.getLeft()
+            .toMailboxMessage(pair.getRight()
+                .collect(Guavate.toImmutableList())));
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/james-project/blob/4ed7c609/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java
----------------------------------------------------------------------
diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java
index 5817bcc..69ae3ad 100644
--- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java
+++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraMessageMapper.java
@@ -151,8 +151,13 @@ public class CassandraMessageMapper implements MessageMapper {
 
     private Stream<SimpleMailboxMessage> retrieveMessages(List<ComposedMessageIdWithMetaData> messageIds, FetchType fetchType, Optional<Integer> limit) {
         return messageDAO.retrieveMessages(messageIds, fetchType, limit).join()
-                .map(pair -> Pair.of(pair.getLeft(), new AttachmentLoader(attachmentMapper).getAttachments(pair.getRight().collect(Guavate.toImmutableSet()))))
-                .map(Throwing.function(pair -> pair.getLeft().toMailboxMessage(pair.getRight().stream().collect(Guavate.toImmutableList()))));
+            .map(pair -> Pair.of(pair.getLeft(), new AttachmentLoader(attachmentMapper)
+                .getAttachments(pair.getRight()
+                    .collect(Guavate.toImmutableList()))))
+            .map(Throwing.function(pair -> pair.getLeft()
+                .toMailboxMessage(pair.getRight()
+                    .stream()
+                    .collect(Guavate.toImmutableList()))));
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/james-project/blob/4ed7c609/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoaderTest.java
----------------------------------------------------------------------
diff --git a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoaderTest.java b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoaderTest.java
index 72e0607..999a26f 100644
--- a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoaderTest.java
+++ b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/AttachmentLoaderTest.java
@@ -39,7 +39,6 @@ import org.junit.Test;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Sets;
 
 public class AttachmentLoaderTest {
 
@@ -53,6 +52,31 @@ public class AttachmentLoaderTest {
     }
 
     @Test
+    public void getAttachmentsShouldWorkWithDuplicatedAttachments() {
+        AttachmentId attachmentId = AttachmentId.from("1");
+        Set<AttachmentId> attachmentIds = ImmutableSet.of(attachmentId);
+
+        Attachment attachment = Attachment.builder()
+            .attachmentId(attachmentId)
+            .bytes("attachment".getBytes())
+            .type("type")
+            .build();
+        when(attachmentMapper.getAttachments(attachmentIds))
+            .thenReturn(ImmutableList.of(attachment));
+
+        Optional<String> name = Optional.of("name1");
+        Optional<Cid> cid = Optional.empty();
+        boolean isInlined = false;
+        CassandraMessageDAO.MessageAttachmentRepresentation attachmentRepresentation = new CassandraMessageDAO.MessageAttachmentRepresentation(attachmentId, name, cid, isInlined);
+
+        Collection<MessageAttachment> attachments = testee.getAttachments(ImmutableList.of(attachmentRepresentation, attachmentRepresentation));
+
+        MessageAttachment expectedAttachment = new MessageAttachment(attachment, OptionalConverter.toGuava(name), OptionalConverter.toGuava(cid), isInlined);
+        assertThat(attachments).hasSize(2)
+            .containsOnly(expectedAttachment, expectedAttachment);
+    }
+
+    @Test
     public void getAttachmentsShouldWorkWithDuplicatedIds() {
         AttachmentId attachmentId = AttachmentId.from("1");
         Set<AttachmentId> attachmentIds = ImmutableSet.of(attachmentId);
@@ -72,7 +96,7 @@ public class AttachmentLoaderTest {
         CassandraMessageDAO.MessageAttachmentRepresentation attachmentRepresentation1 = new CassandraMessageDAO.MessageAttachmentRepresentation(attachmentId, name1, cid, isInlined);
         CassandraMessageDAO.MessageAttachmentRepresentation attachmentRepresentation2 = new CassandraMessageDAO.MessageAttachmentRepresentation(attachmentId, name2, cid, isInlined);
 
-        Collection<MessageAttachment> attachments = testee.getAttachments(Sets.newHashSet(attachmentRepresentation1, attachmentRepresentation2));
+        Collection<MessageAttachment> attachments = testee.getAttachments(ImmutableList.of(attachmentRepresentation1, attachmentRepresentation2));
 
         assertThat(attachments).hasSize(2)
             .containsOnly(new MessageAttachment(attachment, OptionalConverter.toGuava(name1), OptionalConverter.toGuava(cid), isInlined),
@@ -105,7 +129,7 @@ public class AttachmentLoaderTest {
         CassandraMessageDAO.MessageAttachmentRepresentation attachmentRepresentation1 = new CassandraMessageDAO.MessageAttachmentRepresentation(attachmentId1, name1, cid, isInlined);
         CassandraMessageDAO.MessageAttachmentRepresentation attachmentRepresentation2 = new CassandraMessageDAO.MessageAttachmentRepresentation(attachmentId2, name2, cid, isInlined);
 
-        Collection<MessageAttachment> attachments = testee.getAttachments(Sets.newHashSet(attachmentRepresentation1, attachmentRepresentation2));
+        Collection<MessageAttachment> attachments = testee.getAttachments(ImmutableList.of(attachmentRepresentation1, attachmentRepresentation2));
 
         assertThat(attachments).hasSize(2)
             .containsOnly(new MessageAttachment(attachment1, OptionalConverter.toGuava(name1), OptionalConverter.toGuava(cid), isInlined),
@@ -125,7 +149,7 @@ public class AttachmentLoaderTest {
         when(attachmentMapper.getAttachments(attachmentIds))
             .thenReturn(ImmutableList.of(attachment));
 
-        Collection<MessageAttachment> attachments = testee.getAttachments(Sets.newHashSet());
+        Collection<MessageAttachment> attachments = testee.getAttachments(ImmutableList.of());
 
         assertThat(attachments).isEmpty();
     }


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


[2/3] james-project git commit: JAMES-1898 Add integration test for duplicated attachment

Posted by ro...@apache.org.
JAMES-1898 Add integration test for duplicated attachment


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

Branch: refs/heads/master
Commit: 1c27eb6d6abcd73664b57f360e55ceb222d9b719
Parents: 4ed7c60
Author: Benoit Tellier <bt...@linagora.com>
Authored: Mon Dec 26 16:16:42 2016 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Mon Dec 26 16:21:49 2016 +0700

----------------------------------------------------------------------
 .../cucumber/GetMessagesMethodStepdefs.java     |  5 ++
 .../test/resources/cucumber/GetMessages.feature |  8 +-
 .../test/resources/eml/twoSameAttachments.eml   | 77 ++++++++++++++++++++
 3 files changed, 89 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/1c27eb6d/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java
----------------------------------------------------------------------
diff --git a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java
index f699b51..26b1e29 100644
--- a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java
+++ b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/cucumber/GetMessagesMethodStepdefs.java
@@ -152,6 +152,11 @@ public class GetMessagesMethodStepdefs {
         appendMessage(messageName, "eml/twoAttachmentsTextPlain.eml");
     }
 
+    @Given("^the user has a message \"([^\"]*)\" in \"([^\"]*)\" mailbox with two same attachments in text$")
+    public void appendTextMessageWithTwoSameAttachments(String messageName, String mailbox) throws Throwable {
+        appendMessage(messageName, "eml/twoSameAttachments.eml");
+    }
+
     @Given("^the user has a multipart message \"([^\"]*)\" in \"([^\"]*)\" mailbox$")
     public void appendMultipartMessageWithOneAttachments(String messageName, String arg1) throws Throwable {
         appendMessage(messageName, "eml/htmlAndTextMultipartWithOneAttachment.eml");

http://git-wip-us.apache.org/repos/asf/james-project/blob/1c27eb6d/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature
----------------------------------------------------------------------
diff --git a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature
index 6d78cfd..a559e08 100644
--- a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature
+++ b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/cucumber/GetMessages.feature
@@ -202,9 +202,15 @@ Feature: GetMessages method
     And the textBody of the message is "Hello text body\n"
     And the htmlBody of the message is "<html>Hello html body</html>\n"
     
-Scenario: Retrieving message with more than 1000 char by line should return message when exists
+  Scenario: Retrieving message with more than 1000 char by line should return message when exists
     Given the user has a message "m1" in "inbox" mailbox beginning by a long line
     When the user ask for messages "m1"
     Then no error is returned
     And the list should contain 1 message
     And the id of the message is "m1"
+
+  Scenario:
+    Given the user has a message "m1" in "inbox" mailbox with two same attachments in text
+    When the user ask for messages "m1"
+    Then no error is returned
+    And the list of attachments of the message contains 2 attachments
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/james-project/blob/1c27eb6d/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/eml/twoSameAttachments.eml
----------------------------------------------------------------------
diff --git a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/eml/twoSameAttachments.eml b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/eml/twoSameAttachments.eml
new file mode 100644
index 0000000..b76a6fe
--- /dev/null
+++ b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/resources/eml/twoSameAttachments.eml
@@ -0,0 +1,77 @@
+Return-Path: <fr...@linagora.com>
+Received: from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])
+	 by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;
+	 Fri, 27 Feb 2015 20:32:14 +0100
+X-Sieve: CMU Sieve 2.2
+Received: from canondir.par.lng (unknown [92.103.166.6])
+	(using TLSv1 with cipher AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by alderaan.linagora.com (Postfix) with ESMTPSA id BAB0D728
+	for <to...@linagora.com>; Fri, 27 Feb 2015 20:31:38 +0100 (CET)
+X-Priority: 3 (Normal)
+From: "From"
+ <fr...@linagora.com>
+To: "To"
+ <to...@linagora.com>
+Subject: [8/10]Attached Image light with text
+Date: Fri, 27 Mar 2015 21:48:38 +0100
+Message-Id: <20...@canondir.par.lng>
+Mime-Version: 1.0
+Content-Type: multipart/mixed;
+ boundary="AHNPACBLDCDIDAGGGDDFAABECGCA"
+
+--AHNPACBLDCDIDAGGGDDFAABECGCA
+Content-Type: text/html; charset=utf-8; format=flowed
+Content-Transfer-Encoding: 8bit
+
+<b>html</b>
+
+--AHNPACBLDCDIDAGGGDDFAABECGCA
+Content-Type: image/jpeg;
+ name="4037_014.jpg"
+Content-Transfer-Encoding: base64
+Content-Disposition: attachment;
+ filename="4037_014.jpg"
+
+/9j/4X2cRXhpZgAASUkqAAgAAAANAA8BAgAKAAAAqgAAABABAgAJAAAAtAAAABIBAwABAAAA
+AQAAABoBBQABAAAAvgAAABsBBQABAAAAxgAAACgBAwABAAAAAgAAADEBAgAKAAAAzgAAADIB
+AgAUAAAA2AAAABMCAwABAAAAAgAAAGmHBAABAAAAfAIAAKXEBwDQAAAA7AAAANLGBwBAAAAA
+vAEAANPGBwCAAAAA/AEAAEwqAABQYW5hc29uaWMARE1DLUZaNDUAALQAAAABAAAAtAAAAAEA
+AABWZXIuMS4wICAAMjAxNDowMjoyNSAxMDozMjowOQBQcmludElNADAyNTAAAA4AAQAWABYA
+AgAAAAAAAwBkAAAABwAAAAAACAAAAAAACQAAAAAACgAAAAAACwCsAAAADAAAAAAADQAAAAAA
+DgDEAAAAAAEFAAAAAQEBAAAAEAGAAAAACREAABAnAAALDwAAECcAAJcFAAAQJwAAsAgAABAn
+AAABHAAAECcAAF4CAAAQJwAAiwAAABAnAADLAwAAECcAAOUbAAAQJwAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+
+--AHNPACBLDCDIDAGGGDDFAABECGCA
+Content-Type: image/jpeg;
+ name="4037_014.jpg"
+Content-Transfer-Encoding: base64
+Content-Disposition: attachment;
+ filename="4037_014.jpg"
+
+/9j/4X2cRXhpZgAASUkqAAgAAAANAA8BAgAKAAAAqgAAABABAgAJAAAAtAAAABIBAwABAAAA
+AQAAABoBBQABAAAAvgAAABsBBQABAAAAxgAAACgBAwABAAAAAgAAADEBAgAKAAAAzgAAADIB
+AgAUAAAA2AAAABMCAwABAAAAAgAAAGmHBAABAAAAfAIAAKXEBwDQAAAA7AAAANLGBwBAAAAA
+vAEAANPGBwCAAAAA/AEAAEwqAABQYW5hc29uaWMARE1DLUZaNDUAALQAAAABAAAAtAAAAAEA
+AABWZXIuMS4wICAAMjAxNDowMjoyNSAxMDozMjowOQBQcmludElNADAyNTAAAA4AAQAWABYA
+AgAAAAAAAwBkAAAABwAAAAAACAAAAAAACQAAAAAACgAAAAAACwCsAAAADAAAAAAADQAAAAAA
+DgDEAAAAAAEFAAAAAQEBAAAAEAGAAAAACREAABAnAAALDwAAECcAAJcFAAAQJwAAsAgAABAn
+AAABHAAAECcAAF4CAAAQJwAAiwAAABAnAADLAwAAECcAAOUbAAAQJwAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+
+--AHNPACBLDCDIDAGGGDDFAABECGCA


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


[3/3] james-project git commit: Merge remote-tracking branch 'benoit/JAMES-1898'

Posted by ro...@apache.org.
Merge remote-tracking branch 'benoit/JAMES-1898'


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

Branch: refs/heads/master
Commit: 20e6f63b99d1914aa429466a5eea575ba15d5b6f
Parents: 0a11a44 1c27eb6
Author: Raphael Ouazana <ra...@linagora.com>
Authored: Fri Jan 6 11:46:32 2017 +0100
Committer: Raphael Ouazana <ra...@linagora.com>
Committed: Fri Jan 6 11:46:32 2017 +0100

----------------------------------------------------------------------
 .../cassandra/mail/AttachmentLoader.java        |  5 +-
 .../mail/CassandraMessageIdMapper.java          |  8 +-
 .../cassandra/mail/CassandraMessageMapper.java  |  9 ++-
 .../cassandra/mail/AttachmentLoaderTest.java    | 32 +++++++-
 .../cucumber/GetMessagesMethodStepdefs.java     |  5 ++
 .../test/resources/cucumber/GetMessages.feature |  8 +-
 .../test/resources/eml/twoSameAttachments.eml   | 77 ++++++++++++++++++++
 7 files changed, 133 insertions(+), 11 deletions(-)
----------------------------------------------------------------------



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