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 )
ฟังก์ชันนี้จะเริ่มต้นการปิดการสมัครใช้บริการอย่างมีชั้นเชิงและล้างออบเจ็กต์ของเครื่องจัดการ
ยุติการสมัครใช้บริการผู้จัดพิมพ์อย่างค่อยเป็นค่อยไป
การโทรนี้เป็นการโทรแบบไม่พร้อมกันและจะแจ้งไคลเอ็นต์เกี่ยวกับการหยุดให้บริการที่กำลังจะเกิดขึ้นผ่านข้อความ SubscriptionCancel/StatusReport หากเกี่ยวข้อง
สิ่งที่ควรทราบคือการยกเลิกการมีส่วนร่วมของแอปพลิเคชันในการสมัครใช้บริการนี้ หลังจากการเรียกนี้ แอปพลิเคชันจะไม่ได้รับการแจ้งเตือนเกี่ยวกับกิจกรรมอื่นๆ ในออบเจ็กต์นี้ นอกจากนี้ แอปพลิเคชันจะไม่ได้รับอนุญาตให้โต้ตอบกับออบเจ็กต์นี้ด้วยวิธีการใดๆ ก็ตามหลังจากนั้น
ยุติการสมัครรับข้อมูลของผู้เผยแพร่เนื้อหาอย่างค่อยเป็นค่อยไป หากเปิดใช้งานการสนับสนุนการยกเลิกการสมัครสมาชิก ข้อความการสมัครCancelRequest จะถูกส่งไปยังไคลเอ็นต์ที่สมัครสมาชิก และระบบจะรอการตอบกลับก่อนที่จะยุติการสมัครสมาชิก ไม่เช่นนั้น การสมัครใช้บริการจะสิ้นสุดลงทันทีในลักษณะเดียวกับ AbortSubscription() หากมีการสมัครใช้บริการร่วมกัน การสมัครใช้บริการที่โต้แย้งจากผู้เผยแพร่กลับไปยังลูกค้าจะสิ้นสุดลงด้วย
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
ผลลัพธ์ |
|
ระหว่างรอการตอบกลับสำหรับการสมัครCancelRequest "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 )