Queues have a number of properties, which are listed below. Information about these properties is passed either via discrete API parameters or configuration structures (MQeFields objects).
The first list shows all the possible queue properties and indicates which
are available in the code bases. All other queues will have these
properties also.
Table 14. Queue properties available in each code base
Property | Description | Java | Native | Read/Write |
---|---|---|---|---|
Queue name | Identifies the name of the local queue | Yes | Yes | Read (write on create) |
Local qMgr | The name of the local queue manager owning the queue | Yes | Yes | Read (write on create) |
Adapter | The class (or alias) of a storage adapter that provides access to the message storage medium (see Storage adapters on page 116) | Yes | No. There is only one adapter in the native codebase | Read |
Alias | Alias names are optional alternative names for the queue (see below) | Yes | Yes | Read/Write |
Attribute rule | The attribute class (or alias) associated with the security attributes of the queue (for more details see later in this chapter) | Yes | No | Read/Write |
Authenticator | The authenticator class (or alias) associated with the queue (for more details see later in this chapter) | Yes | No | Read/Write |
Class | The class (or alias) used to realize the local queue | Yes | No | Read |
Compressor | The compressor class (or alias) associated with the queue (for more details see later in this chapter) | Yes | No | Read/Write |
Cryptor | The cryptor class (or alias) associated with the queue (for more details see later in this chapter) | Yes | No | Read/Write |
Description | An arbitrary string describing the queue | Yes | Yes | Read/Write |
Expiry | The time after which messages placed on the queue expire | Yes | Yes | Read/Write |
Maximum depth | The maximum number of messages that may be placed on the queue | Yes | Yes | Read/Write |
Maximum message length | The maximum length of a message that may be placed on the queue | Yes | Yes | Read/Write |
Message store | The class (or alias) that determines how messages on the local queue are stored | Yes | No - only one message store available | Read (write on create) |
Path | The location of the queue store | Yes | Yes | Read |
Priority | The default priority associated with messages on the queue | Yes | Yes | Read/Write |
Rule | The class (or alias) of the rule associated with the queue; determines behavior when there is a change in state for the queue | Yes | No - rules handled on global level | Read/Write |
Target registry | The target registry to be used with the authenticator class (that is, None, Queue, or Queue manager) | Yes | No | Read/Write |
Pass Java parameters in using MQeFields objects. Pass the values using field elements of specific types.
The field names are as follows. All the symbolic names are
public static final static Strings on the
MQeQueueAdminMsg class.
Element type | Field name constants | Notes | |
---|---|---|---|
Symbolic | Value | ||
Unicode | Queue_CreationDate | qcd |
|
Int | Queue_CurrentSize | qcs |
|
Unicode | Queue_Description | qd |
|
Long | Queue_Expiry | qe |
|
ASCII | Queue_FileDesc | qfd |
|
Int | Queue_MaxMsgSize | qms | If no limit, use Queue_NoLimit, which is -1 |
Int | Queue_MaxQSize | qmqs | If no limit, use Queue_NoLimit, which is -1 |
ASCII | Queue_Mode | qm | Possible values are given by constants Queue_Asynchronous and Queue_Synchronous |
Byte | Queue_Priority | qp | Between 0 and 9 inclusive |
ASCII array | Queue_QAliasNameList | qanl |
|
ASCII | Queue_QMgrName | qqmn |
|
ASCII | Queue_AttrRule | qar |
|
ASCII | Queue_Authenticator | qau |
|
ASCII | Queue_Compressor | qco |
|
ASCII | Queue_Cryptor | qcr |
|
Byte | Queue_TargetRegistry | qtr | Possible values are given by the constants: Queue_RegistryNone Queue_RegistryQMgr Queue_RegistryQueue |
ASCII | Queue_Rule | qr |
|
All the C parameters are passed in using a parameter structure. This
structure needs to be initialized before it can be used by setting it to
LOCAL_Q_INIT_VAL.
Element type | Element name | Description |
---|---|---|
MQEINT32 | opFlags | Flags to indicate what parts of this structure have been set or requested |
MQeStringHndl | hDescription | Description of the queue |
MQeStringHndl | hFileDesc | File description for the message store (read/create/write) |
MQeVectorHndl | hQAliasNameList | List of aliases |
MQEINT64 | queueExpiry | Queue expiry |
MQEINT64 | queueCreationDate | Creation date of the queue |
MQEINT32 | queueMaxMsgSize | Maximum size of the message on a queue |
MQEINT32 | queueMaxQSize | Maximum number of messages on the queue |
MQEINT32 | queueCurrentSize | Current size of the queue (all message states) |
MQEBOOL | queueActive | Indication of the state of the queue |
MQEBYTE | queuePriority | Priority of messages on the queue |