nl:: Weave:: Profiles:: DataManagement_Current:: SubscriptionHandler
खास जानकारी
सार्वजनिक प्रकार |
|
---|---|
@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:: |
यूनियन |
|
---|---|
nl:: |
|
nl:: |
सार्वजनिक प्रकार
@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/Statusरिपोर्ट के ज़रिए, ग्राहक को इस कॉल के बंद होने की जानकारी दी जाएगी.
विशेष रूप से, यह इस सदस्यता में ऐप्लिकेशन के भागीदारी पर निर्भर करता है. इस कॉल के बाद, ऐप्लिकेशन को इस ऑब्जेक्ट पर किसी और गतिविधि की सूचना नहीं दी जाएगी. इसके अलावा, इसके बाद ऐप्लिकेशन को किसी भी तरीके से इस ऑब्जेक्ट के साथ इंटरैक्ट करने की अनुमति नहीं है.
पब्लिशर की सदस्यता को ग्रेसफ़ुल तरीके से खत्म कर देता है. अगर सदस्यता रद्द करने के लिए सहायता चालू है, तो सदस्यता वाले क्लाइंट को 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 )
IsCanceling
bool IsCanceling() const
IsEstablishedIdle
bool IsEstablishedIdle()
IsFree
bool IsFree()
IsTerminated
bool IsTerminated()
SetMaxNotificationSize
void SetMaxNotificationSize( const uint32_t aMaxPayload )