ax_reg - AX_REG_EXIT
AX_REG_EXIT provides an ax_reg exit function to perform before and after ax_reg processing. Use function identifier MQXF_AXREG with exit reasons MQXR_BEFORE and MQXR_AFTER to register the before and after ax_reg call exit functions.
The interface to this function is:
AX_REG_EXIT (&ExitParms, &ExitContext, &pXID, &Rmid, &Flags, &XARetCode)
where the parameters are:- ExitParms (MQAXP) - input/output
- Exit parameter structure.
- ExitContext (MQAXC) - input/output
- Exit context structure.
- Hconn (MQHCONN) - input
- Connection handle.
- pXID (MQPTR) - input/output
- Transaction branch ID.
- Rmid (MQLONG) - input/output
- Resource manager identifier.
- Flags (MQLONG) - input/output
- Resource manager options.
- XARetCode (MQLONG) - input/output
- Response from XA call.
C language invocation
The queue manager logically defines the following variables:
MQAXP ExitParms; /* Exit parameter structure */
MQAXC ExitContext; /* Exit context structure */
MQPTR pXID; /* Transaction branch ID */
MQLONG Rmid; /* Resource manager identifier */
MQLONG Flags; /* Resource manager options*/
MQLONG XARetCode; /* Response from XA call */
The queue manager then logically calls the exit as follows:
AX_REG_EXIT (&ExitParms, &ExitContext, &pXID, &Rmid, &Flags, &XARetCode);
Your exit must match the following C function prototype:
typedef void MQENTRY AX_REG_EXIT (
PMQAXP pExitParms, /* Address of exit parameter structure */
PMQAXC pExitContext, /* Address of exit context structure */
PMQPTR ppXID, /* Address of transaction branch ID */
PMQLONG pRmid, /* Address of resource manager identifier */
PMQLONG pFlags, /* Address of resource manager options*/
PMQLONG pXARetCode); /* Address of response from XA call */