3.1.7.1.17 Cancel Waiting Message Read Request
This event MUST be generated with the following arguments:
iQueue: A reference to the Queue (section 3.1.1.2) ADM element instance for which the read request is pending.
iTag: An identifier for the read request to be canceled.
iStatus: A status code that indicates the reason for cancellation.
Return Value:
rStatus: A status code that can be one of the following:
MQ_OK (0x00000000).
STATUS_NOT_FOUND (0xC0000225).
The queue manager MUST perform the following actions to process this event:
For each OpenQueueDescriptor (section 3.1.1.16) ADM element instance in iQueue.OpenQueueDescriptorCollection, referred to as queueDesc, do the following:
For each WaitingMessageReadOperation (section 3.1.1.10) ADM element instance, referred to as readOp, in queueDesc.WaitingMessageReadOperationCollection:
If readOp.Tag does not equal NULL and is equal to iTag
Remove the WaitingMessageReadOperation ADM element instance referenced by readOp from iQueue.WaitingMessageReadOperationCollection.
Generate the Waiting Message Read Timer Stop (section 3.1.7.3.5) event with the following arguments:
iReader := readOp
iStatus := iStatus
Set rStatus to MQ_OK (0x00000000), and take no further action.
Set rStatus to STATUS_NOT_FOUND (0xC0000225).