A work item Smart Value Object (SVO) can obtain dataslots. The BP Server client can get a list of dataslots using the APIs provided. The DataSlotList object thus obtained can be iterated to get a single DataSlot object obtaining the complete set of dataslot supported APIs on it. The work item APIs can:
Get the entire list of dataslots - input as well as output.
Get only the input or the output dataslot list.
Get input or output dataslot name list only.
These APIs facilitate the efficient use of the server and client resources, governed by the value of an input parameter withMetaData.
When the input parameter withMetaData is set to true, the HashMap containing the values of all the attributes is preloaded from the server. Each time the user requests for an attribute, the value is retrieved from the HashMap itself. On the other hand, when the withMetaData parameter is set false, it does not contain the value for all the attributes. As the user requests to get an attribute, the corresponding value is loaded from the server and cached in the HashMap.
Note: It is recommended to set withMetaData = true when you have to work on the entire set of attributes, and set withMetaData = false, when only frequently used attributes are to be processed.
public HashMap getDataSlotList(boolean withMetaData)
This API provides the list of dataslot (both input and output) as a HashMap, with the Key and Value, as shown in Table 13.
Table 13. List of dataslots as HashMap
Key
Value
Value type
INPUTDATASLOTS
Input DataSlotList
DataSlotList SVO
OUTPUTDATASLOTS
Output DataSlotList
DataSlotList SVO
public DataSlotList getInputDataSlotList(boolean withMetaData)
Input dataslots are the read-only dataslots.The predefined dataslots are input dataslots as their values are not editable. The input dataslots are obtained as the DataSlotList object.
Similarly, getOutputDataSlotList() helps in retrieving the list of output dataslots.
public HashMap getInputDataSlotNames()
Each work item has some input dataslots and this API retrieves names of InputDataSlot in HashMap, where the key-value pair depends on the application. Key and value, both are in String format and key is case sensitive.
Similarly, getOutputDataSlotNames() helps in retrieving the names of the output dataslots.