cciRegisterUserExit

Esta es una función de programa de utilidad que puede invocarse mediante el código de usuario cuando se invoca bipInitializeUserExits. Se invoca mediante el código de usuario si el usuario desea registrar las funciones que se invocarán cada vez que se produzcan sucesos determinados.

Sintaxis

typedef struct cci_UEVft {
    int     reserved;
    char    StrucId[4];
    int     Version;
    cciInputMessageCallback      iFpInputMessageCallback;
    cciTransactionEventCallback  iFpTransactionEventCallback;
    cciPropagatedMessageCallback iFpPropagatedMessageCallback;
    cciNodeCompletionCallback    iFpNodeCompletionCallback;

} CCI_UE_VFT;

void cciRegisterUserExit (
  int*                        returnCode,
  CciChar*    name,
  CciDataContext*                  userContext,
  CCI_UE_VFT*                      functionTable);

Parámetros

returnCode (salida)
Requiere el código de retorno de la función. Los valores posibles son:
  • CCI_DUP_USER_EXIT_NAME

    El nombre especificado coincide con el nombre de una salida de usuario registrada anteriormente en el grupo de ejecución actual.

  • CCI_INV_USER_EXIT_NAME

    El nombre especificado no es válido. Esto puede ser debido a que se ha especificado un puntero nulo, una serie vacía o una serie que contiene caracteres que no son alfanuméricos.

Name (entrada)
Debe contener un puntero a una serie finalizada en nulo de CciChars que especifican un nombre para la salida de usuario. El nombre debe ser exclusivo entre todas las salidas de usuario que se pueden instalar en el mismo intermediario. Este nombre se utiliza para identificar la salida de usuario en, por ejemplo:
  • Mensajes de rastreo de usuario
  • Mensajes de excepción o de syslog
  • Mandatos de administración (por ejemplo, mqsichangeflowuserexits)
El nombre tiene las restricciones siguientes:
  • Debe contener sólo caracteres alfanuméricos.
  • No debe tener más de 255 caracteres.
  • El nombre debe ser exclusivo entre todas las salidas de usuario que se pueden instalar en el mismo intermediario.
userContext (entrada)
Permite al canal de llamada proporcionar un puntero de contexto que, cuando se llama, se pasa a la función de devolución de llamada. Este parámetro puede ser NULL.
functionTable (entrada)
Este es un puntero a una estructura cuyos campos deben contener punteros a funciones que coinciden con las firmas correctas o deben contener valores nulos. Un valor nulo para cualquiera de estos campos indica que la salida de usuario no se debe invocar para dicho suceso.

Valores de retorno

Ninguno. Si se produce un error, el parámetro returnCode indica la razón del mismo.

Ejemplo

extern "C"{

void bipInitializeUserExits(){

  int          rc = CCI_SUCCESS;
  CCI_UE_VFT myVft = {CCI_UE_VFT_DEFAULT};
  myVft.iFpInputMessageCallback      = myInputMessageCallback;
  myVft.iFpTransactionEventCallback  = myTransactionEventCallback;
  myVft.iFpPropagatedMessageCallback = myPropagatedMessageCallback;
  myVft.iFpNodeCompletionCallback    = myNodeCompletionCallback;
  
  cciRegisterUserExit(&rc,
                      MyConstants::myUserExitName,
                      0,
                      &myVft);

  /*debe comprobar ahora el código de retorno de los valores no previstos*/
  
  return;
}

}/*fin de extern "C" */
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
as35920_