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 )
响应查看请求。
处理完成后,使用指示中给出的交换上下文将响应发送到观看请求。
详细信息 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|
~DMPublisher
virtual ~DMPublisher( void )
DMPublisher 对象的析构函数。
清除所有内部状态,并从 Exchange 管理器中移除监听器(如果有的话)。