nl:: Weave:: Profiles:: DataManagement_Legacy:: DMPublisher
#include <src/lib/profiles/data-management/Legacy/DMPublisher.h>
特定于应用的 WDM 发布商的抽象基类。
摘要
DMPublisher 是标准的 WDM 发布商基类。它是 DM ProtocolEngine 类(负责处理复杂的通信问题)和完全抽象的 PublisherDataManager 类的结合。对订阅和通知的支持是可选的,只需配置不含条目的订阅表即可禁止支持。
继承
继承自:nl::Weave::Profiles::DataManagement_Legacy::ProtocolEngine
nl::Weave::Profiles::DataManagement_Legacy::PublisherDataManager
构造函数和析构函数 |
|
---|---|
DMPublisher(void)
DMPublisher 对象的默认构造函数。
|
|
~DMPublisher(void)
DMPublisher 对象的析构函数。
|
公共函数 |
|
---|---|
CancelTransactionRequest(uint16_t aTxnId, WEAVE_ERROR aError)
|
|
Clear(void)
|
virtual void
清除 DMPublisher 对象的内部状态。
|
Finalize(void)
|
virtual void
关闭正在运行的 DMPublisher。
|
IncompleteIndication(Binding *aBinding, StatusReport & aReport)
|
virtual void
处理绑定失败的指示。
|
Init(WeaveExchangeManager *aExchangeMgr, uint32_t aResponseTimeout)
|
virtual WEAVE_ERROR
初始化 DMPublisher 对象。
|
Init(WeaveExchangeManager *aExchangeMgr)
|
virtual WEAVE_ERROR
|
OnMsgReceived(ExchangeContext *aResponseCtx, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg)
|
void
|
UpdateResponse(ExchangeContext *aResponseCtx, StatusReport & aStatus)
|
响应更新请求。
|
ViewResponse(ExchangeContext *aResponseCtx, StatusReport & aStatus, ReferencedTLVData *aDataList)
|
响应查看请求。
|
公共函数
CancelTransactionRequest
WEAVE_ERROR CancelTransactionRequest( uint16_t aTxnId, WEAVE_ERROR aError )
IncompleteIndication
virtual void IncompleteIndication( Binding *aBinding, StatusReport & aReport )
处理绑定失败的指示。
当绑定变得不完整(例如由于 TCP 绑定而关闭连接时),协议引擎必须使依赖于该绑定的所有事务(包括调用其状态处理程序)失败。此外,不完整的指示会传递到实现该方法采用对等 ID 的替代形式的任何父类对象。
具体说明 | |||||
---|---|---|---|---|---|
参数 |
|
Init
virtual WEAVE_ERROR Init( WeaveExchangeManager *aExchangeMgr, uint32_t aResponseTimeout )
初始化 DMPublisher 对象。
此方法的副作用是:在 Exchange 管理器中针对全部客户端请求安装一个监听器,其中可能包括订阅请求。
具体说明 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
WEAVE_NO_ERROR。成功时。否则,返回 WEAVE_ERROR,表示未能正确设置发布商。
|
Init
virtual WEAVE_ERROR Init( WeaveExchangeManager *aExchangeMgr )
OnMsgReceived
void OnMsgReceived( ExchangeContext *aResponseCtx, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg )
UpdateResponse
WEAVE_ERROR UpdateResponse( ExchangeContext *aResponseCtx, StatusReport & aStatus )
响应更新请求。
处理后,使用指示中提供的交换上下文发送对更新请求的响应。
具体说明 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
WEAVE_NO_ERROR。成功时。否则,返回 WEAVE_ERROR,表示无法发送响应消息。
|
ViewResponse
WEAVE_ERROR ViewResponse( ExchangeContext *aResponseCtx, StatusReport & aStatus, ReferencedTLVData *aDataList )
响应查看请求。
处理后,使用指示中提供的交换上下文发送对观看请求的响应。
具体说明 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|