3.1.7.9 Establish Transport Connection

This event MUST be generated with the following argument:

  • iOutgoingQueue: A reference to an OutgoingQueue ([MS-MQDMPR] section 3.1.1.3) ADM element instance.

Return Value:

  • None.

The following steps MUST be performed to process this event:

  • Set iOutgoingQueue.State to Waiting.

  • If iOutgoingQueue.Multicast is TRUE, the protocol MUST establish a PGM [RFC3208] connection to the IP address indicated by the multicast format name ([MS-MQMQ] section 2.1.6) in iOutgoingQueue.DestinationFormatName.

  • Otherwise:

    • Let DestinationHost be a string that is initialized to the host part of the format name in iOutgoingQueue.DestinationFormatName, as defined in [MS-MQMQ] section 2.1.2.

    • The URL formed by removing "DIRECT=" from the beginning of DestinationHost MUST be checked against the URLs in the From ADM attributes of the Redirection ADM element instances in the OutboundRedirectionCollection (section 3.1.1.1.10.1) ADM element. If a match is found, the URL SHOULD also be checked against the URLs in the OutboundRedirectionExceptionCollection ADM element.<30> If a match is not found in the exceptions, then DestinationHost MUST be set to the host part of the URL in the To ADM attribute of the matching Redirection ADM element instance in the OutboundRedirectionCollection ADM element.

    • The protocol MUST establish an HTTP 1.1 connection to the host indicated by DestinationHost.

  • iOutgoingQueue.State MUST be set to Connected, and the Session Cleanup Timer (section 3.1.2.4) MUST be started.