Interface GroupActionStrategy
- All Known Implementing Classes:
AbstractGroupActionStrategy
,DefaultGroupActionStrategy
,ExternalIdCheckingGroupActionStrategy
public interface GroupActionStrategy
A handler for deciding what action to perform on a group fetched from a remote directory during the synchronisation
process
-
Method Summary
Modifier and TypeMethodDescriptiondecide
(InternalDirectoryGroup groupMatchedByName, InternalDirectoryGroup groupMatchedByExternalId, Group remoteGroup, Date syncStartDate, long directoryId)
-
Method Details
-
decide
DirectoryCacheChangeOperations.GroupsToAddUpdateReplace decide(@Nullable InternalDirectoryGroup groupMatchedByName, @Nullable InternalDirectoryGroup groupMatchedByExternalId, Group remoteGroup, Date syncStartDate, long directoryId) throws OperationFailedException - Parameters:
groupMatchedByName
- the group matched by name from the internal directory or null if the group isn't present yetgroupMatchedByExternalId
- the group matched by external id from the internal directory or null if there were no matches, only applicable for directories supporting special handling for groups with external idsremoteGroup
- the group from the remote directorysyncStartDate
- the date at which the synchronisation was started, used to check for local modifications after sync startdirectoryId
- the id of the remote directory- Returns:
- an object containing collections related to different types of handling new groups, one of which may contain the remote group if it should be handled
- Throws:
OperationFailedException
- if the group can't be correctly handled
-