Method Payload Parameters
The MethodPayloadType in cs-sdk-home/conf/xsd/opbindings.xsd specifies a method payload which consists of the following:
cim1265
The MethodPayloadType in cs-sdk-home/conf/xsd/opbindings.xsd specifies a method payload which consists of the following:
- The name of a native method to execute, that is, its method attribute.
- A number of bindings for each parameter the method expects.
Each parameter of type ParameterBindingType specifies:
- An attribute name
- The native method parameter name bound to it when the method is called
- The Boolean flags that specify whether the parameter is used to pass a value into the native method (input), or out of the native method (output), or both.
- The handling of multivalued attributes is addressed through the multiValuedFlattenStyle and multiValuedModifyMode attributes, where multiple values can beflattened.Or the collection of all attribute values could be encoded using cs-sdk-home/conf/xsd/opattributes.xsd into a single string literal.As the native languages behind the method-style mappings (for example, Stored Procedures for JDBC) are likely to have limited power to work with structured parameters, the CA IAM CS framework performs flattening and mapping simplifications of parameters on their behalf.
The following table shows the special values that can also be used as the value for the attribute value of any method payload parameter, in addition to the attributes mapped in the datamodel metadata for the object class targeted by a method opbinding. Using special attribute names allows runtime context information known to the CA IAM CS framework to be passed into the native method. Or, in the case of *ErrorStatus*, to be passed out of the native method.
Contextual Attribute
| Direction
| Description
| Applicable LDAP Operations
|
*NAME* | IN | Target object’s most nested RDN value by itself | All |
*DN* | OUT | Target object’s full distinguished name | All |
*ErrorStatus* | IN | Should remain null unless an error occurs in which case a description can be passed back. | All update operations: ADD / MODIFY / DELETE / MODIFY_RN |
*AddModify_AttrsAsXML* | IN | XML representation of entire ADD or MODIFY is passed in as a single string (refer opattributes.xsd) | ADD or MODIFY |
*ModifRny_NewRdn* | IN | New RDN | MODIFY_RN |
*Move_NewParentName* | IN | New parent name | MOVE |
*MoveRename_NewRdn* | IN | New RDN (may be null) | MOVE |
Method-style bindings to the query LDAP operations (LOOKUP and SEARCH) are not supported. Also, the setting of the lookUpLevel attribute is important to the handling of POST delete method opbindings. POST delete method opbindings are special as it can be necessary to cache attribute values before the target object is deleted. However, ccaching can impose too much of a performance burden.