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 או לא קיים.
אם נקודת האחיזה לנתיב אינה צומת עלה, TDM יטפל בערכי הכתיבה עבור הכותב (כגון פתיחת קונטיינרים, ביטול המבנה וכו'). אם צומת ללא עלים הוא null או לא קיים, TDM לא יקרא ל-GetData עבור הצאצאים שלו.
הפונקציה הזו תופעל רק עבור כינויי null, אופציונליים, ארעיים או עלים. הציפייה היא שלכל תכונה עם כינויים שמופעלות בהן האפשרויות האלה תטמיע לוגיקה מתאימה לאכלוס aIsNull ו-aIspresent.
פרטים | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||||
ערכים מוחזרים |
|
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 לא יבטל את הכינוי ואת הצאצאים שלו עד שבקשת העדכון תעובד. האפליקציה תקבל קריאות חוזרות (callback) של kEvent_OnUpdateComplete עבור הכינוי הזה או עבור אחד מישויות האב שלה כתוצאה מפעולת העדכון. השינוי יכול להיות מותנה או לא. עדכונים של נתונים מותנים יאבדו אם העותק המקומי של המופע של התכונה לא מסונכרן יותר עם העותק של בעל התוכן הדיגיטלי, כי בעל התוכן הדיגיטלי עצמו או לקוח אחר שינהו אותו. אין תמיכה במוטציות מותנות ולא מותנות בו-זמנית באותו מופע מאפיין.
פרטים | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||||||
ערכים מוחזרים |
|