nl::Weave::Profiles::DataManagement_Legacy::ClientNotifier::Subscription

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

客户端订阅。

摘要

客户端上的订阅仅会将一对

[, ]
映射到客户数据管理器对象。主题 ID 和发布商 ID 均可作为通配符提供。也可以使用已知的主题 ID 请求订阅,在这种情况下,系统会保留所请求的 ID 以供参考。

构造函数和析构函数

Subscription(void)
~Subscription(void)

公共属性

mClient
与此订阅相关的客户端。

受保护的属性

mAssignedId
mPublisherId
uint64_t
mRequestedId

公共函数

CheckSubscription(const TopicIdentifier & aTopicId, const uint64_t & aPublisherId)
bool
检查订阅的目标。
Free(void)
void
Init(const TopicIdentifier & aAssignedId, const TopicIdentifier & aRequestedId, const uint64_t & aPublisherId, DMClient *aClient)
IsFree(void)
bool
MatchSubscription(const TopicIdentifier & aTopicId, const uint64_t & aPublisherId) const
bool
检查订阅的内容。
MatchSubscription(const TopicIdentifier & aTopicId, const uint64_t & aPublisherId, DMClient *aClient) const
bool
检查订阅的内容。

公共属性

mClient

DMClient * mClient

与此订阅相关的客户端。

此成员变量是公开的,因为订阅类的用户需要能够获取该变量才能调用指示。

受保护的属性

mAssignedId

TopicIdentifier mAssignedId

mPublisherId

uint64_t mPublisherId

mRequestedId

TopicIdentifier mRequestedId

公共函数

CheckSubscription

bool CheckSubscription(
  const TopicIdentifier & aTopicId,
  const uint64_t & aPublisherId
)

检查订阅的目标。

此测试用于根据通知程序表检查传入的消息。除了检查任一相关参数的完全匹配之外,该检查还会检查表中是否包含匹配的“通配符”。

具体说明
参数
[in] aTopicId
对发布商分配的“有效”主题 ID(用于存储订阅)的引用。
[in] aPublisherId
对提供订阅的发布者的 64 位节点 ID 或服务端点的引用。
返回值
如果订阅匹配,则为 true,否则为 false。

免费

void Free(
  void
)

Init

WEAVE_ERROR Init(
  const TopicIdentifier & aAssignedId,
  const TopicIdentifier & aRequestedId,
  const uint64_t & aPublisherId,
  DMClient *aClient
)

IsFree

bool IsFree(
  void
)

MatchSubscription

bool MatchSubscription(
  const TopicIdentifier & aTopicId,
  const uint64_t & aPublisherId
) const 

检查订阅的内容。

该测试是为了确定通知程序表中是否包含特定订阅,并假定名为“来自上文”。因此,这些参数可以具有“通配符”值,但如果不包含,则需要完全匹配。此版本假定订阅的数据管理器组件是当前客户端。

具体说明
参数
[in] aTopicId
对发布商分配的“有效”主题 ID(用于存储订阅)的引用。
[in] aPublisherId
对提供订阅的发布者的 64 位节点 ID 或服务端点的引用。
返回值
如果订阅匹配,则为 true,否则为 false。

MatchSubscription

bool MatchSubscription(
  const TopicIdentifier & aTopicId,
  const uint64_t & aPublisherId,
  DMClient *aClient
) const 

检查订阅的内容。

该测试是为了确定通知程序表中是否包含特定订阅,并假定名为“来自上文”。因此,某些参数可能具有“通配符”值,但如果不包含,则需要完全匹配。

具体说明
参数
[in] aTopicId
对发布商分配的“有效”主题 ID(用于存储订阅)的引用。
[in] aPublisherId
对提供订阅的发布者的 64 位节点 ID 或服务端点的引用。
[in] aClient
指向订阅中存在的 DMClient 的指针。
返回值
如果订阅匹配,则为 true,否则为 false。

订阅

 Subscription(
  void
)

~订阅

virtual  ~Subscription(
  void
)