3.1.1.16 OpenQueueDescriptor

The OpenQueueDescriptor ADM element contains information about a local queue that has been opened for message operations by one of the MSMQ protocols. This instance can be shared between MSMQ protocols. This ADM element MUST contain the following ADM attributes:

Handle: A numeric value that identifies the OpenQueueDescriptor ADM element instance. This value MUST be unique across all OpenQueueDecriptor ADM element instances on the local queue manager.

ContextValue: A numeric value that identifies the OpenQueueDescriptor ADM element instance. This value MUST be unique across all OpenQueueDescriptor ADM element instances on the local queue manager.

AccessType: A list of values that MUST contain one of the QueueAccessType enumeration values specified in section 3.1.1.17.

ShareMode: A QueueShareMode enumeration value (section 3.1.1.17) that specifies the sharing mode for the queue.

QueueReference: A reference to the Queue (section 3.1.1.2) ADM element instance with which the OpenQueueDescriptor ADM element instance is associated.

FormatName: The format name of the queue referenced by the QueueReference ADM attribute of the OpenQueueDescriptor ADM element instance.

Multiple: A Boolean that is TRUE if this OpenQueueDescriptor ADM element instance was created by passing a multiple-element format name ([MS-MQMQ] section 2.1.7) to the Open Queue (section 3.1.7.1.5) event. If this value is FALSE, the OpenQueueDescriptorCollection ADM attribute MUST be empty. If this value is TRUE:

  • The AccessType ADM attribute MUST be SendAccess.

  • The RemoteReadState ADM attribute MUST be None.

  • The QueueReference ADM attribute MUST be NULL.

    OpenQueueDescriptorCollection: A collection of OpenQueueDescriptor ADM element instances populated and owned by this OpenQueueDescriptor ADM element instance if the Multiple ADM attribute is TRUE, or empty if the Multiple ADM attribute is FALSE.

    RemoteReadState: An enumeration that indicates whether the OpenQueueDescriptor ADM element instance was created to service Remote Read operations. This MUST have one of the following values:

  • None: The OpenQueueDescriptor ADM element instance was not created to service Remote Read operations.

  • Opened: The OpenQueueDescriptor ADM element instance was created to service Remote Read operations. The Handle and ContextValue are known only to the Remote Read client.

  • ReadyForRead: The OpenQueueDescriptor ADM element instance is being used for a Remote Read operation. The Handle and ContextValue are known to both the Remote Read client and server.

    CursorCollection: A collection of Cursor (section 3.2) ADM element instances that iterate over the Queue ADM element instance that this descriptor references.

    WaitingMessageReadOperationCollection: A first-in/first-out collection of WaitingMessageReadOperation (section 3.1.1.10) ADM element instances associated with this Queue ADM element instance.