JAMES-2214 Remove redundant OUTBOX checking When we reached the code about saving message in Outbox, we already enforced the message should only be in outbox, hence that code was not needed.
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/d324caac Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/d324caac Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/d324caac Branch: refs/heads/master Commit: d324caac0d6ac35460893f2ee5ccc8d991ea94b2 Parents: e3ffd2b Author: benwa <[email protected]> Authored: Mon Nov 13 09:46:33 2017 +0700 Committer: benwa <[email protected]> Committed: Wed Nov 15 17:59:48 2017 +0700 ---------------------------------------------------------------------- .../james/jmap/methods/SetMessagesCreationProcessor.java | 9 +-------- .../java/org/apache/james/jmap/model/CreationMessage.java | 2 +- 2 files changed, 2 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/d324caac/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java ---------------------------------------------------------------------- diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java index 045bf37..e2d13da 100644 --- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java +++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/methods/SetMessagesCreationProcessor.java @@ -234,9 +234,6 @@ public class SetMessagesCreationProcessor implements SetMessagesProcessor { private MessageWithId handleOutboxMessages(CreationMessageEntry entry, MailboxSession session) throws MailboxException, MessagingException { MessageManager outbox = getMailboxWithRole(session, Role.OUTBOX).orElseThrow(() -> new MailboxNotFoundException(Role.OUTBOX.serialize())); - if (!isRequestForSending(entry.getValue(), session)) { - throw new IllegalStateException("Messages for everything but outbox should have been filtered earlier"); - } MetaDataWithContent newMessage = messageAppender.createMessageInMailbox(entry, outbox, session); Message jmapMessage = messageFactory.fromMetaDataWithContent(newMessage); messageSender.sendMessage(jmapMessage, newMessage, session); @@ -245,7 +242,7 @@ public class SetMessagesCreationProcessor implements SetMessagesProcessor { private boolean isAppendToMailboxWithRole(Role role, CreationMessage entry, MailboxSession mailboxSession) throws MailboxException { return getMailboxWithRole(mailboxSession, role) - .map(entry::isInOnly) + .map(entry::isOnlyIn) .orElse(false); } @@ -275,8 +272,4 @@ public class SetMessagesCreationProcessor implements SetMessagesProcessor { .collect(Collectors.toSet()); } - private boolean isRequestForSending(CreationMessage creationMessage, MailboxSession session) throws MailboxException { - return isAppendToMailboxWithRole(Role.OUTBOX, creationMessage, session); - } - } http://git-wip-us.apache.org/repos/asf/james-project/blob/d324caac/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/CreationMessage.java ---------------------------------------------------------------------- diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/CreationMessage.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/CreationMessage.java index 73bbf9d..097d172 100644 --- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/CreationMessage.java +++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/model/CreationMessage.java @@ -371,7 +371,7 @@ public class CreationMessage { return mailboxIds.contains(mailbox.getId().serialize()); } - public boolean isInOnly(MessageManager mailbox) { + public boolean isOnlyIn(MessageManager mailbox) { return isIn(mailbox) && mailboxIds.size() == 1; } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
