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 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 interface ResourceObjectChangeListener
      Parameters:
      change - change description
    • getName

      public String 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 interface ProvisioningListener