3.1.5.5.1 Mark Acknowledged Messages

The protocol MUST set the ReceivedSessionAck ADM attribute to TRUE for each OutgoingMessagePosition (section 3.1.1.3.1.2) ADM element instance rOutgoingMessagePosition in the OutgoingMessageTable ADM element where rOutgoingMessagePosition.SequenceNumber is less than or equal to the SessionHeader.AckSequenceNumber field.

The UnAckedMessageCount ADM element MUST be decremented by the number of  OutgoingMessagePosition ADM element instances with ReceivedSessionAck ADM attributes that were set to TRUE by the preceding operation.

For each OutgoingMessagePosition ADM element instance sOutgoingMessagePosition in the OutgoingMessageTable ADM element where sOutgoingMessagePosition.ReceivedSessionAck is FALSE, 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 sOutgoingMessagePosition.MessagePosition.

  • iData := A reference to sOutgoingMessagePosition.

The order in which each OutgoingMessagePosition ADM element instance sOutgoingMessagePosition is passed to the Add Message To Dispatch Collection event MUST match the order in which the instance is listed in the OutgoingMessageTable ADM element.