3.5.4.1.3 EodGetSendInfo (Opnum 18)

The EodGetSendInfo method is received by the server in an RPC_REQUEST packet. In response, the server MUST return the represented OutgoingQueue.OutgoingTransferInfoReference.

 HRESULT EodGetSendInfo(
   [out, retval] IMSMQCollection** ppCollection
 );

ppCollection: A pointer to an EODSourceInfo (section 2.2.4.2) collection.

Return Values: The method MUST return S_OK (0x00000000) to indicate success or an implementation-specific error HRESULT on failure.

When the server processes this call, it MUST follow these guidelines:

  • If the ObjectIsInitialized instance variable is False:

    • The server MUST return MQ_ERROR_UNINITIALIZED_OBJECT (0xC00E0094), and MUST take no further action.

  • The server MUST create a local variable tempCollection and initialize it as an empty collection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_LAST_ACK

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_LAST_ACK_TIME

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_LAST_ACK_COUNT

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_FIRST_NON_ACK

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_LAST_NON_ACK

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_NEXT_SEQ

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_NO_READ_COUNT

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_NO_ACK_COUNT

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_RESEND_TIME

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_RESEND_INTERVAL

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST generate a QMMgmt Get Info event with the following input:

    • PROPID_MGMT_QUEUE_EOD_RESEND_COUNT

  • If the rStatus return value is not equal to MQ_OK (0x00000000), the server MUST return rStatus and MUST take no further action.

  • The value of the returned rPropVa MUST be added to tempCollection.

  • The server MUST copy tempCollection to the ppCollection output variable and return S_OK (0x00000000).