Repository: james-project Updated Branches: refs/heads/master ea8c19fc1 -> 5d1cb7d96
JAMES-2187 Import MailboxACL.Right inside StoreMessageIdManager Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/0f1501c0 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/0f1501c0 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/0f1501c0 Branch: refs/heads/master Commit: 0f1501c00c66d141df5bfeaa9826cc90a215fabc Parents: 49d36aa Author: quynhn <qngu...@linagora.com> Authored: Tue Oct 17 10:17:28 2017 +0700 Committer: Matthieu Baechler <matth...@apache.org> Committed: Fri Oct 20 12:34:51 2017 +0200 ---------------------------------------------------------------------- .../mailbox/store/StoreMessageIdManager.java | 24 ++++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/0f1501c0/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java ---------------------------------------------------------------------- diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java index 6e4bd60..67fbdfe 100644 --- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java +++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMessageIdManager.java @@ -41,7 +41,7 @@ import org.apache.james.mailbox.MessageManager; import org.apache.james.mailbox.MessageUid; import org.apache.james.mailbox.exception.MailboxException; import org.apache.james.mailbox.exception.MailboxNotFoundException; -import org.apache.james.mailbox.model.MailboxACL; +import org.apache.james.mailbox.model.MailboxACL.Right; import org.apache.james.mailbox.model.MailboxId; import org.apache.james.mailbox.model.MessageAttachment; import org.apache.james.mailbox.model.MessageId; @@ -96,7 +96,7 @@ public class StoreMessageIdManager implements MessageIdManager { public void setFlags(Flags newState, MessageManager.FlagsUpdateMode replace, MessageId messageId, List<MailboxId> mailboxIds, MailboxSession mailboxSession) throws MailboxException { MessageIdMapper messageIdMapper = mailboxSessionMapperFactory.getMessageIdMapper(mailboxSession); - assertRightsOnMailboxes(mailboxIds, mailboxSession, MailboxACL.Right.Write); + assertRightsOnMailboxes(mailboxIds, mailboxSession, Right.Write); Map<MailboxId, UpdatedFlags> updatedFlags = messageIdMapper.setFlags(messageId, mailboxIds, newState, replace); for (Map.Entry<MailboxId, UpdatedFlags> entry : updatedFlags.entrySet()) { @@ -109,7 +109,7 @@ public class StoreMessageIdManager implements MessageIdManager { MessageIdMapper messageIdMapper = mailboxSessionMapperFactory.getMessageIdMapper(mailboxSession); List<MailboxMessage> messageList = messageIdMapper.find(messageIds, MessageMapper.FetchType.Metadata); return messageList.stream() - .filter(hasRightsOn(mailboxSession, MailboxACL.Right.Read)) + .filter(hasRightsOn(mailboxSession, Right.Read)) .map(message -> message.getComposedMessageIdWithMetaData().getComposedMessageId().getMessageId()) .collect(Guavate.toImmutableSet()); } @@ -123,7 +123,7 @@ public class StoreMessageIdManager implements MessageIdManager { ImmutableSet<MailboxId> allowedMailboxIds = messageList.stream() .map(MailboxMessage::getMailboxId) .distinct() - .filter(hasRightsOnMailbox(mailboxSession, MailboxACL.Right.Read)) + .filter(hasRightsOnMailbox(mailboxSession, Right.Read)) .collect(Guavate.toImmutableSet()); return messageList.stream() @@ -140,7 +140,7 @@ public class StoreMessageIdManager implements MessageIdManager { MessageIdMapper messageIdMapper = mailboxSessionMapperFactory.getMessageIdMapper(mailboxSession); MailboxMapper mailboxMapper = mailboxSessionMapperFactory.getMailboxMapper(mailboxSession); - assertRightsOnMailboxes(mailboxIds, mailboxSession, MailboxACL.Right.DeleteMessages); + assertRightsOnMailboxes(mailboxIds, mailboxSession, Right.DeleteMessages); ImmutableList<MetadataWithMailboxId> metadatasWithMailbox = messageIdMapper.find(ImmutableList.of(messageId), MessageMapper.FetchType.Metadata) .stream() @@ -162,11 +162,11 @@ public class StoreMessageIdManager implements MessageIdManager { MessageIdMapper messageIdMapper = mailboxSessionMapperFactory.getMessageIdMapper(mailboxSession); MailboxMapper mailboxMapper = mailboxSessionMapperFactory.getMailboxMapper(mailboxSession); - assertRightsOnMailboxes(mailboxIds, mailboxSession, MailboxACL.Right.Read); + assertRightsOnMailboxes(mailboxIds, mailboxSession, Right.Read); List<MailboxMessage> mailboxMessages = messageIdMapper.find(ImmutableList.of(messageId), MessageMapper.FetchType.Metadata) .stream() - .filter(hasRightsOn(mailboxSession, MailboxACL.Right.Read)) + .filter(hasRightsOn(mailboxSession, Right.Read)) .collect(Guavate.toImmutableList()); if (!mailboxMessages.isEmpty()) { @@ -178,8 +178,8 @@ public class StoreMessageIdManager implements MessageIdManager { List<MailboxId> mailboxesToRemove = ImmutableList.copyOf(Sets.difference(currentMailboxes, targetMailboxes)); SetView<MailboxId> mailboxesToAdd = Sets.difference(targetMailboxes, currentMailboxes); - assertRightsOnMailboxes(mailboxesToAdd, mailboxSession, MailboxACL.Right.Insert); - assertRightsOnMailboxes(mailboxesToRemove, mailboxSession, MailboxACL.Right.DeleteMessages); + assertRightsOnMailboxes(mailboxesToAdd, mailboxSession, Right.Insert); + assertRightsOnMailboxes(mailboxesToRemove, mailboxSession, Right.DeleteMessages); MailboxMessage mailboxMessage = mailboxMessages.get(0); validateQuota(mailboxesToAdd, mailboxesToRemove, mailboxSession, mailboxMessage); @@ -279,16 +279,16 @@ public class StoreMessageIdManager implements MessageIdManager { return mailboxMessage -> mailboxIds.contains(mailboxMessage.getMailboxId()); } - private Predicate<MailboxMessage> hasRightsOn(MailboxSession session, MailboxACL.Right... rights) { + private Predicate<MailboxMessage> hasRightsOn(MailboxSession session, Right... rights) { return message -> hasRightsOnMailbox(session, rights).test(message.getMailboxId()); } - private Predicate<MailboxId> hasRightsOnMailbox(MailboxSession session, MailboxACL.Right... rights) { + private Predicate<MailboxId> hasRightsOnMailbox(MailboxSession session, Right... rights) { return Throwing.predicate((MailboxId mailboxId) -> mailboxManager.myRights(mailboxId, session).contains(rights)) .fallbackTo(any -> false); } - private void assertRightsOnMailboxes(Collection<MailboxId> mailboxIds, MailboxSession mailboxSession, MailboxACL.Right... rights) throws MailboxNotFoundException { + private void assertRightsOnMailboxes(Collection<MailboxId> mailboxIds, MailboxSession mailboxSession, Right... rights) throws MailboxNotFoundException { Optional<MailboxId> mailboxForbidden = mailboxIds.stream() .filter(hasRightsOnMailbox(mailboxSession, rights).negate()) .findFirst(); --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org