Subject: Batch Processing in SailPoint
Regarding: Using a rule to execute batch processing, with custom inputs that are more easily explained to a client
Creating a TaskDefinition for running a rule is normally performed by the following:
Setup -> Tasks
New Task -> Run Rule
Enter the details such as what you want the rule to be named, description, then the rule to be executed. Save and Run
Once you have done this, you will have a framework TaskDefinition with the following elements:
<Attributes>
<Map>
<entry key="ruleName" value="the rule you chose"/>
</Map>
</Attributes>
and also:
<Parent>
<Reference class="sailpoint.object.TaskDefinition" name="Run Rule"/>
</Parent>
Customizing this involves creating the following elements:
<Signature>
<Inputs>
<Argument helpKey="Text for when user mouses over question mark"
name="variableName" type="datatype">
<Prompt>Text on page</Prompt>
</Argument>
</Inputs>
</Signature>
Each argument is displayed as you normally see on the Task page with the prompt on the left, with the input area on the right, and with a question mark that displays the help text.
datatype is the type of input you require, and you also specify the datatype of the value that is passed into your rule. Some example data types:
string - Sends in a java.lang.String object
boolean - Sends in a java.lang.Boolean object - shows as a checkbox
Identity - Sends in a sailpoint.object.Identity object
Application - Sends in a sailpoint.object.Application object
Workflow - Sends in a sailpoint.object.Workflow object
You get the pattern
There is one more attribute in the <Argument> tag which can be used and that is multi="true" which causes the task to gather multiple values and pass in as a List<> containing multiple instances of them.
Each of the values specified by variableName (that's the name of the variable) is passed into the rule as a key in the config Map, and can / should be analyzed to see if it is provided, using containsKey() method, with the value provided using the get() method, which should be null and instanceof checked.
Happy batch processing
No comments:
Post a Comment