nl::Weave::Profiles::DataManagement_Current::PurchaseHandler

總結

公開類型

@142 列舉
EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam) typedef
void(*
EventID 列舉
HandlerId typedef
uint8_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
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::Weave::Profiles::DataManagement_Current::PurchaseHandler::TraitInstanceInfo

聯集

nl::Weave::Profiles::DataManagement_Current::PurchaseHandler::InEventParam
nl::Weave::Profiles::DataManagement_Current::PurchaseHandler::OutEventParam

公開類型

@142

 @142

事件回呼

void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)

活動 ID

 EventID

處理常式 ID

uint8_t HandlerId

公開的靜態函式

預設事件處理常式

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
)

這個函式會啟動安全關閉的訂閱,並清除處理常式物件。

快速結束發布者訂閱項目。

此為非同步呼叫,系統會透過訊息來通知用戶端即將暫停的訂閱。

值得一提的是,此申請放棄了這項訂閱的參與。結束這次呼叫之後,應用程式就不會再收到有關這個物件的其他活動通知。此外,應用程式不允許其透過任何方法與此物件互動。

安全終止訂閱。如果啟用了訂閱取消支援,系統會向訂閱用戶端傳送 訂閱項目 CancelRequest 訊息,且系統會在終止訂閱前等待回覆,否則訂閱就會立即以類似 Abortsubscription() 的方式終止。如果同時有共同訂閱,發布商之間的傳回計數器也會終止。

詳細資料
參數
[in] aReasonProfileId
StatusCode 的 ProfileId,指出終止的理由
[in] aReasonStatusCode
表示終止原因的 StatusCode
傳回值
Returns
用來提供資訊的 Weveve 錯誤代碼。任何錯誤都會以同步的方式終止 (也就是取消物件)。

在等待對 BookingCancelRequest 的回應時,SubscriptionHandler 會進入 Canceling 狀態。

一旦終止程序開始,SubscriptionHandler 物件就會進入 Terminated 狀態,並傳送 OnSubscriptionTerminated 事件到應用程式的事件處理常式。請注意,如果「並未」啟用取消支援功能,則可以在呼叫 Endsubscription() 時同步呼叫事件處理常式。

在應用程式的事件處理常式傳回之後,如果沒有對 SubscriptionHandler 物件的其他參照,則將物件釋出。

取得繫結

Binding * GetBinding(
  void
) const 

取得最大通知大小

uint32_t GetMaxNotificationSize(
  void
) const 

取得對等節點 ID

uint64_t GetPeerNodeId(
  void
) const 

取得訂閱 ID

WEAVE_ERROR GetSubscriptionId(
  uint64_t *const apSubscriptionId
)

IsActive

bool IsActive(
  void
)

取消中

bool IsCanceling() const 

建立 ID

bool IsEstablishedIdle()

免費

bool IsFree()

已終止

bool IsTerminated()

SetSetNotificationSize

void SetMaxNotificationSize(
  const uint32_t aMaxPayload
)