Interface SynchronizationMBean

  • All Known Implementing Classes:
    SyncMBeanImpl

    @ProviderType
    public interface SynchronizationMBean
    Provides utilities to manage synchronized external identities. The operations return a single or array of messages of the operations performed. for simplicity the messages are JSON serialized strings:
    
     {
         "op": "upd",
         "uid": "bob",
         "eid": "cn=bob,o=apache"
     }
     
    With the following operations:
    • nop: nothing changed
    • upd: entry updated
    • add: entry added
    • del: entry deleted
    • err: operation failed. in this case, the 'msg' property will contain a reason
    Note that this interface is not exported via OSGi as it is not intended to use outside of JMX (yet).
    • Method Detail

      • getSyncHandlerName

        @NotNull
        @NotNull String getSyncHandlerName()
        Returns the name of the SyncHandler that this MBean operates on.
        Returns:
        the name of the sync handler.
      • getIDPName

        @NotNull
        @NotNull String getIDPName()
        Returns the name of the ExternalIdentityProvider that this MBean operates on.
        Returns:
        the name of the IDP.
      • syncUsers

        @NotNull
        @NotNull String[] syncUsers​(@NotNull
                                    @NotNull String[] userIds,
                                    boolean purge)
        Synchronizes the local users with the given user ids.
        Parameters:
        userIds - the user ids
        purge - if true users that don't exist in the IDP are deleted.
        Returns:
        result messages.
      • syncAllUsers

        @NotNull
        @NotNull String[] syncAllUsers​(boolean purge)
        Synchronizes all local users with the given user ids. Note that this can be an expensive operation since all potential users need to be examined.
        Parameters:
        purge - if true users that don't exist in the IDP are deleted.
        Returns:
        result messages.
      • syncExternalUsers

        @NotNull
        @NotNull String[] syncExternalUsers​(@NotNull
                                            @NotNull String[] externalIds)
        Synchronizes the external users with the given external ids.
        Parameters:
        externalIds - the external id
        Returns:
        result messages.
      • syncAllExternalUsers

        @NotNull
        @NotNull String[] syncAllExternalUsers()
        Synchronizes all the external users, i.e. basically imports the entire IDP. Note that this can be an expensive operation.
        Returns:
        result messages.
      • listOrphanedUsers

        @NotNull
        @NotNull String[] listOrphanedUsers()
        Returns a list of orphaned users, i.e. users that don't exist anymore on the IDP. Note that this can be an expensive operation since all potential users need to be examined.
        Returns:
        a list of the user ids of orphaned users.
      • purgeOrphanedUsers

        @NotNull
        @NotNull String[] purgeOrphanedUsers()
        Purges all orphaned users. this is similar to invoke syncUsers(String[], boolean) with the list of orphaned users. Note tha this can be an expensive operation since all potential users need to be examined.
        Returns:
        result messages.