MAILBOX-265 FetchType FULL should be used when computing and reading Mime 
structure


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

Branch: refs/heads/master
Commit: 16cbae9fea243f68ba3ce94b16e5b58cdeaf7aaf
Parents: 7a86fe1
Author: Benoit Tellier <[email protected]>
Authored: Thu Mar 3 14:50:31 2016 +0700
Committer: Benoit Tellier <[email protected]>
Committed: Fri Mar 4 19:35:24 2016 +0700

----------------------------------------------------------------------
 .../java/org/apache/james/mailbox/model/FetchGroupImpl.java    | 6 ++----
 .../apache/james/mailbox/store/StoreMessageResultIterator.java | 5 ++++-
 .../mailbox/store/StoreMailboxMessageResultIteratorTest.java   | 3 ++-
 .../org/apache/james/mailbox/copier/MailboxCopierImpl.java     | 3 ++-
 .../org/apache/james/pop3server/mailbox/MailboxAdapter.java    | 3 ++-
 5 files changed, 12 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/16cbae9f/mailbox/api/src/main/java/org/apache/james/mailbox/model/FetchGroupImpl.java
----------------------------------------------------------------------
diff --git 
a/mailbox/api/src/main/java/org/apache/james/mailbox/model/FetchGroupImpl.java 
b/mailbox/api/src/main/java/org/apache/james/mailbox/model/FetchGroupImpl.java
index b7faba7..38d4bd1 100644
--- 
a/mailbox/api/src/main/java/org/apache/james/mailbox/model/FetchGroupImpl.java
+++ 
b/mailbox/api/src/main/java/org/apache/james/mailbox/model/FetchGroupImpl.java
@@ -42,16 +42,14 @@ public class FetchGroupImpl implements 
MessageResult.FetchGroup {
     private Set<PartContentDescriptor> partContentDescriptors;
 
     public FetchGroupImpl() {
-        super();
+        this(0, new HashSet<PartContentDescriptor>());
     }
 
     public FetchGroupImpl(int content) {
-        super();
-        this.content = content;
+        this(content, new HashSet<PartContentDescriptor>());
     }
 
     public FetchGroupImpl(int content, Set<PartContentDescriptor> 
partContentDescriptors) {
-        super();
         this.content = content;
         this.partContentDescriptors = partContentDescriptors;
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/16cbae9f/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageResultIterator.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageResultIterator.java
 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageResultIterator.java
index 4e2b635..6741352 100644
--- 
a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageResultIterator.java
+++ 
b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageResultIterator.java
@@ -82,7 +82,10 @@ public class StoreMessageResultIterator<Id extends 
MailboxId> implements Message
             headers = true;
             content -= FetchGroup.HEADERS;
         }
-        if ((content & FetchGroup.BODY_CONTENT) > 0) {
+        if (group.getPartContentDescriptors().size() > 0) {
+            full = true;
+        }
+        if ((content & FetchGroup.BODY_CONTENT ) > 0 ) {
             body = true;
             content -= FetchGroup.BODY_CONTENT;
         }

http://git-wip-us.apache.org/repos/asf/james-project/blob/16cbae9f/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxMessageResultIteratorTest.java
----------------------------------------------------------------------
diff --git 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxMessageResultIteratorTest.java
 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxMessageResultIteratorTest.java
index de9e35d..b60e238 100644
--- 
a/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxMessageResultIteratorTest.java
+++ 
b/mailbox/store/src/test/java/org/apache/james/mailbox/store/StoreMailboxMessageResultIteratorTest.java
@@ -22,6 +22,7 @@ package org.apache.james.mailbox.store;
 import static org.assertj.core.api.Assertions.assertThat;
 
 import java.util.ArrayList;
+import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
@@ -50,7 +51,7 @@ public class StoreMailboxMessageResultIteratorTest {
     private final class TestFetchGroup implements FetchGroup {
         @Override
         public Set<PartContentDescriptor> getPartContentDescriptors() {
-            return null;
+            return new HashSet<PartContentDescriptor>();
         }
 
         @Override

http://git-wip-us.apache.org/repos/asf/james-project/blob/16cbae9f/mailbox/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java
----------------------------------------------------------------------
diff --git 
a/mailbox/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java
 
b/mailbox/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java
index a52761d..9cab809 100644
--- 
a/mailbox/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java
+++ 
b/mailbox/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java
@@ -20,6 +20,7 @@ package org.apache.james.mailbox.copier;
 
 import java.io.IOException;
 import java.util.Calendar;
+import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
@@ -54,7 +55,7 @@ public class MailboxCopierImpl implements MailboxCopier {
 
         @Override
         public Set<PartContentDescriptor> getPartContentDescriptors() {
-            return null;
+            return new HashSet<PartContentDescriptor>();
         }
         
     };

http://git-wip-us.apache.org/repos/asf/james-project/blob/16cbae9f/server/protocols/protocols-pop3/src/main/java/org/apache/james/pop3server/mailbox/MailboxAdapter.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/protocols-pop3/src/main/java/org/apache/james/pop3server/mailbox/MailboxAdapter.java
 
b/server/protocols/protocols-pop3/src/main/java/org/apache/james/pop3server/mailbox/MailboxAdapter.java
index 248e202..f018009 100644
--- 
a/server/protocols/protocols-pop3/src/main/java/org/apache/james/pop3server/mailbox/MailboxAdapter.java
+++ 
b/server/protocols/protocols-pop3/src/main/java/org/apache/james/pop3server/mailbox/MailboxAdapter.java
@@ -22,6 +22,7 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.Collections;
+import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
@@ -43,7 +44,7 @@ public class MailboxAdapter implements Mailbox {
     private static abstract class POP3FetchGroup implements FetchGroup {
         @Override
         public Set<PartContentDescriptor> getPartContentDescriptors() {
-            return null;
+            return new HashSet<PartContentDescriptor>();
         }
     }
 


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

Reply via email to