JAMES-2186 RFC4314Rights: Allow to check several rights at once
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/86d9aef1 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/86d9aef1 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/86d9aef1 Branch: refs/heads/master Commit: 86d9aef1790165999d88f180dd287aceaaff6282 Parents: 40303f7 Author: benwa <btell...@linagora.com> Authored: Mon Oct 16 16:43:25 2017 +0700 Committer: Matthieu Baechler <matth...@apache.org> Committed: Fri Oct 20 12:34:51 2017 +0200 ---------------------------------------------------------------------- .../apache/james/mailbox/model/MailboxACL.java | 4 ++++ .../james/mailbox/model/Rfc4314RightsTest.java | 20 ++++++++++++++++++++ 2 files changed, 24 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/86d9aef1/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxACL.java ---------------------------------------------------------------------- diff --git a/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxACL.java b/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxACL.java index a38e601..1f7a5be 100644 --- a/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxACL.java +++ b/mailbox/api/src/main/java/org/apache/james/mailbox/model/MailboxACL.java @@ -224,6 +224,10 @@ public class MailboxACL { return value.contains(right); } + public boolean contains(Right... rights) { + return value.containsAll(Arrays.asList(rights)); + } + public boolean equals(Object o) { if (o instanceof Rfc4314Rights) { Rfc4314Rights that = (Rfc4314Rights) o; http://git-wip-us.apache.org/repos/asf/james-project/blob/86d9aef1/mailbox/api/src/test/java/org/apache/james/mailbox/model/Rfc4314RightsTest.java ---------------------------------------------------------------------- diff --git a/mailbox/api/src/test/java/org/apache/james/mailbox/model/Rfc4314RightsTest.java b/mailbox/api/src/test/java/org/apache/james/mailbox/model/Rfc4314RightsTest.java index 33b91fb..0e58229 100644 --- a/mailbox/api/src/test/java/org/apache/james/mailbox/model/Rfc4314RightsTest.java +++ b/mailbox/api/src/test/java/org/apache/james/mailbox/model/Rfc4314RightsTest.java @@ -212,4 +212,24 @@ public class Rfc4314RightsTest { public void unionShouldThrowWhenAppliedWithNull() throws UnsupportedRightException { assertThatThrownBy(() -> lprs.union(null)).isInstanceOf(NullPointerException.class); } + + @Test + public void containsShouldReturnFalseWhenRightNotPresent() throws UnsupportedRightException { + assertThat(lprs.contains(Write)).isFalse(); + } + + @Test + public void containsShouldReturnFalseWhenAtLeastOneRightNotPresent() throws UnsupportedRightException { + assertThat(lprs.contains(Lookup, Write)).isFalse(); + } + + @Test + public void containsShouldReturnTrueWhenAllRightsPresent() throws UnsupportedRightException { + assertThat(lprs.contains(Lookup, Post)).isTrue(); + } + + @Test + public void containsShouldReturnTrueWhenNonRightsPresent() throws UnsupportedRightException { + assertThat(lprs.contains()).isTrue(); + } } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org