Google is committed to advancing racial equity for Black communities. See how.

nl::Weave::Profiles::DataManagement_Legacy::ClientDataManager

This is an abstract class.

#include <src/lib/profiles/data-management/Legacy/ClientDataManager.h>

An abstract class containing confirm and indication method definitions required by the WDM client.

Summary

Class ClientDataManager is an abstract class that spells out the methods an application implementer must provide in order to handle the data and status delivered by the publisher in WDM protocol exchanges. These methods are, for the most part, confirmations invoked as a result of the receipt of a response to a client request and indications of the receipt of a request from a remote peer. ClientDataManager is one of the two primary components of the DMClient abstract base class.

Inheritance

Direct Known Subclasses: nl::Weave::Profiles::DataManagement_Legacy::DMClient

Public functions

UpdateConfirm(const uint64_t & aResponderId, StatusReport & aStatus, uint16_t aTxnId)=0
virtual WEAVE_ERROR
Confirm the status of an update request.
ViewConfirm(const uint64_t & aResponderId, StatusReport & aStatus, uint16_t aTxnId)=0
virtual WEAVE_ERROR
Confirm a failed view request.
ViewConfirm(const uint64_t & aResponderId, ReferencedTLVData & aDataList, uint16_t aTxnId)=0
virtual WEAVE_ERROR
Confirm a successful view request.

Public functions

UpdateConfirm

virtual WEAVE_ERROR UpdateConfirm(
  const uint64_t & aResponderId,
  StatusReport & aStatus,
  uint16_t aTxnId
)=0

Confirm the status of an update request.

In the case of update requests, there is no distinguished "success" response. In either case, the responder sends a status report and this is how it is delivered to the next higher layer.

Details
Parameters
[in] aResponderId
A reference to the 64-bit node ID of the responding publisher.
[in] aStatus
A reference to a StatusReport object detailing the status of the request.
[in] aTxnId
The client-assigned transaction ID that refers to this particular exchange.
Returns
WEAVE_NO_ERROR to communicate success. Otherwise the value is at the discretion of the implementer.

ViewConfirm

virtual WEAVE_ERROR ViewConfirm(
  const uint64_t & aResponderId,
  StatusReport & aStatus,
  uint16_t aTxnId
)=0

Confirm a failed view request.

Confirm that a view request failed in some way and a status report has been submitted describing the failure.

Details
Parameters
[in] aResponderId
A reference to the 64-bit node ID of the responding publisher.
[in] aStatus
A reference to a StatusReport object detailing what went wrong.
[in] aTxnId
The client-assigned transaction ID that refers to this particular exchange.
Returns
WEAVE_NO_ERROR to communicate success. Otherwise the value is at the discretion of the implementer.

ViewConfirm

virtual WEAVE_ERROR ViewConfirm(
  const uint64_t & aResponderId,
  ReferencedTLVData & aDataList,
  uint16_t aTxnId
)=0

Confirm a successful view request.

Confirm that a view request was received, a response was returned and that the operation was successful, delivering a data list.

Details
Parameters
[in] aResponderId
A reference to the 64-bit node ID of the responding publisher.
[in] aDataList
A reference to a ReferencedTLVData object containing a TLV-encoded data list with the requested data.
[in] aTxnId
The client-assigned transaction ID that refers to this particular exchange.
Returns
WEAVE_NO_ERROR to communicate success. Otherwise the value is at the discretion of the implementer.