nl:: Weave:: Profiles:: DataManagement_Legacy:: ClientNotifier
#include <src/lib/profiles/data-management/Legacy/ClientNotifier.h>
在 WDM 客户端需要订阅和通知支持时采用的辅助类。
摘要
ClientNotifier 是一个类,可根据发布商在订阅时提供的主题 ID 或基于众所周知的主题 ID 将传入的通知分派给感兴趣的客户端。ClientNotifier 也会向发布商返回状态。
订阅和通知在 WDM 中是可选的,但如果支持,则在初始化时必须向客户端提供通知程序。
构造函数和析构函数 |
|
---|---|
ClientNotifier(void)
|
|
~ClientNotifier(void)
|
受保护的属性 |
|
---|---|
mExchangeMgr
|
|
mNotifierTable[kNotifierTableSize]
|
|
mSubscriptionCount
|
uint16_t
|
公共函数 |
|
---|---|
Clear(void)
|
void
|
DispatchNotifyIndication(ExchangeContext *aResponseCtx, PacketBuffer *payload)
|
|
FailSubscription(const TopicIdentifier & aTopicId, const uint64_t & aPublisherId, DMClient *aClient, StatusReport & aReport)
|
void
|
HasSubscription(const TopicIdentifier & aTopicId, const uint64_t & aPublisherId, DMClient *aClient) const
|
bool
|
InstallSubscription(const TopicIdentifier & aTopicId, const TopicIdentifier & aRequestedId, const uint64_t & aPublisherId, DMClient *aClient)
|
|
RemoveSubscription(const TopicIdentifier & aTopicId, const uint64_t & aPublisherId, DMClient *aClient)
|
void
|
SubscriptionIsEnabled(void)
|
bool
|
类 |
|
---|---|
nl:: |
客户端订阅。 |
受保护的属性
mExchangeMgr
WeaveExchangeManager * mExchangeMgr
mNotifierTable
Subscription mNotifierTable[kNotifierTableSize]
mSubscriptionCount
uint16_t mSubscriptionCount
公共函数
清除
void Clear( void )
ClientNotifier
ClientNotifier( void )
DispatchNotifyIndication
WEAVE_ERROR DispatchNotifyIndication( ExchangeContext *aResponseCtx, PacketBuffer *payload )
FailSubscription
void FailSubscription( const TopicIdentifier & aTopicId, const uint64_t & aPublisherId, DMClient *aClient, StatusReport & aReport )
HasSubscription
bool HasSubscription( const TopicIdentifier & aTopicId, const uint64_t & aPublisherId, DMClient *aClient ) const
InstallSubscription
WEAVE_ERROR InstallSubscription( const TopicIdentifier & aTopicId, const TopicIdentifier & aRequestedId, const uint64_t & aPublisherId, DMClient *aClient )
RemoveSubscription
void RemoveSubscription( const TopicIdentifier & aTopicId, const uint64_t & aPublisherId, DMClient *aClient )
SubscriptionIsEnabled
bool SubscriptionIsEnabled( void )
~ClientNotifier
virtual ~ClientNotifier( void )