|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.atlassian.crowd.service.cache.CacheImpl
public class CacheImpl
| Constructor Summary | |
|---|---|
CacheImpl(net.sf.ehcache.CacheManager ehCacheManager)
|
|
CacheImpl(URL configLocation)
|
|
| Method Summary | |
|---|---|
void |
addGroupToUser(String userName,
String groupName)
Adds the group to the user/group membership in cache |
void |
addIsUserOrGroup(String name,
Boolean isValidUserOrGroup)
Updates the cache with information if the specified name is a valid user or group |
void |
addToAllGroupNamesCache(String groupName)
If we have a list of all groups, when we add one we should update the list. |
void |
addToAllUsers(String userName)
Adds userName to the list of all users in the system. |
void |
addUserToGroup(String userName,
String groupName)
Adds the user to the user/group membership in cache |
void |
cacheAllGroupNames(List groupNames)
Adds, or if it already exists, replaces the list of all group names. |
void |
cacheAllMembers(String groupName,
List userNames)
Cache a list of all users in this group. |
void |
cacheAllMemberships(String userName,
List groupNames)
Cache a list of all groups this user belongs to. |
void |
cacheAllUserNames(List userNames)
Adds a list of all users, or if one already exists, replaces it. |
void |
cacheAncestorsForGroups(Map<String,Set<String>> ancestorsByGroup)
Cache a map of group name -> ancestor group names. |
void |
cacheGroup(SOAPGroup group)
Adds a group, or if it exists, replaces the old SOAPGroup instance. |
void |
cacheUser(SOAPPrincipal user)
Adds, or if they exist, replaces an existing user. |
void |
cacheUserWithAttributes(SOAPPrincipal user)
Caches the specified user and it's properties |
boolean |
containsGroupRelationships()
|
void |
flush()
Clears the underlying cache. |
List |
getAllGroupNames()
Returns a List of Strings containing all group names, or null if the list is not cached. |
List |
getAllMembers(String groupName)
Returns a list of users that belong to groupName belongs to, or null if there aren't any. |
List |
getAllMemberships(String userName)
Returns a list of groups that userName belongs to, or null if they don't belong to any. |
List |
getAllUserNames()
|
Map<String,Set<String>> |
getAncestorsForGroups()
Returns a map of group name -> ancestor group names, or null if the map is not cached. |
SOAPGroup |
getGroup(String groupName)
Returns the group, or null if it's not in the cache. |
String |
getGroupName(String groupname)
Returns the groupname in correct case if it exists in the cache, null otherwise. |
protected String |
getKey(String name)
Return a version of the name appropriate for use as a cache key. |
protected List<String> |
getKeys(List<String> names)
Applies getKey over a collection. |
SOAPPrincipal |
getUser(String userName)
Returns the SOAPPrincipal representing userName, or null if it's not in the
cache. |
String |
getUserName(String username)
Returns the username in correct case if it exists in the cache, null otherwise. |
SOAPPrincipal |
getUserWithAttributes(String userName)
Returns the SOAPPrincipal with Attributes representing userName, or null if it's not in the
cache. |
Boolean |
isMember(String userName,
String groupName)
Maintains a list of true/false for "is this user a member of this group". |
Boolean |
isMemberInGroupCache(String userName,
String groupName)
Checks the group->user cache to see if the user is a member. |
protected boolean |
isUserDirty(SOAPPrincipal latestSoapPrincipal,
SOAPPrincipal cachedSoapPrincipal)
|
Boolean |
isUserOrGroup(String name)
Will return true if there is enough information in the cache to determine if the string represents a user or group |
void |
removeAllMembers(String groupName)
Removes the list of users in the group. |
void |
removeAllMemberships(String userName)
Called by CachingUserManager.removeUser(String) to ensure the users details are removed from any and
all user->groups and (user+group)->[yes,no] caches. |
void |
removeAllMembershipsFromUserMembershipsCache(String userName)
Removes the list of groups the user belongs to. |
void |
removeCachedGroupMembership(String userName,
String groupName)
Removes all the membership details for this specific userName, groupName pair, when a group is being removed. |
void |
removeCachedGroupMemberships(String groupName)
Called by CachingGroupManager.removeGroup(String) to ensure the group details are removed from any and
all user->groups and (user+group)->[yes,no] caches. |
void |
removeCachedUser(String userName,
String groupName)
Removes membership details for the specified user/group |
void |
removeFromAllGroupNamesCache(String groupName)
When we remove a group, if we have already cached the list of all available groups, we need to remove this group. |
void |
removeFromAllUsers(String userName)
Removes the user from the cache |
void |
removeGroup(String groupName)
Removes the group, if it exists |
void |
removeGroupFromUser(String userName,
String groupName)
Removes the group from the user/group membership in the cache |
void |
removeMembership(String userName,
String groupName)
Remove any stored [yes,no] membership relationship for a userName & groupName combination. |
boolean |
removeUser(String userName)
Removes the user from the cache. |
void |
removeUserFromGroup(String userName,
String groupName)
Removes the user from the user/group membership in the cache |
List |
setMembers(String groupName,
String[] userNameArray)
Caches the member list for a group called groupName. |
void |
setMembership(String userName,
String groupName,
Boolean isMember)
Adds or replaces a membership relationship between the user and the group. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public CacheImpl(URL configLocation)
public CacheImpl(net.sf.ehcache.CacheManager ehCacheManager)
| Method Detail |
|---|
protected String getKey(String name)
name - key.
protected List<String> getKeys(List<String> names)
names - set of names.
public void flush()
BasicCache
flush in interface BasicCachepublic void cacheUser(SOAPPrincipal user)
BasicCache
cacheUser in interface BasicCacheuser - the user to add/replace
protected boolean isUserDirty(SOAPPrincipal latestSoapPrincipal,
SOAPPrincipal cachedSoapPrincipal)
public void cacheUserWithAttributes(SOAPPrincipal user)
BasicCache
cacheUserWithAttributes in interface BasicCacheuser - SOAPPrincipal to cachepublic boolean removeUser(String userName)
BasicCache
removeUser in interface BasicCacheuserName - the user to remove
public SOAPPrincipal getUser(String userName)
BasicCacheSOAPPrincipal representing userName, or null if it's not in the
cache.
getUser in interface BasicCacheuserName - the user to retrieve
public SOAPPrincipal getUserWithAttributes(String userName)
BasicCacheSOAPPrincipal with Attributes representing userName, or null if it's not in the
cache.
getUserWithAttributes in interface BasicCacheuserName - the user to retrieve
public List getAllUserNames()
getAllUserNames in interface BasicCachepublic void cacheAllUserNames(List userNames)
BasicCache
cacheAllUserNames in interface BasicCacheuserNames - the list of usernames to addpublic SOAPGroup getGroup(String groupName)
BasicCache
getGroup in interface BasicCachegroupName - the group to retrieve
public void cacheGroup(SOAPGroup group)
BasicCacheSOAPGroup instance.
cacheGroup in interface BasicCachegroup - the group to add/replace in cachepublic void removeGroup(String groupName)
BasicCache
removeGroup in interface BasicCachegroupName - the group to remove in cachepublic List getAllGroupNames()
BasicCache
getAllGroupNames in interface BasicCachepublic void cacheAllGroupNames(List groupNames)
BasicCache
cacheAllGroupNames in interface BasicCachegroupNames - list of group names to add/replacepublic void cacheAncestorsForGroups(Map<String,Set<String>> ancestorsByGroup)
BasicCache
cacheAncestorsForGroups in interface BasicCacheancestorsByGroup - map containing ancestor group names by group namepublic Map<String,Set<String>> getAncestorsForGroups()
BasicCache
getAncestorsForGroups in interface BasicCachepublic boolean containsGroupRelationships()
containsGroupRelationships in interface BasicCache
public Boolean isMemberInGroupCache(String userName,
String groupName)
BasicCache
isMemberInGroupCache in interface BasicCacheuserName - the user to checkgroupName - the group to check
Boolean.TRUE if the user is a member. Boolean.FALSE if not. null if we don't
have enough information to tell.
public void addGroupToUser(String userName,
String groupName)
BasicCache
addGroupToUser in interface BasicCacheuserName - the user to updategroupName - the group to add
public void addUserToGroup(String userName,
String groupName)
BasicCache
addUserToGroup in interface BasicCacheuserName - the user to addgroupName - the group to update
public void removeGroupFromUser(String userName,
String groupName)
BasicCache
removeGroupFromUser in interface BasicCacheuserName - the user to updategroupName - the group to remove
public void removeUserFromGroup(String userName,
String groupName)
BasicCache
removeUserFromGroup in interface BasicCacheuserName - the user to removegroupName - the group to update
public List setMembers(String groupName,
String[] userNameArray)
BasicCachegroupName. Since group member information arrives when
the group is fetched from the Crowd server, this is also called from CachingGroupManager.getGroup(String).
setMembers in interface BasicCachegroupName - the groupuserNameArray - the list of user names
List of all members of the group.
public void removeCachedGroupMembership(String userName,
String groupName)
BasicCache
removeCachedGroupMembership in interface BasicCacheuserName - the user associated with the membershipgroupName - the group associate with the membershippublic void removeCachedGroupMemberships(String groupName)
BasicCacheCachingGroupManager.removeGroup(String) to ensure the group details are removed from any and
all user->groups and (user+group)->[yes,no] caches.
removeCachedGroupMemberships in interface BasicCachegroupName - the group to clean uppublic void removeFromAllGroupNamesCache(String groupName)
BasicCache
removeFromAllGroupNamesCache in interface BasicCachegroupName - the group to remove form cachepublic void addToAllGroupNamesCache(String groupName)
BasicCache
addToAllGroupNamesCache in interface BasicCachegroupName - MUST be in the case returned by the underlying system (ie. not forced
to lower-case).
public void removeCachedUser(String userName,
String groupName)
BasicCache
removeCachedUser in interface BasicCacheuserName - the user to updategroupName - the group to updatepublic void removeAllMemberships(String userName)
BasicCacheCachingUserManager.removeUser(String) to ensure the users details are removed from any and
all user->groups and (user+group)->[yes,no] caches.
removeAllMemberships in interface BasicCacheuserName - the user to cleanup
public void setMembership(String userName,
String groupName,
Boolean isMember)
BasicCachegetAllMemberships() to keep them in sync.
setMembership in interface BasicCacheuserName - the username associated to the membership to cachegroupName - the group name associated to the membership to cacheisMember - true if the user is a member, false if not.
public void removeMembership(String userName,
String groupName)
BasicCache
removeMembership in interface BasicCacheuserName - the username associated to the membership to cachegroupName - the group name associated to the membership to cache
public Boolean isMember(String userName,
String groupName)
BasicCache
isMember in interface BasicCacheuserName - the username associated to the membership to updategroupName - the group name associated to the membership to update
public List getAllMemberships(String userName)
BasicCacheuserName belongs to, or null if they don't belong to any.
getAllMemberships in interface BasicCacheuserName - the user
public void cacheAllMemberships(String userName,
List groupNames)
BasicCache
cacheAllMemberships in interface BasicCacheuserName - the username associated to the membership to cachegroupNames - list of group names associated to the membership to cachepublic void removeAllMembershipsFromUserMembershipsCache(String userName)
BasicCache
removeAllMembershipsFromUserMembershipsCache in interface BasicCacheuserName - the username for which the memberships will be removedpublic List getAllMembers(String groupName)
BasicCachegroupName belongs to, or null if there aren't any.
getAllMembers in interface BasicCachegroupName - the group
public void cacheAllMembers(String groupName,
List userNames)
BasicCache
cacheAllMembers in interface BasicCachegroupName - the group name to cacheuserNames - the list of usersnames to cachepublic void removeAllMembers(String groupName)
BasicCache
removeAllMembers in interface BasicCachegroupName - the group name for which the memberships will be removedpublic Boolean isUserOrGroup(String name)
BasicCache
isUserOrGroup in interface BasicCachename - the name to check
public void addIsUserOrGroup(String name,
Boolean isValidUserOrGroup)
BasicCache
addIsUserOrGroup in interface BasicCachename - the name to add to cacheisValidUserOrGroup - boolean to signify if the specified name is a valid user or grouppublic void addToAllUsers(String userName)
BasicCacheuserName to the list of all users in the system.
addToAllUsers in interface BasicCacheuserName - MUST be in the case returned by the underlying system (ie. not forced to lower-case).public void removeFromAllUsers(String userName)
BasicCache
removeFromAllUsers in interface BasicCacheuserName - can be in a case different to that stored in the underlying system.public String getUserName(String username)
BasicCache
getUserName in interface BasicCacheusername - the username
public String getGroupName(String groupname)
BasicCache
getGroupName in interface BasicCachegroupname - the group
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||