XML Action Definitions File
The actions included in an adapter are defined by an XML file that MUST contain an actionDefs
element that conforms to the following XML pattern:
<actionDefs xmlns="urn:idauto.net:dss:actiondef"> <!--Zero or more repetitions:--> <actionDef name="string" category="string" builtIn="true" returnsValue="boolean" description="string" sensitive="boolean"> <argDefs> <!--Zero or more repetitions:--> <argDef name="string" type="string" description="string" optional="boolean" /> </argDefs> <actions> <action name="return"> <arg value="string"/> </action> </actions> </actionDef> </actionDefs>
There should be one actionDef
element for each action that the adapter exposes, with the following attributes and children:
<actionDef>
name=
MUST start with a letter or underscore and contain only letters, numbers, and underscore
MUST NOT conflict with any other action name, ECMAScript reserved words, or standard builtin objects
SHOULD follow the naming conventions described in Design Considerations
category=
For adapters developed internally by Identity Automation, the category should be set to
Core|Adapters|<AdapterName>
For adapters developed internally by Identity Automation, the category should be set to
Core|Adapters|<AdapterName>
For adapters developed by third parties, the category should be set to
Third Party|Adapters|<CompanyName>|<AdapterName>
builtIn=
MUST be true
returnsValue=
MUST be true if the action returns a value, otherwise must be false
description=
short description of what the actions does
sensitive=
true if the return value contains sensitive data (e.g. a password) and should not be traced when verbose tracing is enabled, false otherwise
<argDefs>
children
<argDef>
one for each input argument the action requires
name=
MUST start with a letter or underscore and contain only letters, numbers, and underscore
MUST NOT conflict with any other action name, ECMAScript reserved words, or standard builtin objects
type=
one of
string
boolean
number
enum:choice1,choice2,choice3...
object
description=
short description of the argument
option=
true if the argument is options, false or omitted if required
<actions>
<action>
name="return"
<arg>
value=
MUST be
$builtin.<your-dns-domain>.adaptername.actionName(argName1, argName2, …)
Replace
<your-dns-domain>
in the above argument with the dns domain name of the person or organization developing the adapter.The XML file can be placed anywhere within the adapter JAR file class directory hierarchy and pointed to by the
defResource
attribute in the dssmodule.xml file. In the example adapter, the XML Action Definitions File can be found at: src/main/resources/net/idauto/exodus/dss/adapter/example/example-adapter-actions.xml