Manage callback functions - MQ_CB_EXIT
MQ_CB_EXIT provides an exit function to perform before and after the MQCB call. Use function identifier MQXF_CB with exit reasons MQXR_BEFORE and MQXR_AFTER to register before and after MQCB call exit functions.
The interface to this function is:MQ_CB_EXIT (&ExitParms, &ExitContext, &Hconn, &Operation, &pCallbackDesc, &Hobj, &pMsgDesc, &pGetMsgOpts, &CompCode, &Reason)where the parameters are:
- ExitParms (MQAXP) - input/output
- Exit parameter structure
- ExitContext (MQAXC) - input/output
- Exit context structure
- Hconn (MQHCONN) - input/output
- Connection handle
- Operation (MQLONG) - input/output
- Operation value
- pCallbackDesc (PMQCBD) - input/output
- Callback descriptor
- Hobj (MQHOBJ) - input/output
- Object handle
- pMsgDesc (PMQMD) - input/output
- Message descriptor
- pGetMsgOpts (PMQGMO) - input/output
- Options that control the action of MQCB
- CompCode (MQLONG) - input/output
- Completion code
- Reason (MQLONG) - input/output
- Reason code qualifying CompCode
C language invocation
The queue manager logically defines the following variables:MQAXP ExitParms; /* Exit parameter structure */ MQAXC ExitContext; /* Exit context structure */ MQHCONN Hconn; /* Connection handle */ MQLONG Operation; /* Operation value. */ MQCBD pMsgDesc; /* Callback descriptor. */ MQHOBJ Hobj; /* Object handle. */ PMQMD pMsgDesc; /* Message descriptor */ PMQGMO pGetMsgOpts; /* Options that define the operation of the consumer */ PMQLONG CompCode; /* Completion code. */ PMQLONG Reason; /* Reason code qualifying CompCode. */The queue manager then logically calls the exit as follows:
MQ_CB_EXIT (&ExitParms, &ExitContext, &Hconn, &Operation, &Hobj, &pMsgDesc, &pGetMsgOpts, &CompCode, &Reason);Your exit must match the following C function prototype:
void MQENTRY MQ_CB_EXIT ( PMQAXP pExitParms; /* Exit parameter structure */ PMQAXC pExitContext; /* Exit context structure */ PMQHCONN pHconn; /* Connection handle */ PMQLONG pOperation; /* Callback operation */ PMQHOBJ pHobj; /* Object handle */ PPMQMD ppMsgDesc; /* Message descriptor */ PPMQGMO ppGetMsgOpts; /* Options that control the action of MQCB */ PMQLONG pCompCode; /* Completion code */ PMQLONG pReason; /* Reason code qualifying CompCode */Parent topic: Exit functions