nl:: Weave:: Profiles:: DataManagement_Current:: SubscriptionHandler
摘要
公共类型 |
|
---|---|
@142
|
枚举 |
EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
typedefvoid(*
|
EventID
|
枚举 |
HandlerId
|
typedefuint8_t
|
公共静态函数 |
|
---|---|
DefaultEventHandler(EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
|
void
|
公共函数 |
|
---|---|
AbortSubscription(void)
|
void
此函数立即终止订阅 - 这是同步调用。
|
AcceptSubscribeRequest(const uint32_t aLivenessTimeoutSec)
|
|
EndSubscription(const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode)
|
此函数会启动订阅的关闭并清理处理程序对象。
|
GetBinding(void) const
|
Binding *
|
GetMaxNotificationSize(void) const
|
uint32_t
|
GetPeerNodeId(void) const
|
uint64_t
|
GetSubscriptionId(uint64_t *const apSubscriptionId)
|
|
IsActive(void)
|
bool
|
IsCanceling() const
|
bool
|
IsEstablishedIdle()
|
bool
|
IsFree()
|
bool
|
IsTerminated()
|
bool
|
SetMaxNotificationSize(const uint32_t aMaxPayload)
|
void
|
结构体 |
|
---|---|
nl:: |
联合 |
|
---|---|
nl:: |
|
nl:: |
公共类型
@142
@142
EventCallback
void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
EventID
EventID
处理程序 ID
uint8_t HandlerId
公共静态函数
DefaultEventHandler 类中的方法
void DefaultEventHandler( EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
公共函数
中止订阅
void AbortSubscription( void )
此函数立即终止订阅 - 这是同步调用。
取消发布商订阅。
不会尝试通知客户端终止情况,如果底层广告交易平台上下文存在,则会立即中止。在此调用之后,应用不会收到有关此对象的其他任何活动的通知。此外,应用不得通过它的任何方法与此对象进行交互。
终止订阅的发布商,同时不通知订阅客户端和将 OnSubscriptionTerminated
事件发送到应用的事件处理程序。如果双方订阅都存在,则从发布商到客户端的计数器订阅也会终止。
调用 AbortSubscription() 后,SubscriptionHandler
对象会进入 Terminated
状态。在终止进程完成时,如果该对象没有其他引用,系统会释放 SubscriptionHandler
对象。
接受订阅请求
WEAVE_ERROR AcceptSubscribeRequest( const uint32_t aLivenessTimeoutSec )
结束订阅
WEAVE_ERROR EndSubscription( const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode )
此函数会启动订阅的关闭并清理处理程序对象。
正常终止发布商订阅。
这是一个异步调用,将在相关情况下通过 SubscriptionCancel/StatusReport 消息通知客户端即将关闭。
值得注意的是,这放弃了应用对此订阅的参与。在此调用之后,应用不会收到有关此对象的其他任何活动的通知。此外,应用不得通过它的任何方法与此对象进行交互。
正常终止发布商订阅。如果启用了订阅取消支持,系统会向订阅客户端发送 SubscriptionCancelRequest 消息,系统会在终止订阅之前等待回复;否则,系统会以与 AbortSubscription() 类似的方式立即终止订阅。如果已有共同订阅,那么从发布商返回到客户端的计数器订阅也会终止。
详细信息 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
在等待对 CancelCancelRequest 的响应时,SubscriptionHandler
会进入 Canceling
状态。
终止进程开始后,SubscriptionHandler
对象将进入 Terminated
状态,并且 OnSubscriptionTerminated
事件会传递到应用的事件处理程序。请注意,如果未启用取消支持,则在 EndSubscription() 调用中同步调用事件处理程序。
应用事件处理脚本返回后,如果对 SubscriptionHandler
对象没有其他引用,该对象就会被释放。
GetBinding
Binding * GetBinding( void ) const
GetMaxNotificationSize
uint32_t GetMaxNotificationSize( void ) const
GetPeerNodeId
uint64_t GetPeerNodeId( void ) const
GetSubscriptionId
WEAVE_ERROR GetSubscriptionId( uint64_t *const apSubscriptionId )
IsActive
bool IsActive( void )
正在取消
bool IsCanceling() const
已建立空闲策略
bool IsEstablishedIdle()
免费
bool IsFree()
已终止
bool IsTerminated()
SetMaxNotificationSize
void SetMaxNotificationSize( const uint32_t aMaxPayload )