public interface MembershipCache
Modifier and Type | Method and Description |
---|---|
List<String> |
getGroupsForGroup(long directoryId,
String groupName)
Returns the list of groups names which the named group is a member of in the specified directory.
|
List<String> |
getGroupsForUser(long directoryId,
String userName)
Returns the list of groups names which the named user is a member of in the specified directory.
|
Boolean |
isGroupDirectMember(long directoryId,
String childGroupName,
String parentGroupName)
Returns
true if the parentGroupName is in the cached list of parents of the child group,
false if parentGroupName is not in the list, or null if there is no cached list for the child group. |
Boolean |
isUserDirectMember(long directoryId,
String userName,
String groupName)
Returns
true if the groupName is in the cached list of parents of the user, false
if groupName is not in the list, or null if there is no cached list for the user. |
void |
removeAllDirectoryMemberships(long directoryId)
Removes any entries in the cache which relate to the specified directory.
|
void |
removeAllGroupMemberships(long directoryId,
String groupName)
Removes any entries in the cache which contain the groupName in the specified directory.
|
void |
removeAllUserMemberships(long directoryId,
String userName)
Removes any entries in the cache which contain the userName in the specified directory.
|
void |
removeGroupGroupMemberships(long directoryId,
String groupName)
Removes any cached list of group names which are members of the named group in the specified directory.
|
void |
removeUserGroupMemberships(long directoryId,
String userName)
Removes any cached list of user names which are members of the named group in the specified directory.
|
void |
setGroupsForGroup(long directoryId,
String groupName,
Iterable<String> parentGroupNames)
Caches the list of parent groupNames for each membership for the named group in the specified directory.
|
void |
setGroupsForUser(long directoryId,
String userName,
Iterable<String> groupNames)
Caches the list of parent groupNames for each membership for the named user in the specified directory.
|
Boolean isUserDirectMember(long directoryId, String userName, String groupName)
true
if the groupName is in the cached list of parents of the user, false
if groupName is not in the list, or null
if there is no cached list for the user.Boolean isGroupDirectMember(long directoryId, String childGroupName, String parentGroupName)
true
if the parentGroupName is in the cached list of parents of the child group,
false
if parentGroupName is not in the list, or null
if there is no cached list for the child group.void setGroupsForUser(long directoryId, String userName, Iterable<String> groupNames)
void setGroupsForGroup(long directoryId, String groupName, Iterable<String> parentGroupNames)
List<String> getGroupsForUser(long directoryId, String userName)
null
if there is no cached list.List<String> getGroupsForGroup(long directoryId, String groupName)
null
if there is no cached list.void removeUserGroupMemberships(long directoryId, String userName)
void removeGroupGroupMemberships(long directoryId, String groupName)
void removeAllUserMemberships(long directoryId, String userName)
This can be a slow operation if the cache is large. This is a trade-off of the cache design, which is optimised for fast retrieval of all parent groups of a user or group.
Removes any GROUPS_FOR_USER entry in this cache if it contains this group.
void removeAllGroupMemberships(long directoryId, String groupName)
This can be a slow operation if the cache is large. This is a trade-off of the cache design, which is optimised for fast retrieval of all parent groups of a user or group.
Removes any GROUPS_FOR_GROUP entry in this cache for the passed in group. Removes any GROUPS_FOR_USER entry in this cache if it contains this group.
void removeAllDirectoryMemberships(long directoryId)
This can be a slow operation if the cache is large. This is a trade-off of the cache design, which is optimised for fast retrieval of all parent groups of a user or group.
Copyright © 2003–2017 Atlassian. All rights reserved.