Adapter Development Kit 6.5 | webMethods Adapter Development Kit Documentation | webMethods Adapter Development Kit Installation and User’s Documentation | Adapter Services | The Metadata Model for Adapter Services | Adapter Service Execution | Interacting with the Pipeline | The getIData Method
 
The getIData Method
The WmRecord.getIData method returns an IData object that contains the entire pipeline at the time the service was invoked. The top-level branch or leaf name(s) in the metadata signature (in this case, customer) is the key used to access data intended for use by the service. The value associated with that key will be either another IData object (if the key is a node name) or an object of the type specified by the corresponding type field of the signature. If the name of the branch or leaf includes a pair of square braces "[]", then the value will contain an array of the designated object type.
Thus, the fields in the sample would be populated as follows:
*WmRecord.getIData would return an IData object with an entry, keyed with the name customer.
*The value associated with customer would be another IData object, this time with three entries: id, name, and orders.
*The value corresponding with id would be an Integer.
*The value of name would be a String.
*The value of orders would contain an array of IData objects.
*The orders IData objects would each contain an Integer id, a java.util.Date date, and an array of IData objects associated with the lineItems key.
*The lineItems IData objects would contain entries for itemNumber, quantity, and description, with the data types provided in the signature.
When constructing response data to place in the pipeline at the end of service execution, use the same rules that apply to interpreting the metadata signature. For each node level in the signature, there should be a corresponding layer of IData, keyed with the names from the signature. For each leaf, there should be an IData entry with the corresponding signature name and type.
Note:
Signatures are not enforced by Integration Server or the ADK framework. The validity of a request based on the presence or absence of a given field, or the value given to a field, is determined exclusively by the adapter implementation. Similarly, if the service fails to populate the response WmRecord with data organized according to the signature, subsequent services will be unable to access the data provided by the adapter service.