A Understanding Script Arguments

This appendix discusses the arguments that you can include in your custom scripts used for performing connector operations.

The connector executes your custom scripts to perform reconciliation and provisioning operations such as Lookup, Sync, Create, Update, and Delete. For each operation, the connector provides a list of values to your script as an argument. The following is a list of connector operation scripts and their corresponding script arguments that can be directly used in your custom scripts:

  • connectionScript

    All default IT resource parameters and any additional parameters configured in the resource.properties file are available as script arguments for the connection operation. The following is the list of arguments available for the connection operation:

    • configuration - The list of configuration values. For example, configuration.getHost() is used to read the value of the host configured in the IT resource.

    • timing - When the script must be called. The value of the timing attribute for a connection operation is connect.

    • trace - Logger as a script trace bridge to the application.

  • createScript

    The following is the list of arguments available for a script performing the Create operation:

    • timing - When the script must be called. The value of the timing attribute for a Create operation is create.

    • trace - Logger as a script trace bridge to the application.

    • attributes - All attributes.

    • conn - Connection object. For example, JDBC connection.

    • objectclass - Name of the object class.

  • updateScript

    The following is the list of arguments available for a script performing the Update operation:

    • timing - When the script must be called. The value of the timing attribute for an Update operation is create.

    • trace - Logger as a script trace bridge to the application.

    • attributes - List of updated attributes.

    • conn - Connection object. For example, JDBC connection.

    • objectclass - Name of the object class.

  • deleteScript

    The following is the list of arguments available for a script performing the Delete operation:

    • timing - When the script must be called. The value of the timing attribute for a Delete operation is delete.

    • trace - Logger as a script trace bridge to the application.

    • attributes - This argument contains the uid attribute.

    • conn - Connection object. For example, JDBC connection.

    • objectclass - Name of the object class.

  • addMultiValuedAttributeScript

    The following is the list of arguments available for a script adding multivalued child data for objects in your target system:

    • timing - When the script must be called. The value of the timing attribute for this operation is addMultiValuedAttribute.

    • trace - Logger as a script trace bridge to the application.

    • attributes - This argument contains the embedded attribute.

    • conn - Connection object. For example, JDBC connection.

    • objectclass - Name of the object class.

  • removeMultiValuedAttributeScript

    The following is the list of arguments available for a script removing multivalued child data for objects in your target system:

    • timing - When the script must be called. The value of the timing attribute for this operation is removeMultiValuedAttribute.

    • trace - Logger as a script trace bridge to the application.

    • attributes - This argument contains the embedded attribute.

    • conn - Connection object. For example, JDBC connection.

    • objectclass - Name of the object class.

  • lookupScript

    This script operation is common for all lookup field synchronization jobs. The following is the list of arguments available for this script.

    • timing - When the script must be called. The value of the timing attribute for this operation is in the following format:

      executeQuery:OBJECT_CLASS

      In this format, OBJECT_CLASS is replaced with the value of the Object Type attribute of the lookup field synchronization scheduled job. For example, if the Object Type attribute of the lookup field synchronization scheduled job contains the value "Role", then the value of the timing argument will be executeQuery:Role.

    • trace - Logger as a script trace bridge to the application.

    • conn - Connection object. For example, JDBC connection.

    • handler - resultSetHandler for the connector objects produced by the execute query or null return.

    • ATTRS_TO_GET - Array of attributes to be fetched from the target system.

    • objectclass - Name of the object class.

    • util -Utility to create connector objects.

  • executeQueryScript

    This script is used during full and limited reconciliation runs. The following is the list of arguments available for this script:

    • timing - When the script must be called. The value of the timing attribute for this operation is executeQuery.

    • trace - Logger as a script trace bridge to the application.

    • conn - Connection object. For example, JDBC connection.

    • handler - resultSetHandler for the connector objects produced by the execute query or null return.

    • ATTRS_TO_GET - Array of attributes to be fetched from the target system.

    • objectclass - Name of the object class.

    • util -Utility to create connector objects.

    • filterattribute - Name of the attribute on which the filter criteria is applied. The value of this argument is null in case there is no filter.

    • filtervalue - Value of the filter attribute. The value of this argument is null in case there is no filter.

    • filteroperator - The filter operation. The value of this argument is null in case there is no filter. The following is the list of supported filter operators:

      EQUALS, NOT_EQUALS,

      EQUALS_IGNORE_CASE, NOT_EQUALS_IGNORE_CASE,

      GREATER_THAN, LESS_THAN,

      GREATER_THAN_OR_EQUALS, LESS_THAN_OR_EQUALS,

      STARTS_WITH, NOT_STARTS_WITH,

      STARTS_WITH_IGNORE_CASE, NOT_STARTS_WITH_IGNORE_CASE,

      ENDS_WITH, NOT_ENDS_WITH,

      ENDS_WITH_IGNORE_CASE,NOT_ENDS_WITH_IGNORE_CASE,

      CONTAINS, NOT_CONTAINS,

      CONTAINS_IGNORE_CASE, NOT_CONTAINS_IGNORE_CASE,

      CONTAINS_ALL_VALUES, NOT_CONTAINS_ALL_VALUES

  • syncScript

    This script is used during incremental reconciliation runs. The following is the list of arguments available for this script:

    • timing - When the script must be called. The value of the timing attribute for this operation is sync.

    • trace - Logger as a script trace bridge to the application.

    • conn - Connection object. For example, JDBC connection.

    • handler - resultSetHandler for the connector objects produced by the sync query or null return.

    • ATTRS_TO_GET - Array of attributes to be fetched from the target system.

    • objectclass - Name of the object class.

    • util -Utility to create connector objects.

    • syncattribute- Name of the attribute configured for incremental reconciliation schedule job.

    • synctoken - Value of the sync attribute. This argument contains null value during the first execution of the incremental scheduled job.