UnboundID Server SDK

Ping Identity
UnboundID Server SDK Documentation
Getting Started with the UnboundID Server SDK

Working with Arguments

Although it is possible to hard-code all of the information needed for an extension to operate directly into the code for that extension, this is not a recommended practice because it means that changes in the environment could require the code to be updated and the extension re-deployed. Similarly, it may be necessary for an extension to operate with different settings in different servers, or even with different settings across multiple instances in the same server. In order to address this, when creating extensions (whether Java-based or scripted), you should use arguments to provide any information that may change based on the contexts in which the extension may be invoked.

Both Java-based and scripted extensions use the argument parsing functionality provided in the com.unboundid.util.args package of the UnboundID LDAP SDK for Java. Each type of extension includes the following abstract methods for defining and interacting with the set of allowed arguments:

Arguments for Java-based extensions will be provided in the extension‑argument property of the configuration object. For scripted extensions, arguments will be provided in the script‑argument property. In either case, arguments should generally be in the form "name=value", where "name" is the long identifier for the corresponding argument (as created in the defineConfigArguments method), and "value" is the value to provide for that argument. If a given argument should have multiple values, then they should be provided to the extension‑argument property as separate "name=value" pairs.

Some additional notes about using arguments in extensions: