nl:: Weben:: Profile:: DataManagement_Current:: TraitUpdatableDataSink
Zusammenfassung
Erbe
Erbt von:nl::Weave::Profiles::DataManagement_Current::TraitDataSink
nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::IGetDataDelegate
Konstruktoren und Destruktoren | |
---|---|
TraitUpdatableDataSink (const TraitSchemaEngine *aEngine) |
Öffentliche Funktionen | |
---|---|
ClearUpdated ( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle) | |
GetData ( PropertyPathHandle aHandle, uint64_t aTagToWrite,nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent) __OVERRIDE | virtual WEAVE_ERROR Bei einem Pfad Handelte zu einem Knoten, ein TLV Schriftsteller und booleans der angibt , ob der Wert null ist oder nicht vorhanden ist , erhält die Daten aus dem Merkmale Quelle , die eine benachrichtigen bauen. |
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) | Deklariert, dass das angegebene PropertyPathHandle lokale Änderungen aufweist. |
Unlock ( SubscriptionClient *apSubClient) | void |
Öffentliche Funktionen
LöschenAktualisiert
WEAVE_ERROR ClearUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle )
Daten bekommen
virtual WEAVE_ERROR GetData( PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent ) __OVERRIDE
Bei einem Pfad Handelte zu einem Knoten, ein TLV Schriftsteller und booleans der angibt , ob der Wert null ist oder nicht vorhanden ist , erhält die Daten aus dem Merkmale Quelle , die eine benachrichtigen bauen.
Wenn das Pfadhandle kein Blattknoten ist, verarbeitet TDM das Schreiben von Werten in den Writer (wie das Öffnen von Containern, das Aufheben der Struktur usw.). Wenn ein Nicht-Blatt-Knoten null oder nicht vorhanden ist, ruft TDM GetData nicht für seine untergeordneten Elemente auf.
Diese Funktion wird nur für Handles aufgerufen, die nullable, optional, ephemeral oder leafs sind. Es wird erwartet, dass alle Merkmale mit Handles, bei denen diese Optionen aktiviert sind, eine geeignete Logik zum Auffüllen von aIsNull und aIsPresent implementieren.
Einzelheiten | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
| ||||||||||
Rückgabewerte |
|
GetSubscriptionClient
virtual SubscriptionClient * GetSubscriptionClient() __OVERRIDE
GetUpdateEncoder
virtual UpdateEncoder * GetUpdateEncoder() __OVERRIDE
IsUpdatableDataSink
virtual bool IsUpdatableDataSink( void ) __OVERRIDE
Sperren
void Lock( SubscriptionClient *apSubClient )
Daten lesen
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
SetAktualisiert
WEAVE_ERROR SetUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle, bool aIsConditional )
Deklariert, dass das angegebene PropertyPathHandle lokale Änderungen aufweist.
Die NotificationEngine nicht außer Kraft setzen den Griff und seine Nachkommen , bis die Aktualisierungsanforderung verarbeitet wurde. Die Anwendung erhält kEvent_OnUpdateComplete-Callbacks für dieses Handle oder für einen seiner Vorfahren mit dem Ergebnis des Aktualisierungsvorgangs. Die Änderung kann bedingt sein oder nicht. Bedingte Datenaktualisierungen gehen verloren, wenn die lokale Kopie der Merkmalsinstanz nicht mehr mit der des Herausgebers synchron ist, weil sie vom Herausgeber selbst oder von einem anderen Client mutiert wurde. Bedingte und unbedingte Mutationen werden nicht gleichzeitig in derselben Merkmalsinstanz unterstützt.
Einzelheiten | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
| ||||||||||||
Rückgabewerte |
|
TraitUpdateableDataSink
TraitUpdatableDataSink( const TraitSchemaEngine *aEngine )
Freischalten
void Unlock( SubscriptionClient *apSubClient )