nl:: Weave:: Profiles:: DataManagement_Current:: TraitUpdatableDataSink
สรุป
การสืบทอด
รับค่าจาก:nl::Weave::Profiles::DataManagement_Current::TraitDataSink
nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::IGetDataDelegate
ผู้ผลิตและผู้ทำลาย |
|
---|---|
TraitUpdatableDataSink(const TraitSchemaEngine *aEngine)
|
ฟังก์ชันสาธารณะ |
|
---|---|
ClearUpdated(SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle)
|
|
GetData(PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent) __OVERRIDE
|
virtual WEAVE_ERROR
รับข้อมูลจากแหล่งที่มาลักษณะที่จะสร้างการแจ้งเตือนโดยพิจารณาจากแฮนเดิลเส้นทางไปยังโหนด ผู้เขียน TLV และบูลีนที่ระบุว่าค่านั้นเป็น Null หรือไม่
|
GetSubscriptionClient() __OVERRIDE
|
virtual SubscriptionClient *
|
GetUpdateEncoder() __OVERRIDE
|
virtual UpdateEncoder *
|
IsUpdatableDataSink(void) __OVERRIDE
|
virtual bool
|
Lock(SubscriptionClient *apSubClient)
|
void
|
ReadData(TraitDataHandle aTraitDataHandle, PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter, PropertyPathHandle & aPropertyPathHandleOfDictItemToStartFrom)
|
|
SetSubscriptionClient(SubscriptionClient *apSubClient) __OVERRIDE
|
virtual WEAVE_ERROR
|
SetUpdateEncoder(UpdateEncoder *apEncoder) __OVERRIDE
|
virtual WEAVE_ERROR
|
SetUpdated(SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle, bool aIsConditional)
|
ประกาศว่า PropertyPathHandle ที่กำหนดมีการแก้ไขเฉพาะที่
|
Unlock(SubscriptionClient *apSubClient)
|
void
|
ฟังก์ชันสาธารณะ
ClearUpdated
WEAVE_ERROR ClearUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle )
GetData
virtual WEAVE_ERROR GetData( PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent ) __OVERRIDE
รับข้อมูลจากแหล่งที่มาลักษณะที่จะสร้างการแจ้งเตือนโดยพิจารณาจากแฮนเดิลเส้นทางไปยังโหนด ผู้เขียน TLV และบูลีนที่ระบุว่าค่านั้นเป็น Null หรือไม่
หากแฮนเดิลเส้นทางไม่ใช่โหนด Leaf TDM จะจัดการการเขียนค่าไปยังผู้เขียน (เช่น การเปิดคอนเทนเนอร์ การทำให้โครงสร้างเป็นโมฆะ เป็นต้น) หากโหนดที่ไม่ใช่ Leaf เป็นค่าว่างหรือไม่มี TDM จะไม่เรียกใช้ GetData สำหรับย่อย
ระบบจะเรียกใช้ฟังก์ชันนี้สำหรับแฮนเดิลที่ไม่มีข้อมูล ไม่บังคับ ชั่วคราว หรือ Leaf เราคาดว่าลักษณะใดก็ตามที่มีแฮนเดิลซึ่งเปิดใช้ตัวเลือกเหล่านั้นจะใช้ตรรกะที่เหมาะสมเพื่อป้อนข้อมูล aIsNull และ aIsOffer
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||
ผลลัพธ์ |
|
GetSubscriptionClient
virtual SubscriptionClient * GetSubscriptionClient() __OVERRIDE
GetUpdateEncoder
virtual UpdateEncoder * GetUpdateEncoder() __OVERRIDE
IsUpdatableDataSink
virtual bool IsUpdatableDataSink( void ) __OVERRIDE
ล็อก
void Lock( SubscriptionClient *apSubClient )
ReadData
WEAVE_ERROR ReadData( TraitDataHandle aTraitDataHandle, PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter, PropertyPathHandle & aPropertyPathHandleOfDictItemToStartFrom )
SetSubscriptionClient
virtual WEAVE_ERROR SetSubscriptionClient( SubscriptionClient *apSubClient ) __OVERRIDE
SetUpdateEncoder
virtual WEAVE_ERROR SetUpdateEncoder( UpdateEncoder *apEncoder ) __OVERRIDE
SetUpdated
WEAVE_ERROR SetUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle, bool aIsConditional )
ประกาศว่า PropertyPathHandle ที่กำหนดมีการแก้ไขเฉพาะที่
NotificationEngine จะไม่ลบล้างแฮนเดิลและแท็กสืบทอดของแฮนเดิลนั้น จนกว่าจะมีการประมวลผลคำขออัปเดต แอปพลิเคชันจะได้รับการเรียกกลับ kEvent_OnUpdateComplete สำหรับแฮนเดิลนี้ หรือสำหรับหนึ่งในระดับบนของแฮนเดิลซึ่งเป็นผลมาจากการดำเนินการอัปเดต การแก้ไขอาจมีเงื่อนไขหรือไม่ก็ได้ การอัปเดตข้อมูลแบบมีเงื่อนไขจะหายไปหากสำเนาในตัวของอินสแตนซ์ลักษณะไม่ซิงค์กับของผู้เผยแพร่โฆษณาอีกต่อไป เนื่องจากมีการเปลี่ยนแปลงโดยผู้เผยแพร่โฆษณาเองหรือโดยไคลเอ็นต์อื่น ระบบไม่รองรับการเปลี่ยนแปลงแบบมีเงื่อนไขและแบบมีเงื่อนไขพร้อมกันในอินสแตนซ์ลักษณะเดียวกัน
รายละเอียด | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||
ผลลัพธ์ |
|