Interfaces de conector de Cast Iron

Los conectores de Cast Iron utilizan tres interfaces estándar que se implementan como orquestaciones: TestConnection, ListObjects y DescribeObjects.

El asistente crea de forma automática plantillas de orquestación para las interfaces TestConnection, ListObjects y DescribeObjects durante la fase de adición de actividades. Debe completar las orquestaciones basándose en los requisitos de cada conector. En esta sección se presentan las interfaces TestConnection, ListObjects y DescribeObjects. En Finalización de las orquestaciones del interfaz del conector, se completa una orquestación para cada una.

TestConnection

La interfaz TestConnection refleja los valores que ha añadido a la ventana Información de conexión, y es utilizada por el conector para establecer una conexión de punto final. Una vez establecida la conexión, el estado de conexión se devuelve como un operador booleano.

ListObjects

La interfaz ListObjects refleja los valores añadidos a la ventana Añadir Actividades, y devuelve una lista de todos los objetos soportados por una determinada actividad de conector. Por ejemplo, una operación de creación de Salesforce podría soportar objetos tales como Cuenta, Cliente, Contacto, Oportunidad y Usuario, entre otros. La lista de retorno debe corresponder a un esquema de actividad de respuesta de ListObjects. A continuación se muestra un ejemplo de respuesta en formato XML:
<ListObjectsResponse
xmlns="http://www.approuter.com/schemas/cdk/api/">
<objectType
label="Customer"
xmlns="http://www.approuter.com/schemas/cdk/api/">Account</objectType>
<objectType
label="Account Object"
xmlns="http://www.approuter.com/schemas/cdk/api/">Customer</objectType>
<objectType
label="Detalles del cliente"
xmlns="http://www.approuter.com/schemas/cdk/api/">Contact</objectType>
<objectType
label="Detalles de la oportunidad"
xmlns="http://www.approuter.com/schemas/cdk/api/">Opportunity</objectType>
<objectType
label="Detalles del usuario"
xmlns="http://www.approuter.com/schemas/cdk/api/">User</objectType>
</ListObjectsResponse>

DescribeObjects

La interfaz DescribeObjects proporciona la entrada y la salida que permite a los usuarios trabajar de forma satisfactoria con un objeto expuesto a través de la actividad de un conector. Por ejemplo, si una operación de creación de Salesforce está seleccionada, el esquema de entrada se descubre dinámicamente en función de un objeto seleccionado en ListObjects. Esto es un ejemplo de respuesta devuelta por DescribeObjects:
<DescribeObjectResponse baseType="sObject" 
  baseTypeNS="urn:sobject.partner.soap.sforce.com" 
	name="create" typeNS="http://example.com/stockquote" 
	xmlns="http://www.approuter.com/schemas/cdk/api/"
	xmlns:con="http://www.approuter.com/schemas/cdk/config/" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<object label="createInput" maxCount="1" minCount="1" name="createInput"
		used="true">
		<con:field configurable="true" label="ObjectName" maxCount="1"
			minCount="1" name="ObjectName" used="true">
			<con:type>string</con:type>
		</con:field>
		<con:field configurable="true" label="FirstName" maxCount="1"
			minCount="1" name="FirstName" used="true">
			<con:type>string</con:type>
		</con:field>
		<con:field configurable="true" label="LastName" maxCount="1"
			minCount="1" name="LastName" used="true">
			<con:type>string</con:type>
		</con:field>
		<con:field configurable="true" label="Phone" maxCount="1"
			minCount="1" name="Phone" used="true">
			<con:type>string</con:type>
		</con:field>
	</object>
	<responseObject label="createOutput" maxCount="1"
		minCount="1" name="createOutput" used="true">
		<con:field configurable="true" label="Id" maxCount="1"
			minCount="1" name="Id" used="true">
			<con:type>string</con:type>
		</con:field>
		<con:field configurable="true" label="ObjectName" maxCount="1"
			minCount="1" name="ObjectName" used="true">
			<con:type>string</con:type>
		</con:field>
		<con:field configurable="true" label="Status" maxCount="1"
			minCount="1" name="Status" used="true">
			<con:type>string</con:type>
		</con:field>
	</responseObject>
</DescribeObjectResponse> 

Descubrimiento de esquema dinámico

La característica de descubrimiento de esquema DescribeObjects permite descubrir dinámicamente un esquema en tiempo de ejecución. El esquema se importa a la orquestación cuando alguna actividad de conector utiliza un elemento de esquema como entrada o salida. Si deben descubrirse los esquemas previamente importados mediante complexType QName y sustituirse dinámicamente como actividades de entrada o salida, establezca los atributos en la respuesta de DescribeObject como se muestra en el esquema siguiente:
< xsd:schema   targetNamespace = " urn.sample.stock
 " xmlns:xsd = "http://www.w3.org/2001/XMLSchema" >
 < xsd:element   name = "TradePriceRequest" >
 < xsd:complexType >
 < xsd:all >
 < xsd:element   name = "tickerSymbol"   type = "xsd:string"   />
 </ xsd:all >
 </ xsd:complexType >
 </ xsd:element >
 < xsd:complexType   name = "ciObject" ></ xsd:complexType >
 < xsd:complexType   name = " tradingPartner " >
 < xsd:sequence >
 < xsd:element   name = "partnerName"   type = "xsd:string"   />
 </ xsd:sequence >
 </ xsd:complexType >  

Por ejemplo, para sustituir complexType tradingPartner en el esquema precedente, establezca la información para descubrir el esquema y sustitúyalo dinámicamente como se muestra en el ejemplo siguiente:

DescribeObject Response value to 
@name   -> tradingPartner [nombre de complexType que se debe descubrir]
@typeNS  ->  url.sample.stock [espacio de nombres de complexType]
@baseType -> http://www.approuter.com/schemas/cdk/api/    [valor predeterminado de CDK]
@baseType -> cObject [valor predeterminado de CDK]
Ejemplo del menú de descripción de objetos



Comentarios | Notices


Icono de fecha y hora Última actualización: Friday, November 8, 2013


http://pic.dhe.ibm.com/infocenter/wci/v7r0m0/topic/com.ibm.wci.cdk.doc/cdk_connectorinterfaces.html