Inicio del cambio

cciInputMessageCallback

Ésta es una función que se puede registrar como una devolución de llamada y se invoca cada vez que el nodo de entrada lee un mensaje y antes de que ese mensaje se propague por el flujo de mensajes. Se invoca para todos los mensajes propagados dentro del grupo de ejecución en el que se registró la devolución de llamada, si el estado de la rutina de salida de usuario es activo. La devolución de llamada se registra proporcionando un puntero a la función al pasar el campo iFpInputMessageCallback de la estructura CCI_UE_VFT a cciRegisterUserExit.

Sintaxis

typedef void (*cciInputMessageCallback) (
CciDataContext* userContext,
CciMessage*        message,
CciMessage* localEnvironment,
CciMessage*        exceptionList,
CciMessage* environment,
CciMessageOrigin messageOrigin,
CciNode* inputNode);

Parámetros

userContext (entrada)
Éste es el valor pasado a la función cciRegisterUserExit.
message
Éste es un manejador para el objeto de mensaje. El código de rutina de salida de usuario no debe actualizar este árbol.
localEnvironment
Éste es un manejador para el objeto de entorno local.
exceptionList
Éste es un manejador para el objeto de lista de excepción.
environment
Éste es un manejador para el objeto de entorno para el flujo de mensajes actual.
messageOrigin
En función del tipo de nodo de entrada, el mensaje puede haberse originado en una corriente de bits (CCI_MESSAGE_ORIGIN_BITSTREAM) o en un árbol (CCI_MESSAGE_ORIGIN_TREE). Por tanto, la rutina de salida de usuario puede acceder a uno de ellos sin provocar que el analizador realice un proceso. Por ejemplo, en el caso del nodo MQInput, puede acceder con seguridad a la corriente de bits mientras que, en el caso del nodo de entrada JMS, puede acceder con seguridad al árbol. Se puede acceder a la corriente de bits invocando cniBufferPointer, cniBufferSize, o cniBufferByte. Se puede acceder al árbol invocando cniRootElement y utilizando las funciones de navegación de elementos de sintaxis habotuales (por ejemplo, cniFirstChild ).
Nota: Aunque este parámetro indica a las rutinas de salida de usuario a qué pueden acceder sin que el analizador realice un proceso, es posible que el código de la rutina de salida de usuario ignore este indicación y altere el tiempo de análisis.
inputNode
Éste es un manejador para el nodo de entrada que lee este mensaje de entrada. Puede utilizarse para hacer llamadas a funciones como por ejemplocciGetNodeName, cciGetNodeType y cniGetBrokerInfo.

Valores de retorno

Ninguno.

Ejemplo

void myInputMessageCallback(
CciDataContext* userContext,
CciMessage*        message,
CciMessage* localEnvironment,
CciMessage*        exceptionList,
CciMessage* environment,
CciMessageOrigin messageOrigin,
CciNode* inputNode){
…
…
}
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 04/05/2006
as35950_


Fin del cambio