Class DefaultSyncHandler

    • Constructor Detail

      • DefaultSyncHandler

        public DefaultSyncHandler()
        Default constructor for OSGi
      • DefaultSyncHandler

        public DefaultSyncHandler​(DefaultSyncConfig config)
        Constructor for non-OSGi cases.
        Parameters:
        config - the configuration
    • Method Detail

      • activate

        @Activate
        public void activate​(@NotNull
                             @NotNull org.osgi.framework.BundleContext bundleContext,
                             java.util.Map<java.lang.String,​java.lang.Object> properties)
      • deactivate

        @Deactivate
        public void deactivate()
      • getName

        @NotNull
        public @NotNull java.lang.String getName()
        Returns the name of this sync handler.
        Specified by:
        getName in interface SyncHandler
        Returns:
        sync handler name
      • createContext

        @NotNull
        public @NotNull SyncContext createContext​(@NotNull
                                                  @NotNull ExternalIdentityProvider idp,
                                                  @NotNull
                                                  @NotNull UserManager userManager,
                                                  @NotNull
                                                  @NotNull ValueFactory valueFactory)
        Initializes a sync context which is used to start the sync operations.
        Specified by:
        createContext in interface SyncHandler
        Parameters:
        idp - the external identity provider used for syncing
        userManager - user manager for managing authorizables
        valueFactory - the value factory to create values
        Returns:
        the sync context
      • findIdentity

        public SyncedIdentity findIdentity​(@NotNull
                                           @NotNull UserManager userManager,
                                           @NotNull
                                           @NotNull java.lang.String id)
                                    throws RepositoryException
        Tries to find the identity with the given authorizable id or name.
        Specified by:
        findIdentity in interface SyncHandler
        Parameters:
        userManager - the user manager
        id - the id or name of the authorizable
        Returns:
        a synced identity object or null
        Throws:
        RepositoryException - if an error occurs
      • requiresSync

        public boolean requiresSync​(@NotNull
                                    @NotNull SyncedIdentity identity)
        Checks if the identity requires sync based on the configuration, type and last sync time.
        Specified by:
        requiresSync in interface SyncHandler
        Parameters:
        identity - the identity to check
        Returns:
        true if the identity requires synchronization.