cciTransactionEventCallback

Esta es una función que se puede registrar como una devolución de llamada y se invoca cada vez que finaliza una transacción de flujo de mensajes. Se invoca en cada transacción de flujo de mensajes dentro del grupo de ejecución en el que se ha registrado la llamada de devolución, si la salida de usuario está en estado activo. La llamada de devolución se registra proporcionando un puntero a la función del campo iFpTransactionEventCallback de la estructura CCI_UE_VFT que se ha pasado a cciRegisterUserExit.

Sintaxis

typedef void (*cciTransactionEventCallback) (
                                 CciDataContext*         userContext,
                                 CciTransactionEventType type,
                                 CciMessage*             environment,
                                 CciNode*                inputNode);

Parámetros

userContext (entrada)
Este es el valor que se ha pasado a la función cciRegisterUserExit.
type
Describe el suceso que se ha producido. Los valores posibles son:
  • CCI_TRANSACTION_EVENT_COMMIT

    Se ha comprometido correctamente una transacción.

  • CCI_TRANSACTION_EVENT_ROLLBACK

    Se ha restituido una transacción.

Si la transacción se ha restituido debido a una excepción no manejada, se pueden obtener los detalles de la excepción invocando cciGetLastExceptionData.
environment
Este un manejador para el objeto de entorno para el flujo de mensajes actual. Aunque la salida de usuario puede actualizar este árbol, se borra después de regresar de esta función, por lo tanto, se pierden las actualizaciones.
inputNode
Este es un manejador para el nodo de entrada que lee el mensaje de entrada que ha activado la transacción. Se puede utilizar para realizar llamadas a funciones como, por ejemplo, cciGetNodeName, cciGetNodeType y cniGetBrokerInfo.

Valores de retorno

Ninguno

Ejemplo

void myTransactionEventCallback(
                     CciDataContext*         userContext,
                     CciTransactionEventType type,
                     CciMessage*             environment,
                     CciNode*                inputNode){
…
…
}
Conceptos relacionados
Desarrollo de salidas de usuario
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 22/08/2006
as35960_