Class Singularkey

  • All Implemented Interfaces:
    com.unboundid.directory.sdk.common.internal.Configurable, com.unboundid.directory.sdk.common.internal.ExampleUsageProvider, com.unboundid.directory.sdk.common.internal.UnboundIDExtension

    public class Singularkey
    extends com.unboundid.directory.sdk.sync.api.SyncDestination
    Implements a class to trigger singularkey flow or policy
    • Constructor Summary

      Constructors 
      Constructor Description
      Singularkey()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void createEntry​(com.unboundid.ldap.sdk.Entry entryToCreate, com.unboundid.directory.sdk.sync.types.SyncOperation operation)
      performs the necessary processing to handle the event of an entry creation at the source
      void defineConfigArguments​(com.unboundid.util.args.ArgumentParser parser)
      Performs the necessary processing to define the arguments necessary for the extension to work
      void deleteEntry​(com.unboundid.ldap.sdk.Entry entryToDelete, com.unboundid.directory.sdk.sync.types.SyncOperation operation)
      Performs the necessary processing to handle the event of an entry deletion at the source
      List<com.unboundid.ldap.sdk.Entry> fetchEntry​(com.unboundid.ldap.sdk.Entry destEntryMappedFromSrc, com.unboundid.directory.sdk.sync.types.SyncOperation operation)
      Not supported for this notification-only extension
      String getCurrentEndpointURL()
      Provides information about the instance of the extension
      String[] getExtensionDescription()
      Provides a description for the extension for display purpose in the dsconfig and manage-extension CLIs
      String getExtensionName()
      Provides the extension name
      void initializeSyncDestination​(com.unboundid.directory.sdk.sync.types.SyncServerContext serverContext, com.unboundid.directory.sdk.sync.config.SyncDestinationConfig config, com.unboundid.util.args.ArgumentParser parser)
      Performs the necessary processing to initialize the extension such as verifying the provided configuration arguments
      void modifyEntry​(com.unboundid.ldap.sdk.Entry entryToModify, List<com.unboundid.ldap.sdk.Modification> modsToApply, com.unboundid.directory.sdk.sync.types.SyncOperation operation)
      Performs the necessary processing to handle the event of an entry modification at the source
      • Methods inherited from class com.unboundid.directory.sdk.sync.api.SyncDestination

        finalizeSyncDestination, getExamplesArgumentSets
    • Method Detail

      • getExtensionName

        public String getExtensionName()
        Provides the extension name
        Specified by:
        getExtensionName in interface com.unboundid.directory.sdk.common.internal.UnboundIDExtension
        Specified by:
        getExtensionName in class com.unboundid.directory.sdk.sync.api.SyncDestination
        Returns:
        the extension name
      • getExtensionDescription

        public String[] getExtensionDescription()
        Provides a description for the extension for display purpose in the dsconfig and manage-extension CLIs
        Specified by:
        getExtensionDescription in interface com.unboundid.directory.sdk.common.internal.UnboundIDExtension
        Specified by:
        getExtensionDescription in class com.unboundid.directory.sdk.sync.api.SyncDestination
        Returns:
        a list of descriptive strings, each of ow which is displayed as a paragraph
      • defineConfigArguments

        public void defineConfigArguments​(com.unboundid.util.args.ArgumentParser parser)
                                   throws com.unboundid.util.args.ArgumentException
        Performs the necessary processing to define the arguments necessary for the extension to work
        Specified by:
        defineConfigArguments in interface com.unboundid.directory.sdk.common.internal.Configurable
        Overrides:
        defineConfigArguments in class com.unboundid.directory.sdk.sync.api.SyncDestination
        Parameters:
        parser - the argument parse
        Throws:
        com.unboundid.util.args.ArgumentException - if any issue is encountered attempting to register arguments with the parser
      • initializeSyncDestination

        public void initializeSyncDestination​(com.unboundid.directory.sdk.sync.types.SyncServerContext serverContext,
                                              com.unboundid.directory.sdk.sync.config.SyncDestinationConfig config,
                                              com.unboundid.util.args.ArgumentParser parser)
                                       throws com.unboundid.directory.sdk.sync.types.EndpointException
        Performs the necessary processing to initialize the extension such as verifying the provided configuration arguments
        Overrides:
        initializeSyncDestination in class com.unboundid.directory.sdk.sync.api.SyncDestination
        Parameters:
        serverContext - the server context
        config - the configuration object for the instance of the extension
        parser - the argument parser
        Throws:
        com.unboundid.directory.sdk.sync.types.EndpointException - if any issue is encountered whilst attempting to initialize the instance of the extension
      • fetchEntry

        public List<com.unboundid.ldap.sdk.Entry> fetchEntry​(com.unboundid.ldap.sdk.Entry destEntryMappedFromSrc,
                                                             com.unboundid.directory.sdk.sync.types.SyncOperation operation)
                                                      throws com.unboundid.directory.sdk.sync.types.EndpointException
        Not supported for this notification-only extension
        Overrides:
        fetchEntry in class com.unboundid.directory.sdk.sync.api.SyncDestination
        Parameters:
        destEntryMappedFromSrc - the computed entry based on the entry retrieved from the source and all mappings configured in the applicable sync class
        operation - the sync operation
        Returns:
        a list of entries retrieved based on the provided data
        Throws:
        com.unboundid.directory.sdk.sync.types.EndpointException - always, as this extension only supports notification mode
      • getCurrentEndpointURL

        public String getCurrentEndpointURL()
        Provides information about the instance of the extension
        Specified by:
        getCurrentEndpointURL in class com.unboundid.directory.sdk.sync.api.SyncDestination
        Returns:
        the configured singularkey URL
      • createEntry

        public void createEntry​(com.unboundid.ldap.sdk.Entry entryToCreate,
                                com.unboundid.directory.sdk.sync.types.SyncOperation operation)
                         throws com.unboundid.directory.sdk.sync.types.EndpointException
        performs the necessary processing to handle the event of an entry creation at the source
        Specified by:
        createEntry in class com.unboundid.directory.sdk.sync.api.SyncDestination
        Parameters:
        entryToCreate - the entry to create
        operation - the sync operation
        Throws:
        com.unboundid.directory.sdk.sync.types.EndpointException - in case the event could not be published at the destination
      • modifyEntry

        public void modifyEntry​(com.unboundid.ldap.sdk.Entry entryToModify,
                                List<com.unboundid.ldap.sdk.Modification> modsToApply,
                                com.unboundid.directory.sdk.sync.types.SyncOperation operation)
                         throws com.unboundid.directory.sdk.sync.types.EndpointException
        Performs the necessary processing to handle the event of an entry modification at the source
        Specified by:
        modifyEntry in class com.unboundid.directory.sdk.sync.api.SyncDestination
        Parameters:
        entryToModify - the entry to modify
        modsToApply - the list of modifications to apply
        operation - the sync operation
        Throws:
        com.unboundid.directory.sdk.sync.types.EndpointException - in case the event could not be published at the destination
      • deleteEntry

        public void deleteEntry​(com.unboundid.ldap.sdk.Entry entryToDelete,
                                com.unboundid.directory.sdk.sync.types.SyncOperation operation)
                         throws com.unboundid.directory.sdk.sync.types.EndpointException
        Performs the necessary processing to handle the event of an entry deletion at the source
        Specified by:
        deleteEntry in class com.unboundid.directory.sdk.sync.api.SyncDestination
        Parameters:
        entryToDelete - the entry to delete
        operation - the sync operation
        Throws:
        com.unboundid.directory.sdk.sync.types.EndpointException - in case the event could not be published at the destination