nl:: बुना:: प्रोफ़ाइल:: DataManagement_current:: SubscriptionHandler
खास जानकारी
सार्वजनिक प्रकार |
|
---|---|
@142
|
enum |
EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
टाइपडेफ़void(*
|
EventID
|
enum |
HandlerId
|
टाइपडेफ़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
|
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
इवेंट कॉलबैक
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
ऑब्जेक्ट खाली हो जाता है.
SubscribeRequest को स्वीकार करें
WEAVE_ERROR AcceptSubscribeRequest( const uint32_t aLivenessTimeoutSec )
एंड सदस्यता
WEAVE_ERROR EndSubscription( const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode )
यह फ़ंक्शन सदस्यता को शानदार ढंग से बंद करने और हैंडलर ऑब्जेक्ट को साफ़ करने की प्रक्रिया शुरू करता है.
प्रकाशक की सदस्यता को अच्छी तरह खत्म करना.
यह एक एसिंक्रोनस कॉल है. साथ ही, यह Subscribe with स्थिति/मैसेज की मदद से, क्लाइंट को आने वाले समय में इंटरनेट के इस्तेमाल पर रोक लगाने की सूचना देगा.
खास बात यह है कि इससे ऐप्लिकेशन की सदस्यता में शामिल होने के अनुरोध पर छूट मिलती है. इस कॉल के बाद, ऐप्लिकेशन को इस ऑब्जेक्ट पर आगे की कोई गतिविधि होने की सूचना नहीं दी जाएगी. इसके अलावा, ऐप्लिकेशन को उसके बाद किसी भी तरीके से इस ऑब्जेक्ट से इंटरैक्ट करने की अनुमति नहीं है.
आपकी सदस्यता खत्म करने के लिए, प्रकाशक अच्छी तरह बंद कर देता है. अगर सदस्यता रद्द करने के लिए सहायता चालू है, तो सदस्यता क्लाइंट को SubscribecancelRequest मैसेज भेजा जाता है और सिस्टम सदस्यता खत्म करने से पहले, जवाब का इंतज़ार करता है. अगर ऐसा नहीं होता है, तो सदस्यता तुरंत AbortSubscription() की तरह ही खत्म कर दी जाती है. अगर कोई आपसी सदस्यता मौजूद है, तो प्रकाशक से वापस क्लाइंट को भी कानूनी विरोध खत्म कर दिया जाएगा.
ब्यौरा | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
सामान लौटाने की वैल्यू |
|
SubscribecancelRequest के जवाब का इंतज़ार करते समय, SubscriptionHandler
, Canceling
स्थिति में चला जाता है.
खत्म करने की प्रोसेस शुरू होने के बाद, SubscriptionHandler
ऑब्जेक्ट Terminated
स्थिति में जाता है और ऐप्लिकेशन और #39; के इवेंट हैंडलर में एक OnSubscriptionTerminated
इवेंट डिलीवर होता है. ध्यान दें कि अगर रद्द करने की सुविधा चालू नहीं की गई है, तो कॉल में इवेंट हैंडलर को EndSubscription() के मुताबिक सिंक करने की सुविधा दी जा सकती है.
ऐप्लिकेशन' के इवेंट हैंडलर के वापस आने के बाद, अगर SubscriptionHandler
ऑब्जेक्ट का कोई और रेफ़रंस नहीं है, तो ऑब्जेक्ट खाली हो जाता है.
गेटबाइंडिंग
Binding * GetBinding( void ) const
GetMaxNotificationsSize
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
isInstalledIdle
bool IsEstablishedIdle()
मुफ़्त है
bool IsFree()
खत्म कर दिया गया है
bool IsTerminated()
सेट ज़्यादा से ज़्यादा सूचना का साइज़
void SetMaxNotificationSize( const uint32_t aMaxPayload )