Inquiring about and setting object attributes
Attributes are the properties that define the characteristics of an IBM MQ object.
They affect the way that a queue manager processes an object. The attributes of each type of IBM MQ object are described in detail in Attributes of objects.
Some attributes are set when the object is defined, and can be changed only by using the IBM MQ commands; an example of such an attribute is the default priority for messages put on a queue. Other attributes are affected by the operation of the queue manager and can change over time; an example is the current depth of a queue.
We can inquire about the current values of most attributes using the MQINQ call. The MQI also provides an MQSET call with which we can change some queue attributes. We cannot use the MQI calls to change the attributes of any other type of object. Instead you must use one of the following resources:- The MQSC facility, which is described in MQSC reference.
- The CHGMQMx CL commands, which are described in CL commands reference for IBM i, or the MQSC facility.
- The ALTER operator commands, or the DEFINE commands with the REPLACE option, which are described in MQSC commands.
Both the MQINQ and the MQSET calls use arrays of selectors to identify those attributes to inquire about or set. There is a selector for each attribute that we can work with. The selector name has a prefix, determined by the nature of the attribute:
Prefix | Description |
---|---|
MQCA_ | These selectors refer to attributes that contain character data (for example, the name of a queue). |
MQIA_ | These selectors refer to attributes that contain either numeric values (such as CurrentQueueDepth, the number of messages on a queue) or a constant value (such as SyncPoint, whether the queue manager supports syncpoints). |
Before we use the MQINQ or MQSET calls our application must be connected to the queue manager, and you must use the MQOPEN call to open the object for setting or inquiring about attributes. These operations are described in Connecting to and disconnecting from a queue manager and Opening and closing objects.
Use the following links to find out more about getting inquiring about and setting object attributes:- Inquiring about the attributes of an object
- Some cases where the MQINQ call fails
- Set queue attributes