nl:: بافت:: پروفایل ها:: DataManagement_Current:: Subscription Handler
خلاصه
انواع عمومی | |
---|---|
@142 | enum |
EventCallback )(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam) | typedefvoid(* |
EventID | enum |
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 )
IsActive
bool IsActive( void )
در حال لغو است
bool IsCanceling() const
IsEstablishedIdle
bool IsEstablishedIdle()
رایگان است
bool IsFree()
خاتمه یافته است
bool IsTerminated()
SetMaxNotificationSize
void SetMaxNotificationSize( const uint32_t aMaxPayload )
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. The OPENTHREAD and related marks are trademarks of the Thread Group and are used under license.
تاریخ آخرین بهروزرسانی 2024-10-27 بهوقت ساعت هماهنگ جهانی.