3.10.4.1.11 PrivLevel (Opnum 17)

The PrivLevel method is received by the server in an RPC_REQUEST packet. In response, the server returns the privacy level of the referenced queue.

 [propget] HRESULT PrivLevel(
   [out, retval] long* plPrivLevel
 );

plPrivLevel: A pointer to a long that corresponds to one of the MQPRIVLEVEL (section 2.2.2.7) enumeration values.

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

When processing this call, the server MUST abide by the following contract:

  • If IsRefreshed is FALSE call Refresh (section 3.10.4.1.29).

  • If Refresh returns a value other than S_OK (0x00000000), return the HRESULT returned by Refresh and take no further action.

  • If IsApplicationQueue is True:

    • Set the plPrivLevel output parameter to the value of refQueue.PrivacyLevel as per the mapping defined in MQPRIVLEVEL (section 2.2.2.7).

  • Else:

    • Set the plPrivLevel output parameter to MQ_PRIV_LEVEL_OPTIONAL.

  • Return S_OK (0x00000000), and take no further action.