nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler

خلاصه

انواع عمومی

@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::SubscriptionHandler::TraitInstanceInfo

اتحادیه‌ها

nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler::InEventParam
nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler::OutEventParam

انواع عمومی

@142

 @142

EventCallback

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

EventID

 EventID

HandlerId

uint8_t HandlerId

توابع عمومی ایستا

DefaultEventHandler

void DefaultEventHandler(
  EventID aEvent,
  const InEventParam & aInParam,
  OutEventParam & aOutParam
)

عملکردهای عمومی

AbortSubscription

void AbortSubscription(
  void
)

این تابع اشتراک را فوراً فسخ می‌کند - این یک فراخوانی همگام است.

لغو اشتراک ناشر.

هیچ تلاشی برای مطلع کردن کلاینت از فسخ انجام نمی‌شود و بافت تبادل اساسی درصورت وجود بلافاصله لغو می‌شود. پس‌از این فراخوانی، برنامه از هیچ فعالیت دیگری در این شیء مطلع نخواهد شد. علاوه‌براین، برنامه مجاز نیست پس‌از آن ازطریق هیچ‌یک از روش‌هایش با این شیء تعامل داشته باشد.

بدون اطلاع دادن به مشتری اشتراک و بدون ارسال رویداد OnSubscriptionTerminated به کنترل‌کننده رویداد برنامه، اشتراک را ازطرف ناشر فسخ می‌کند. اگر اشتراک متقابل وجود داشته باشد، اشتراک متقابل از ناشر به مشتری نیز فسخ می‌شود.

پس‌از فراخوانی AbortSubscription()، شیء SubscriptionHandler وارد وضعیت Terminated می‌شود. اگر پس‌از تکمیل فرایند فسخ، ارجاع دیگری به شیء وجود نداشته باشد، شیء SubscriptionHandler آزاد می‌شود.

AcceptSubscribeRequest

WEAVE_ERROR AcceptSubscribeRequest(
  const uint32_t aLivenessTimeoutSec
)

EndSubscription

WEAVE_ERROR EndSubscription(
  const uint32_t aReasonProfileId,
  const uint16_t aReasonStatusCode
)

این تابع خاموش کردن ایمن اشتراک و پاک‌سازی شیء گرداننده را آغاز می‌کند.

اشتراک ناشر را به‌طور مناسب پایان دهید.

این یک تماس ناهمگام است و درصورت لزوم، ازطریق پیام SubscribeCancel/StatusReport، خاموش شدن قریب‌الوقوع را به کارخواه اطلاع می‌دهد.

به‌ویژه، این کار مشارکت برنامه را در این اشتراک واگذار می‌کند. پس‌از این فراخوانی، برنامه از هیچ فعالیت دیگری در این شیء مطلع نخواهد شد. علاوه‌براین، برنامه مجاز نیست پس‌از آن ازطریق هیچ‌یک از روش‌هایش با این شیء تعامل داشته باشد.

بخش ناشر اشتراک را به‌طور مناسبی خاتمه می‌دهد. اگر پشتیبانی لغو اشتراک فعال باشد، پیام SubscribeCancelRequest به مشتری اشتراک ارسال می‌شود و سیستم قبل‌از پایان دادن به اشتراک منتظر پاسخ می‌ماند؛ درغیراین‌صورت، اشتراک بلافاصله به روشی مشابه AbortSubscription() پایان می‌یابد. اگر اشتراک متقابل وجود داشته باشد، اشتراک متقابل از ناشر به مشتری نیز پایان می‌یابد.

جزئیات
پارامترها
[in] aReasonProfileId
ProfileId مربوط به StatusCode که دلیل بسته شدن را نشان می‌دهد
[in] aReasonStatusCode
StatusCode که دلیل فسخ را نشان می‌دهد
مقادیر برگشتی
Returns
کد خطای Weave فقط برای اهداف اطلاع‌رسانی. درصورت بروز هرگونه خطا، شیء به‌طور هم‌زمان خاتمه می‌یابد (یعنی لغو می‌شود).

هنگام انتظار برای پاسخ به SubscribeCancelRequest، 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
)

IsCanceling

bool IsCanceling() const 

IsEstablishedIdle

bool IsEstablishedIdle()

IsFree

bool IsFree()

IsTerminated

bool IsTerminated()

SetMaxNotificationSize

void SetMaxNotificationSize(
  const uint32_t aMaxPayload
)