Interface SyncHandler

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      @NotNull SyncContext createContext​(@NotNull ExternalIdentityProvider idp, @NotNull org.apache.jackrabbit.api.security.user.UserManager userManager, @NotNull javax.jcr.ValueFactory valueFactory)
      Initializes a sync context which is used to start the sync operations.
      @Nullable SyncedIdentity findIdentity​(@NotNull org.apache.jackrabbit.api.security.user.UserManager userManager, @NotNull String id)
      Tries to find the identity with the given authorizable id or name.
      @NotNull String getName()
      Returns the name of this sync handler.
      @NotNull Iterator<SyncedIdentity> listIdentities​(@NotNull org.apache.jackrabbit.api.security.user.UserManager userManager)
      Lists all externally synced identities.
      boolean requiresSync​(@NotNull SyncedIdentity identity)
      Checks if the identity requires sync based on the configuration, type and last sync time.
    • Method Detail

      • getName

        @NotNull
        @NotNull String getName()
        Returns the name of this sync handler.
        Returns:
        sync handler name
      • createContext

        @NotNull
        @NotNull SyncContext createContext​(@NotNull
                                           @NotNull ExternalIdentityProvider idp,
                                           @NotNull
                                           @NotNull org.apache.jackrabbit.api.security.user.UserManager userManager,
                                           @NotNull
                                           @NotNull javax.jcr.ValueFactory valueFactory)
        Initializes a sync context which is used to start the sync operations.
        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

        @Nullable
        @Nullable SyncedIdentity findIdentity​(@NotNull
                                              @NotNull org.apache.jackrabbit.api.security.user.UserManager userManager,
                                              @NotNull
                                              @NotNull String id)
                                       throws javax.jcr.RepositoryException
        Tries to find the identity with the given authorizable id or name.
        Parameters:
        userManager - the user manager
        id - the id or name of the authorizable
        Returns:
        a synced identity object or null
        Throws:
        javax.jcr.RepositoryException - if an error occurs
      • requiresSync

        boolean requiresSync​(@NotNull
                             @NotNull SyncedIdentity identity)
        Checks if the identity requires sync based on the configuration, type and last sync time.
        Parameters:
        identity - the identity to check
        Returns:
        true if the identity requires synchronization.
      • listIdentities

        @NotNull
        @NotNull Iterator<SyncedIdentity> listIdentities​(@NotNull
                                                         @NotNull org.apache.jackrabbit.api.security.user.UserManager userManager)
                                                  throws javax.jcr.RepositoryException
        Lists all externally synced identities.
        Parameters:
        userManager - the user manager
        Returns:
        an iterator over all authorizable that are externally synced.
        Throws:
        javax.jcr.RepositoryException - if an error occurs