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 )