3.1.7.7 Message Position Available
This event is triggered when the Message Position Available ([MS-MQDMPR] section 3.1.7.2.2) event is raised.
The following arguments are passed when the event is raised:
iQueue: A reference to a Queue ADM element instance.
iPosition: A reference to a MessagePosition ADM element instance.
The following steps MUST be performed to process the event:
If iQueue is not an OutgoingQueue ADM element instance, take no further action.
If neither of the following conditions is met, take no further action.
If iQueue.State is equal to OnHold or Inactive, take no further action.
Convert the Message ADM element referred to by iPosition.MessageReference to an SRMPMessage ADM element by adding the fields described in section 3.1.1.1.4, initialized as follows:
AwaitingStreamReceipt is set to FALSE.
AwaitingFinalStreamReceipt is set to FALSE.
If the iQueue.ConnectionHistory array is empty, the protocol MUST establish a connection by raising an Establish Transport Connection (section 3.1.7.9) event with the following argument:
iOutgoingQueue := iQueue
The Add Message To Dispatch Collection ([MS-MQDMPR] section 3.1.7.1.28) event MUST be raised with the following arguments.
iPosition := A reference to OutgoingMessagePosition.MessagePosition.
iData := NULL.