MQWDR - Cluster workload destination-record structure
The MQWDR structure contains information relating to one of the possible destinations for the message. There is one MQWDR structure for each instance of the destination queue.
This structure is supported in the following environments: AIX, Compaq Tru64 UNIX, Compaq OpenVMS Alpha, Compaq NonStop Kernel, HP-UX, Linux, OS/2, z/OS, OS/400, Solaris, and Windows.
Fields
- StrucId (MQCHAR4)
- Structure identifier.
The value is:
- MQWDR_STRUC_ID
- Identifier for cluster workload destination record.
For the C programming language, the constant MQWDR_STRUC_ID_ARRAY is also defined; this has the same value as MQWDR_STRUC_ID, but is an array of characters instead of a string.
This is an input field to the exit.
- Version (MQLONG)
- Structure version number.
The value is:
- MQWDR_VERSION_1
- Version-1 cluster workload destination record.
The following constant specifies the version number of the current version:
- MQWDR_CURRENT_VERSION
- Current version of cluster workload destination record.
This is an input field to the exit.
- StrucLength (MQLONG)
- Length of MQWDR structure.
The value is:
- MQWDR_LENGTH_1
- Length of version-1 cluster workload destination record.
The following constant specifies the length of the current version:
- MQWDR_CURRENT_LENGTH
- Length of current version of cluster workload destination record.
This is an input field to the exit.
- QMgrFlags (MQLONG)
- Queue-manager flags
These are bit flags that indicate various properties of the queue manager that hosts the instance of the destination queue described by this MQWDR structure. The following flags are defined:
- MQQMF_REPOSITORY_Q_MGR
- Destination is a full repository queue manager.
- MQQMF_CLUSSDR_USER_DEFINED
- Cluster sender channel was defined manually.
- MQQMF_CLUSSDR_AUTO_DEFINED
- Cluster sender channel was defined automatically.
- MQQMF_AVAILABLE
- Destination queue manager is available to receive messages.
- Note:
- Other flags in the field might be set by the queue manager for internal purposes.
This is an input field to the exit.
- QMgrIdentifier (MQCHAR48)
- Queue-manager identifier.
This is a string that acts as a unique identifier for the queue manager. It is generated by the queue manager.
The length of this field is given by MQ_Q_MGR_IDENTIFIER_LENGTH. This is an input field to the exit.
- QMgrName (MQCHAR48)
- Queue-manager name.
Name of the queue manager that hosts the instance of the destination queue described by this MQWDR structure. This can be the name of the local queue manager.
The length of this field is given by MQ_Q_MGR_NAME_LENGTH. This is an input field to the exit.
- ClusterRecOffset (MQLONG)
- Offset of first cluster record.
This is the offset of the first MQWCR structure that belongs to this MQWDR structure. The offset is measured in bytes from the start of the MQWDR structure.
This is an input field to the exit.
- ChannelState (MQLONG)
- Channel state.
This indicates the state of the channel that links the local queue manager to the queue manager identified by this MQWDR structure. The following values are possible:
- MQCHS_INACTIVE
- Channel is not active.
- MQCHS_BINDING
- Channel is negotiating with the partner.
- MQCHS_STARTING
- Channel is waiting to become active.
- MQCHS_RUNNING
- Channel is transferring or waiting for messages.
- MQCHS_STOPPING
- Channel is stopping.
- MQCHS_RETRYING
- Channel is reattempting to establish connection.
- MQCHS_STOPPED
- Channel has stopped.
- MQCHS_REQUESTING
- Requester channel is requesting connection.
- MQCHS_PAUSED
- Channel has paused.
- MQCHS_INITIALIZING
- Channel is initializing.
This is an input field to the exit.
- ChannelDefOffset (MQLONG)
- Offset of channel definition structure.
This is the offset of the channel definition (MQCD) for the channel that links the local queue manager to the queue manager identified by this MQWDR structure. The offset is measured in bytes from the start of the MQWDR structure.
This is an input field to the exit.
C declaration
typedef struct tagMQWDR { MQCHAR4 StrucId; /* Structure identifier */ MQLONG Version; /* Structure version number */ MQLONG StrucLength; /* Length of MQWDR structure */ MQLONG QMgrFlags; /* Queue-manager flags */ MQCHAR48 QMgrIdentifier; /* Queue-manager identifier */ MQCHAR48 QMgrName; /* Queue-manager name */ MQLONG ClusterRecOffset; /* Offset of first cluster record */ MQLONG ChannelState; /* Channel state */ MQLONG ChannelDefOffset; /* Offset of channel definition structure */ } MQWDR;
System/390 assembler declaration
MQWDR DSECT MQWDR_STRUCID DS CL4 Structure identifier MQWDR_VERSION DS F Structure version number MQWDR_STRUCLENGTH DS F Length of MQWDR structure MQWDR_QMGRFLAGS DS F Queue-manager flags MQWDR_QMGRIDENTIFIER DS CL48 Queue-manager identifier MQWDR_QMGRNAME DS CL48 Queue-manager name MQWDR_CLUSTERRECOFFSET DS F Offset of first cluster * record MQWDR_CHANNELSTATE DS F Channel state MQWDR_CHANNELDEFOFFSET DS F Offset of channel definition * structure MQWDR_LENGTH EQU *-MQWDR Length of structure ORG MQWDR MQWDR_AREA DS CL(MQWDR_LENGTH)