Package com.google.gerrit.server.account
Class ListGroupMembership
- java.lang.Object
-
- com.google.gerrit.server.account.ListGroupMembership
-
- All Implemented Interfaces:
GroupMembership
public class ListGroupMembership extends Object implements GroupMembership
GroupMembership over an explicit list.
-
-
Field Summary
-
Fields inherited from interface com.google.gerrit.server.account.GroupMembership
EMPTY
-
-
Constructor Summary
Constructors Constructor Description ListGroupMembership(Iterable<AccountGroup.UUID> groupIds)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
contains(AccountGroup.UUID groupId)
Returnstrue
when the user this object was created for is a member of the specified group.boolean
containsAnyOf(Iterable<AccountGroup.UUID> groupIds)
Returnstrue
when the user this object was created for is a member of any of the specified group.Set<AccountGroup.UUID>
getKnownGroups()
Returns the set of groups that can be determined by the implementation.Set<AccountGroup.UUID>
intersection(Iterable<AccountGroup.UUID> groupIds)
Returns a set containing an input member ofcontains(id)
is true.
-
-
-
Constructor Detail
-
ListGroupMembership
public ListGroupMembership(Iterable<AccountGroup.UUID> groupIds)
-
-
Method Detail
-
contains
public boolean contains(AccountGroup.UUID groupId)
Description copied from interface:GroupMembership
Returnstrue
when the user this object was created for is a member of the specified group.- Specified by:
contains
in interfaceGroupMembership
-
containsAnyOf
public boolean containsAnyOf(Iterable<AccountGroup.UUID> groupIds)
Description copied from interface:GroupMembership
Returnstrue
when the user this object was created for is a member of any of the specified group.- Specified by:
containsAnyOf
in interfaceGroupMembership
-
intersection
public Set<AccountGroup.UUID> intersection(Iterable<AccountGroup.UUID> groupIds)
Description copied from interface:GroupMembership
Returns a set containing an input member ofcontains(id)
is true.This is batch form of contains that returns specific group information. Implementors may implement the method as:
Set<AccountGroup.UUID> r = new HashSet<>(); for (AccountGroup.UUID id : groupIds) if (contains(id)) r.add(id);
- Specified by:
intersection
in interfaceGroupMembership
-
getKnownGroups
public Set<AccountGroup.UUID> getKnownGroups()
Description copied from interface:GroupMembership
Returns the set of groups that can be determined by the implementation. This may not return all groups theGroupMembership.contains(AccountGroup.UUID)
would returntrue
for, but will at least contain all top level groups. This restriction stems from the API of some group systems, which make it expensive to enumerate the members of a group.- Specified by:
getKnownGroups
in interfaceGroupMembership
-
-