nl::Weave::الملفات الشخصية::DataManagement_Current::SubscriptionsHandler

الملخّص

الأنواع المتاحة للجميع

@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::الملفات الشخصية::DataManagement_Current::SubscriptionsHandler::TraitInstanceInfo

الاتحادات

nl::Weave::الملفات الشخصية::DataManagement_Current::SubscriptionsHandler::InEventParam
nl::Weave::الملفات الشخصية::DataManagement_Current::SubscriptionsHandler::OutEventParam

الأنواع المتاحة للجميع

@142

 @142

معاودة الاتصال بالحدث

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

رقم تعريف الحدث

 EventID

معرِّف المعالج

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
)

تبدأ هذه الوظيفة إيقافًا سلسًا للاشتراك وتنظيف كائن المعالج.

إنهاء اشتراك الناشر بشكلٍ أنيق.

هذه مكالمة غير متزامنة وسيتم إبلاغ العميل بإغلاق وشيك من خلال رسالة (إلغاء الاشتراك/تقرير الحالة) عندما يكون ذلك مناسبًا.

وبشكل بارز، يؤدي هذا إلى التنازل عن مشاركة التطبيق في هذا الاشتراك. بعد هذه المكالمة، لن يتم إشعار التطبيق بأي نشاط آخر عن هذا العنصر. بالإضافة إلى ذلك، لا يُسمح للتطبيق بالتفاعل مع هذا العنصر بعد ذلك من خلال أي من طرقه.

إنهاء اشتراك الناشر بشكلٍ سلس. إذا تم تفعيل دعم إلغاء الاشتراك، يتم إرسال رسالة Createإلغاء الاشتراك إلى عميل الاشتراك وينتظر النظام ردًا قبل إنهاء الاشتراك، وبخلاف ذلك سيتم إنهاء الاشتراك على الفور بطريقة مشابهة للاشتراك في AortSubscriptions(). وفي حال وجود اشتراك مشترك، يتم أيضًا إنهاء الاشتراك المضاد من الناشر مرة أخرى إلى العميل.

التفاصيل
المعلَمات
[in] aReasonProfileId
رقم تعريف الملف الشخصي لرمز الحالة الذي يشير إلى سبب الإنهاء
[in] aReasonStatusCode
رمز الحالة الذي يشير إلى سبب إنهاء الحساب
قيم الإرجاع
Returns
رمز خطأ Weave للأغراض المعلوماتية فقط. في حال حدوث أي خطأ، سيتم إنهاء العنصر بشكل متزامن (أي تم إلغاؤه).

أثناء انتظار الرد على طلب إلغاء الاشتراك، يدخل SubscriptionHandler في حالة Canceling.

بعد بدء عملية الإنهاء، يدخل الكائن SubscriptionHandler في حالة Terminated ويتم تسليم حدث OnSubscriptionTerminated إلى معالج أحداث التطبيق. لاحظ أنه إذا لم يتم تفعيل دعم الإلغاء، قد يتم استدعاء معالج الحدث بشكلٍ متزامن ضمن الاستدعاء إلى EndSubscriptions().

بعد إرجاع معالج أحداث التطبيق، إذا لم تكن هناك مراجع إضافية إلى العنصر SubscriptionHandler، يتم تحرير الكائن.

الحصول على تجميع البيانات

Binding * GetBinding(
  void
) const 

الحصول على الحد الأقصى لعدد الإشعارات

uint32_t GetMaxNotificationSize(
  void
) const 

GetPeerNodeId

uint64_t GetPeerNodeId(
  void
) const 

رقم تعريف الاشتراك

WEAVE_ERROR GetSubscriptionId(
  uint64_t *const apSubscriptionId
)

IsActive

bool IsActive(
  void
)

جارٍ الإلغاء

bool IsCanceling() const 

مُحدَّد

bool IsEstablishedIdle()

مجّاني

bool IsFree()

تم إنهاؤه

bool IsTerminated()

ضبط الحد الأقصى لحجم الإشعار

void SetMaxNotificationSize(
  const uint32_t aMaxPayload
)