WebSphere Message Broker, Versión 8.0.0.5 Sistemas operativos: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte la información sobre la última versión del producto en IBM Integration Bus, Versión 9.0

cniRun

Esta función declara el nodo como un nodo de entrada.

Los nodos de proceso de mensajes y los nodos de salida no la utilizan, y no es necesario llamar a cniEvaluate. El intermediario asigna una hebra y llama a esta función en dicha hebra.

Definida en Tipo Miembro
CNI_VFT Condicional iFpRun

Sintaxis

int cniRun(
  CCiContext*  context,
  CCiMessage*  localEnvironment,
  CciMessage* exceptionList,
  CciMessage* message
);

Parámetros

context
Dirección del contexto para la instancia del nodo, creado por el nodo y devuelto por la función cniCreateNodeContext (entrada).
localEnvironment
Dirección del objeto de entorno local de entrada (entrada).

Por compatibilidad con versiones anteriores, puede hacer referencia a este parámetro como destinationList.

exceptionList
Dirección de la lista de excepciones para el mensaje (entrada).
message
Dirección del objeto de mensaje al que se han adjuntado los datos (entrada).

El nodo definido por el usuario puede llamar a cniSetInputBuffer para asociar una corriente de bits a este mensaje. No se da soporte a llenar con datos el árbol de este mensaje, por lo que las llamadas a funciones como cniAddAsLastChild o cniCreateElementAsLastChildFromBitstream no funcionan. Para crear partes del árbol, cree un mensaje nuevo utilizando cniCreateMessage en lugar de proporcionar un almacenamiento intermedio que se analice como el mensaje entero.

Por ejemplo, si tiene una corriente de bits que debe utilizarse como la sección de carga útil y también desea añadir una cabecera, complete los pasos siguientes:
  1. Crear un nuevo mensaje utilizando cniCreateMessage.
  2. Crear la sección de cabecera en este nuevo mensaje utilizando las funciones de utilidad de acceso a elementos de sintaxis, por ejemplo cniCreateElementAsLastChildUsingParser, y pasar el elemento raíz de este nuevo mensaje.
  3. Añadir campos a la cabecera utilizando funciones como cniCreateElementAsLastChild.
  4. Crear el cuerpo del mensaje analizando la corriente de bits llamando a cniCreateElementAsLastChildFromBitstream, y pasando el elemento raíz de este nuevo mensaje.

Valores de retorno

El intermediario invoca esta función como parte de un bucle. El significado del valor de retorno es el siguiente:

CCI_TIMEOUT
El nodo de entrada no ha recibido los datos de entrada. Este valor significa que el control debe devolverse al intermediario si se solicita la reconfiguración del flujo de mensajes. Un nodo de entrada definido por el usuario debe volver regularmente para devolver el control al intermediario.
CCI_SUCCESS_CONTINUE
Se ha procesado satisfactoriamente un mensaje. El intermediario realiza el proceso predeterminado de confirmación de transacción. Se llama inmediatamente a la función de implementación cniRun del nodo de entrada para que el nodo pueda continuar el proceso.
CCI_SUCCESS_RETURN
Se ha procesado satisfactoriamente un mensaje. El intermediario realiza el proceso predeterminado de confirmación de transacción. El nodo de entrada ha determinado que la hebra no es necesaria y ésta se devuelve a la agrupación de hebras de flujo de mensajes. Si este proceso se realiza en la única hebra, o en la última hebra activa, el intermediario impide que esta última hebra se devuelva a la agrupación, de lo contrario, no habrá ninguna otra hebra activa que pueda despachar otra hebra. En esta situación, el intermediario invoca la función de implementación cniRun inmediatamente, como si se hubiera devuelto CCI_SUCCESS_CONTINUE.
CCI_FAILURE_CONTINUE
Se ha detectado un error en el proceso de un mensaje y el nodo está solicitando que se realice el proceso de restitución de transacción. Se llama inmediatamente a la función de implementación cniRun del nodo de entrada.
CCI_FAILURE_RETURN
Se ha detectado un error en el proceso de un mensaje y el nodo está solicitando que se realice el proceso de restitución de transacción. Sin embargo, el nodo de entrada ha determinado que la hebra no es necesaria y que se puede devolver a la agrupación de hebras de flujo de mensaje. Si este proceso se realiza en la última hebra activa, el intermediario impide que esta última hebra se devuelva a la agrupación, de lo contrario, no habrá ninguna otra hebra activa que pueda despachar otra hebra. En esta situación, el intermediario invoca la función de implementación cniRun inmediatamente, como si se hubiera devuelto CCI_FAILURE_CONTINUE.
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Comentarios

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última actualización:
        
        Última actualización: 2015-02-28 17:00:22


Tema de referenciaTema de referencia | Versión 8.0.0.5 | as07480_