public class DirectoryCacheImplUsingChangeOperations extends Object implements DirectoryCache
Constructor and Description |
---|
DirectoryCacheImplUsingChangeOperations(DirectoryCacheChangeOperations dc) |
Modifier and Type | Method and Description |
---|---|
void |
addGroupMembersForGroup(Group parentGroup,
Set<String> remoteGroups) |
void |
addGroupToGroup(String childGroup,
String parentGroup) |
void |
addOrUpdateCachedGroup(Group group) |
void |
addOrUpdateCachedGroups(Collection<? extends Group> remoteGroups,
Date syncStartDate) |
void |
addOrUpdateCachedUser(User user) |
AddUpdateSets<UserTemplateWithCredentialAndAttributes,UserTemplate> |
addOrUpdateCachedUsers(Collection<? extends User> remoteUsers,
Date syncStartDate)
Synchronises a list of Users from an external directory in the local cache.
|
void |
addUserMembersForGroup(Group parentGroup,
Set<String> remoteUsers) |
void |
addUserToGroup(String username,
String groupName) |
void |
applySyncingGroupAttributes(String groupName,
Set<String> deletedAttributes,
Map<String,Set<String>> storedAttributes)
Removes any syncing group attributes listed in deletedAttributes, and store any that are listed in storedAttributes
If any non-syncing attributes are included, they will be ignored
|
void |
applySyncingUserAttributes(String userName,
Set<String> deletedAttributes,
Map<String,Set<String>> storedAttributes)
Removes any syncing user attributes listed in deletedAttributes, and store any that are listed in storedAttributes
If any non-syncing attributes are included, they will be ignored
|
void |
deleteCachedGroup(String groupName) |
void |
deleteCachedGroups(Set<String> groupnames) |
void |
deleteCachedGroupsByGuids(Set<String> guids) |
void |
deleteCachedGroupsNotIn(GroupType groupType,
List<? extends Group> remoteGroups,
Date syncStartDate) |
void |
deleteCachedGroupsNotInByExternalId(Collection<? extends Group> remoteGroups,
Date syncStartDate) |
void |
deleteCachedUser(String username) |
void |
deleteCachedUsersByGuid(Set<String> guids) |
void |
deleteCachedUsersNotIn(Collection<? extends User> users,
Date syncStartDate) |
void |
deleteGroupMembersForGroup(Group parentGroup,
Set<String> remoteGroups) |
void |
deleteUserMembersForGroup(Group parentGroup,
Set<String> remoteUsers) |
Map<String,String> |
findGroupsByExternalIds(Set<String> externalIds)
Searches the specified directory for group names of groups with the specified external ids
|
Map<String,String> |
findGroupsExternalIdsByNames(Set<String> groupNames)
Searches the specified directory for externalIds of groups with the specified names
|
GroupWithAttributes |
findGroupWithAttributesByName(String name) |
Map<String,String> |
findUsersByExternalIds(Set<String> externalIds)
Searches the specified directory for user names of users with the specified external ids, returns
a map from external id to username
|
UserWithAttributes |
findUserWithAttributesByName(String name) |
Set<String> |
getAllGroupGuids()
Returns a set of all group guids present in the cache excluding null values.
|
Set<String> |
getAllLocalGroupNames()
Returns a set of all local group names.
|
Set<String> |
getAllUserGuids()
Returns a set of all user guids present in the cache excluding null values.
|
long |
getExternalCachedGroupCount()
Counts external cached groups in the directory cache
|
long |
getGroupCount()
Counts groups in directory cache.
|
long |
getUserCount()
Counts users in directory cache.
|
void |
removeGroupFromGroup(String childGroup,
String parentGroup) |
void |
removeUserFromGroup(String username,
String groupName) |
void |
syncGroupMembersForGroup(Group parentGroup,
Collection<String> remoteGroups) |
void |
syncGroupMembershipsAndMembersForGroup(String groupName,
Set<String> parentGroupNames,
Set<String> childGroupNames) |
void |
syncGroupMembershipsForUser(String childUsername,
Set<String> parentGroupNames) |
void |
syncUserMembersForGroup(Group parentGroup,
Collection<String> remoteUsers) |
public DirectoryCacheImplUsingChangeOperations(DirectoryCacheChangeOperations dc)
public AddUpdateSets<UserTemplateWithCredentialAndAttributes,UserTemplate> addOrUpdateCachedUsers(Collection<? extends User> remoteUsers, Date syncStartDate) throws OperationFailedException
DirectoryCache
If the syncStartDate is not null, then it is used to ensure we don't re-introduce stale data if a User is updated
locally after we did our search.
Some callers may intentionally choose to pass null - eg when com.atlassian.crowd.directory.ldap.cache.UsnChangedCacheRefresher
does a partial synchronise.
addOrUpdateCachedUsers
in interface DirectoryCache
remoteUsers
- A list of Users from the external directory.syncStartDate
- The date that the synchronise started (can be null).OperationFailedException
- If the Internal Directory throws a OperationFailedException - which seems unlikely.public void deleteCachedUsersByGuid(Set<String> guids) throws OperationFailedException
deleteCachedUsersByGuid
in interface DirectoryCache
OperationFailedException
public void addOrUpdateCachedGroups(Collection<? extends Group> remoteGroups, Date syncStartDate) throws OperationFailedException
addOrUpdateCachedGroups
in interface DirectoryCache
OperationFailedException
public void deleteCachedGroupsNotIn(GroupType groupType, List<? extends Group> remoteGroups, Date syncStartDate) throws OperationFailedException
deleteCachedGroupsNotIn
in interface DirectoryCache
OperationFailedException
public void deleteCachedGroupsNotInByExternalId(Collection<? extends Group> remoteGroups, Date syncStartDate) throws OperationFailedException
deleteCachedGroupsNotInByExternalId
in interface DirectoryCache
OperationFailedException
public void syncUserMembersForGroup(Group parentGroup, Collection<String> remoteUsers) throws OperationFailedException
syncUserMembersForGroup
in interface DirectoryCache
OperationFailedException
public void addUserMembersForGroup(Group parentGroup, Set<String> remoteUsers) throws OperationFailedException
addUserMembersForGroup
in interface DirectoryCache
OperationFailedException
public void deleteUserMembersForGroup(Group parentGroup, Set<String> remoteUsers) throws OperationFailedException
deleteUserMembersForGroup
in interface DirectoryCache
OperationFailedException
public void syncGroupMembersForGroup(Group parentGroup, Collection<String> remoteGroups) throws OperationFailedException
syncGroupMembersForGroup
in interface DirectoryCache
OperationFailedException
public void addGroupMembersForGroup(Group parentGroup, Set<String> remoteGroups) throws OperationFailedException
addGroupMembersForGroup
in interface DirectoryCache
OperationFailedException
public void deleteGroupMembersForGroup(Group parentGroup, Set<String> remoteGroups) throws OperationFailedException
deleteGroupMembersForGroup
in interface DirectoryCache
OperationFailedException
public void deleteCachedGroups(Set<String> groupnames) throws OperationFailedException
deleteCachedGroups
in interface DirectoryCache
OperationFailedException
public void deleteCachedGroupsByGuids(Set<String> guids) throws OperationFailedException
deleteCachedGroupsByGuids
in interface DirectoryCache
OperationFailedException
public void deleteCachedUsersNotIn(Collection<? extends User> users, Date syncStartDate) throws OperationFailedException
deleteCachedUsersNotIn
in interface DirectoryCache
OperationFailedException
public void addOrUpdateCachedUser(User user) throws OperationFailedException
addOrUpdateCachedUser
in interface DirectoryCache
OperationFailedException
public void deleteCachedUser(String username) throws OperationFailedException
deleteCachedUser
in interface DirectoryCache
OperationFailedException
public void addOrUpdateCachedGroup(Group group) throws OperationFailedException
addOrUpdateCachedGroup
in interface DirectoryCache
OperationFailedException
public void deleteCachedGroup(String groupName) throws OperationFailedException
deleteCachedGroup
in interface DirectoryCache
OperationFailedException
public void addUserToGroup(String username, String groupName) throws OperationFailedException
addUserToGroup
in interface DirectoryCache
OperationFailedException
public void removeUserFromGroup(String username, String groupName) throws OperationFailedException
removeUserFromGroup
in interface DirectoryCache
OperationFailedException
public void addGroupToGroup(String childGroup, String parentGroup) throws OperationFailedException
addGroupToGroup
in interface DirectoryCache
OperationFailedException
public void removeGroupFromGroup(String childGroup, String parentGroup) throws OperationFailedException
removeGroupFromGroup
in interface DirectoryCache
OperationFailedException
public void syncGroupMembershipsForUser(String childUsername, Set<String> parentGroupNames) throws OperationFailedException
syncGroupMembershipsForUser
in interface DirectoryCache
OperationFailedException
public void syncGroupMembershipsAndMembersForGroup(String groupName, Set<String> parentGroupNames, Set<String> childGroupNames) throws OperationFailedException
syncGroupMembershipsAndMembersForGroup
in interface DirectoryCache
OperationFailedException
public Set<String> getAllUserGuids() throws OperationFailedException
DirectoryCache
getAllUserGuids
in interface DirectoryCache
OperationFailedException
- if the internal directory throes a OperationFailedExceptionpublic Set<String> getAllGroupGuids() throws OperationFailedException
DirectoryCache
getAllGroupGuids
in interface DirectoryCache
OperationFailedException
- if the internal directory throes a OperationFailedExceptionpublic Set<String> getAllLocalGroupNames() throws OperationFailedException
DirectoryCache
getAllLocalGroupNames
in interface DirectoryCache
OperationFailedException
- if the internal directory throes a OperationFailedExceptionpublic long getUserCount() throws OperationFailedException
DirectoryCache
getUserCount
in interface DirectoryCache
OperationFailedException
public long getGroupCount() throws OperationFailedException
DirectoryCache
getGroupCount
in interface DirectoryCache
OperationFailedException
public long getExternalCachedGroupCount() throws OperationFailedException
DirectoryCache
getExternalCachedGroupCount
in interface DirectoryCache
OperationFailedException
- if the internal directory throws a OperationFailedExceptionpublic UserWithAttributes findUserWithAttributesByName(String name) throws UserNotFoundException, OperationFailedException
findUserWithAttributesByName
in interface DirectoryCache
UserNotFoundException
OperationFailedException
public Map<String,String> findUsersByExternalIds(Set<String> externalIds)
DirectoryCache
findUsersByExternalIds
in interface DirectoryCache
externalIds
- the external ids of the users to search forpublic Map<String,String> findGroupsByExternalIds(Set<String> externalIds) throws OperationFailedException
DirectoryCache
findGroupsByExternalIds
in interface DirectoryCache
externalIds
- external ids of the groups to findOperationFailedException
public Map<String,String> findGroupsExternalIdsByNames(Set<String> groupNames) throws OperationFailedException
DirectoryCache
findGroupsExternalIdsByNames
in interface DirectoryCache
groupNames
- names of the groups to findOperationFailedException
public GroupWithAttributes findGroupWithAttributesByName(String name) throws GroupNotFoundException, OperationFailedException
findGroupWithAttributesByName
in interface DirectoryCache
GroupNotFoundException
OperationFailedException
public void applySyncingUserAttributes(String userName, Set<String> deletedAttributes, Map<String,Set<String>> storedAttributes) throws UserNotFoundException, OperationFailedException
DirectoryCache
applySyncingUserAttributes
in interface DirectoryCache
userName
- user to apply attributes todeletedAttributes
- attribute keys that need to be deletedstoredAttributes
- attributes and values that need to be saved (will overwrite any existing attributes with the same keys)UserNotFoundException
OperationFailedException
public void applySyncingGroupAttributes(String groupName, Set<String> deletedAttributes, Map<String,Set<String>> storedAttributes) throws GroupNotFoundException, OperationFailedException
DirectoryCache
applySyncingGroupAttributes
in interface DirectoryCache
groupName
- group to apply attributes todeletedAttributes
- attribute keys that need to be deletedstoredAttributes
- attributes and values that need to be saved (will overwrite any existing attributes with the same keys)GroupNotFoundException
OperationFailedException
Copyright © 2021 Atlassian. All rights reserved.