This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit e8c2f63ac4ce7414db349cee066a2ea00511d23c Author: Benoit Tellier <[email protected]> AuthorDate: Wed Nov 27 03:16:04 2019 +0100 JAMES-2988 Use the smallest fetch group possible upon GetMessages --- .../james/jmap/draft/methods/GetMessagesMethod.java | 3 +-- .../apache/james/jmap/draft/model/MessageProperties.java | 16 ++++++++++++---- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/GetMessagesMethod.java b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/GetMessagesMethod.java index 01c2c25..f4a8315 100644 --- a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/GetMessagesMethod.java +++ b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/GetMessagesMethod.java @@ -39,7 +39,6 @@ import org.apache.james.jmap.draft.model.message.view.MetaMessageViewFactory; import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.MessageIdManager; import org.apache.james.mailbox.exception.MailboxException; -import org.apache.james.mailbox.model.FetchGroup; import org.apache.james.mailbox.model.MessageResult; import org.apache.james.metrics.api.MetricFactory; import org.apache.james.util.MDCBuilder; @@ -128,7 +127,7 @@ public class GetMessagesMethod implements Method { return GetMessagesResponse.builder() .messages( - messageIdManager.getMessages(getMessagesRequest.getIds(), FetchGroup.FULL_CONTENT, mailboxSession) + messageIdManager.getMessages(getMessagesRequest.getIds(), readProfile.getFetchGroup(), mailboxSession) .stream() .collect(Guavate.toImmutableListMultimap(MessageResult::getMessageId)) .asMap() diff --git a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/model/MessageProperties.java b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/model/MessageProperties.java index b2cadee..12fa16a 100644 --- a/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/model/MessageProperties.java +++ b/server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/model/MessageProperties.java @@ -24,6 +24,8 @@ import java.util.Objects; import java.util.Optional; import java.util.stream.Stream; +import org.apache.james.mailbox.model.FetchGroup; + import com.github.steveash.guavate.Guavate; import com.google.common.base.MoreObjects; import com.google.common.base.Preconditions; @@ -213,9 +215,9 @@ public class MessageProperties { } public enum ReadProfile { - Metadata(0), - Header(1), - Full(2); + Metadata(0, FetchGroup.MINIMAL), + Header(1, FetchGroup.HEADERS), + Full(2, FetchGroup.FULL_CONTENT); static ReadProfile combine(ReadProfile readProfile1, ReadProfile readProfile2) { if (readProfile1.priority > readProfile2.priority) { @@ -225,9 +227,15 @@ public class MessageProperties { } private final int priority; + private final FetchGroup fetchGroup; - ReadProfile(int priority) { + ReadProfile(int priority, FetchGroup fetchGroup) { this.priority = priority; + this.fetchGroup = fetchGroup; + } + + public FetchGroup getFetchGroup() { + return fetchGroup; } } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
