3.1.4.12.6 IWbemRefreshingServices::ReconnectRemoteRefresher (Opnum 8)

The IWbemRefreshingServices::ReconnectRemoteRefresher method MUST restore a set of CIM instances and enumerations that are passed in apReconnectInfo to a refresher.

 HRESULT ReconnectRemoteRefresher(
   [in] _WBEM_REFRESHER_ID* pRefresherId,
   [in] long lFlags,
   [in] long lNumObjects,
   [in] DWORD dwClientRefrVersion,
   [in, size_is(lNumObjects)] _WBEM_RECONNECT_INFO* apReconnectInfo,
   [in, out, size_is(lNumObjects)] 
     _WBEM_RECONNECT_RESULTS* apReconnectResults,
   [out] DWORD* pdwSvrRefrVersion
 );

pRefresherId: MUST be a pointer to the _WBEM_REFRESHER_ID structure, as specified in section 2.2.21, which identifies the client that is requesting refresh services. This parameter MUST NOT be NULL.

lFlags: This parameter is not used, and its value SHOULD be 0x0.

lNumObjects: MUST be the number of CIM instances that are contained in the apReconnectInfo array.

dwClientRefrVersion: MUST be the version of the client refresher. This value SHOULD<70> be 0x2. The server MUST allow all client versions.

apReconnectInfo: MUST be a pointer to the _WBEM_RECONNECT_INFO structure array (specified in section 2.2.22) that contains a type and a CIM path to the refresher objects. This parameter MUST NOT be NULL.

apReconnectResults: MUST be a pointer to the _WBEM_RECONNECT_RESULTS structure array, which MUST contain the identifier for each CIM instance and enumeration, and the success or failure status of the reconnection. This parameter MUST NOT be NULL.

pdwSvrRefrVersion: MUST be an output parameter that is the version of the server refresher. This value SHOULD be 0x1.

Return Values: This method MUST return an HRESULT value that MUST indicate the status of the method call. The server MUST return WBEM_S_NO_ERROR, as specified in section 2.2.11, to indicate the successful completion of the method.

WBEM_S_NO_ERROR (0x00)

The security principal that makes the call MUST have WBEM_REMOTE_ENABLE and WBEM_ENABLE accesses to the namespace; otherwise, WBEM_E_ACCESS_DENIED MUST be returned.

The description of IWbemRefreshingServices is specified in IWbemRefreshingServices Interface.

In response to IWbemRefreshingServices::ReconnectRemoteRefresher, the server MUST evaluate the pRefresherId and apReconnectInfo arrays; and MUST reconnect to the refresher the requested CIM objects and enumerators that are listed in apReconnectInfo, as specified in this section.

If one of the CIM objects cannot be reconnected, the apReconnectResults element that corresponds to apReconnectInfo MUST be set with an HRESULT return code.

A successful call to IWbemRefreshingServices::ReconnectRemoteRefresher MUST return WBEM_S_NO_ERROR and MUST fill the reconnection status in the apReconnectResults array.

In case of failure, the server MUST return an HRESULT value that indicates the status of the method call. If the failure is due to a class that no longer exists, the server MUST return a WBEM_E_INVALID_CLASS HRESULT value. If the failure is due to an instance that no longer exists, the server MUST return a WBEM_E_NOT_FOUND HRESULT value.

Each array element MUST contain a refresher CIM object identifier (the m_lId member of _WBEM_RECONNECT_RESULTS) that can be used to cancel the object. The m_lId member MUST be a unique identifier for the refresher object that is used to cancel the refreshing object when the refresher object is using IWbemRemoteRefresher::StopRefreshing.