Class SynchronizationServiceImpl
java.lang.Object
com.evolveum.midpoint.model.impl.sync.SynchronizationServiceImpl
- All Implemented Interfaces:
SynchronizationService
,ProvisioningListener
,ResourceObjectChangeListener
@Service("synchronizationService")
public class SynchronizationServiceImpl
extends Object
implements SynchronizationService
Synchronization service receives change notifications from provisioning. It
decides which synchronization policy to use and evaluates it (correlation,
confirmation, situations, reaction, ...)
Note: don't autowire this bean by implementing class, as it is proxied by Spring AOP. Use the interface instead. TODO improve the error handling for the whole class
- Author:
- lazyman, Radovan Semancik
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetName()
Returns a short name of the listener for debugging purposes.void
notifyChange
(@NotNull ResourceObjectShadowChangeDescription change, @NotNull Task task, @NotNull OperationResult parentResult) Processes a notification about a specific change that happened on the resource.
-
Constructor Details
-
SynchronizationServiceImpl
public SynchronizationServiceImpl()
-
-
Method Details
-
notifyChange
public void notifyChange(@NotNull @NotNull ResourceObjectShadowChangeDescription change, @NotNull @NotNull Task task, @NotNull @NotNull OperationResult parentResult) Description copied from interface:ResourceObjectChangeListener
Processes a notification about a specific change that happened on the resource. The change has already happened on the resource. The upper layers (implementing this interface) are notified to take that change into an account i.e. synchronize it. This operation may be called multiple times with the same change, e.g. in case of failures in IDM or on the resource. The implementation must be able to handle such duplicates.- Specified by:
notifyChange
in interfaceResourceObjectChangeListener
- Parameters:
change
- change description
-
getName
Description copied from interface:ProvisioningListener
Returns a short name of the listener for debugging purposes. E.g. "model synchronization service". This name is used in log and error messages.- Specified by:
getName
in interfaceProvisioningListener
-