nl:: بافت:: پروفایل ها:: DataManagement_Current:: Subscription Handler
خلاصه
انواع عمومی | |
---|---|
@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:: بافت:: پروفایل ها:: DataManagement_Current:: SubscriptionHandler:: TraitInstanceInfo |
اتحادیه ها | |
---|---|
nl:: بافت:: پروفایل ها:: DataManagement_Current:: SubscriptionHandler:: InEventParam | |
nl:: بافت:: پروفایل ها:: DataManagement_Current:: SubscriptionHandler:: OutEventParam |
انواع عمومی
@142
@142
رویداد Callback
void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
شناسه رویداد
EventID
شناسه Handler
uint8_t HandlerId
توابع استاتیک عمومی
DefaultEventHandler
void DefaultEventHandler( EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
توابع عمومی
لغو اشتراک
void AbortSubscription( void )
این تابع یک اشتراک را فوراً خاتمه می دهد - این یک تماس همزمان است.
لغو اشتراک ناشر.
هیچ تلاشی برای اطلاع مشتری از خاتمه انجام نمیشود، و در صورت وجود، بستر مبادله زیربنایی فوراً لغو میشود. پس از این تماس، برنامه از هیچ فعالیت دیگری در این شی مطلع نخواهد شد. علاوه بر این، برنامه اجازه ندارد پس از آن از طریق هیچ یک از روش های خود با این شی تعامل داشته باشد.
پایان ناشر یک اشتراک را، بدون اطلاع مشتری اشتراک و بدون ارائه رویداد OnSubscriptionTerminated
به کنترل کننده رویداد برنامه، خاتمه می دهد. اگر اشتراک متقابل وجود داشته باشد، اشتراک پیشخوان از سوی ناشر به مشتری نیز خاتمه می یابد.
با فراخوانی ()AbortSubscription ، شیء SubscriptionHandler
وارد حالت Terminated
می شود. اگر پس از اتمام فرآیند خاتمه، هیچ ارجاع اضافی به شی وجود نداشته باشد، شی SubscriptionHandler
آزاد می شود.
Accept Subscribe Request
WEAVE_ERROR AcceptSubscribeRequest( const uint32_t aLivenessTimeoutSec )
پایان اشتراک
WEAVE_ERROR EndSubscription( const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode )
این عملکرد یک خاموش کردن دلپذیر اشتراک و پاکسازی شیء کنترل کننده را آغاز می کند.
اشتراک ناشر را با آرامش تمام کنید.
این یک تماس ناهمزمان است و در صورت لزوم از طریق پیام SubscribeCancel/StatusReport به مشتری از خاموش شدن قریب الوقوع اطلاع می دهد.
قابل ذکر است که این امر از دخالت برنامه در این اشتراک چشم پوشی می کند. پس از این تماس، برنامه از هیچ فعالیت دیگری در این شی مطلع نخواهد شد. علاوه بر این، برنامه اجازه ندارد پس از آن از طریق هیچ یک از روش های خود با این شی تعامل داشته باشد.
بهخوبی پایان ناشر یک اشتراک را خاتمه میدهد. اگر پشتیبانی لغو اشتراک فعال باشد، یک پیام SubscribeCancelRequest به مشتری اشتراک ارسال می شود و سیستم قبل از پایان اشتراک منتظر پاسخ است. در غیر این صورت اشتراک فوراً به روشی مشابه AbortSubscription() خاتمه می یابد. اگر اشتراک متقابل وجود داشته باشد، اشتراک پیشخوان از سوی ناشر به مشتری نیز خاتمه می یابد.
جزئیات | |||||
---|---|---|---|---|---|
مولفه های |
| ||||
ارزش های بازگشتی |
|
در حالی که منتظر پاسخ به 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 )
فعال است
bool IsActive( void )
در حال لغو است
bool IsCanceling() const
IsEstablishedIdle
bool IsEstablishedIdle()
رایگان است
bool IsFree()
خاتمه یافته است
bool IsTerminated()
SetMaxNotificationSize
void SetMaxNotificationSize( const uint32_t aMaxPayload )
جز در مواردی که غیر از این ذکر شده باشد، محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است و نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است. Thread علامت تجاری ثبتشده Thread Group, Inc است.
تاریخ آخرین بهروزرسانی 2020-08-28 بهوقت ساعت هماهنگ جهانی.