3.1.1.2 Queue

The Queue ADM element describes the attributes of a queue that is hosted by a queue manager. This ADM element extends the DirectoryObject ADM element.

If the Queue ADM element instance represents a public queue, then the queue manager MUST treat the following attributes as directory attributes; otherwise, the queue manager MUST treat these as persistent attributes.

Label: A descriptive label for the Queue ADM element instance.

CreateTime: An integer value representing the time at which the Queue ADM element instance was created. The time is represented as the number of seconds elapsed since midnight (00:00:00), January 1, 1970 UTC.

ModifyTime: An integer value representing the time at which the attributes of the Queue ADM element instance were last modified. The time is represented as the number of seconds elapsed since midnight (00:00:00), January 1, 1970 UTC.

Type: An application-specific GUID that message queuing applications can use to specify the type of service that the queue provides. The queue manager MUST NOT interpret or process this value.

Pathname: A string that specifies the name of the computer that hosts the queue manager and the name of the queue. The format of the Pathname ADM attribute is specified in [MS-MQMQ] section 2.1.1.

QualifiedPathname: A string with the same format as the Pathname ADM attribute. The computer name in the QualifiedPathname ADM attribute MUST be an FQDN.

PrivateQueueNumber: An integer value that uniquely identifies a private queue hosted by a queue manager. This ADM attribute is valid only when the QueueType ADM attribute value is Private.

Journaling: A Boolean that specifies whether journaling is enabled for the queue.

  • True: If journaling is enabled.

  • False: If journaling is disabled.

Quota: The physical disk quota, in kilobytes, allocated for messages in the queue.

JournalQuota: The storage space, in kilobytes, allocated to the journal storage for the queue.

Authentication: A Boolean that indicates whether the queue accepts only authenticated messages.

  • True: If the queue accepts only authenticated messages.

  • False: If the queue can accept unauthenticated messages.

PrivacyLevel: An enumeration that specifies the encryption requirements for messages that are placed in the queue. This enumeration MUST have one of the following values:

  • None: The queue accepts only messages that are not encrypted during the message transfer process.

  • Optional: The queue accepts all messages, regardless of their encryption during the message transfer process.

  • Body: The queue accepts only messages that are encrypted during the message transfer process.

Transactional: A Boolean that specifies whether the queue is transactional.

  • True: If the queue is transactional.

  • False: If the queue is non-transactional.

MulticastAddress: Contains the IP multicast address associated with the queue or NULL if no IP multicast address is associated.

Security: Contains the security descriptor of the queue. The ACEs ([MS-DTYP] section 2.4.4) for this security descriptor MUST use the ACCESS_MASK ([MS-DTYP] section 2.4.3) values as listed in the MQQUEUEACCESSMASK ([MS-MQMQ] section 2.2.24) enumeration.

BasePriority: The default priority assigned to the queue.

FullPath: A distinguished name (DN) that can be used to lookup this Queue ADM element instance in the directory.

DirectoryPath: The directory-specific path for looking up the Queue ADM element instance in the directory.

Scope: An enumeration that specifies the scope of the queue. This attribute SHOULD have a constant value of Enterprise and SHOULD NOT be treated as a directory attribute.<9> This enumeration MUST have one of the following values:

  • Site: The queue is discoverable in the site to which the hosting queue manager belongs.

  • Enterprise: The queue is discoverable in the MSMQ enterprise.

The following attributes cannot be published in the directory:

Active: A Boolean that specifies whether the queue is currently active. This is a computed attribute that MUST be based on the following.

  • True if either one of the following is true:

  1. The queue is an outgoing queue, and there is at least one message awaiting transfer from the queue.

  2. The OpenQueueDescriptorCollection ADM attribute of the Queue ADM element instance is not empty.

  • False if both of the preceding are not true.

TotalBytes: The storage space, in bytes, consumed by all the messages in a queue.

QueueManager: A reference to the instance of the QueueManager (section 3.1.1.1) ADM element that hosts this queue.

QueueType: An enumeration that specifies the type of the queue. This is a persistent attribute. It MUST contain one of the following values:

  • Private: The queue directory attributes are not published in the directory.

  • Public: The queue directory attributes are published in the directory.

  • System: The queue is created by the queue manager on initialization. System queues can be used for system operation and journaling messages. The directory attributes for system queues are not published in the directory.

  • Connector: The queue is a connector queue.

JournalQueueReference: A reference to the queue journal for this queue.

SubqueueCollection: A collection of Queue ADM element instances that represent the subqueues of this queue.

IncomingTransactionalTransferInfoCollection: A collection of IncomingTransactionalTransferInfo (section 3.1.1.5) ADM element instances that contain information about all transactional message transfers from remote queue managers to this queue.

MessagePositionList: An ordered linked-list of MessagePosition (section 3.1.1.11) ADM element instances. The entries in the list MUST be arranged in ascending order by arrival time within priority. Within the MessagePositionList ADM attribute, the following special locations are defined:

  • Head: A reference that indicates the first entry in the list. If the list is empty, Head MUST equal End.

  • Tail: A reference that indicates the last entry in the list.

  • Start: A reserved entry that is not linked to the list by its Next reference. This special entry is referenced by new cursors that have not been used.

  • End: A reserved entry that is referenced by cursors that have advanced past the Tail.

OpenQueueDescriptorCollection: A collection of OpenQueueDescriptor (section 3.1.1.16) ADM element instances.