nl::Weave::Profiles::DataManagement_Legacy::ProfileDatabase::ProfileData

Das ist eine abstrakte Klasse.

#include <src/lib/profiles/data-management/Legacy/ProfileDatabase.h>

Die abstrakte innere Hilfsklasse ProfileData.

Zusammenfassung

Implementierer der Unterklassen ProfileDatabase sollten auch Unterklassen dieser inneren Hilfsklasse implementieren. Die Funktion von ProfileData-Objekten besteht darin, Hooks bereitzustellen, mit denen konkrete Daten gespeichert werden können, wobei sie als TLV dargestellt und als TLV-Darstellung anhand einer TLV-codierten Liste von Pfaden abgerufen werden können.

Konstruktoren und Zerstörer

ProfileData(void)
Der Standardkonstruktor für ProfileData.
~ProfileData(void)
Der Destruktor für ProfileData.

Öffentliche Attribute

mVersion
uint64_t
Version der Profildaten.

Öffentliche Funktionen

Retrieve(nl::Weave::TLV::TLVReader & aPathReader, nl::Weave::TLV::TLVWriter & aDataWriter)=0
virtual WEAVE_ERROR
Schreiben Sie ein Datenelement anhand eines WDM-Residuenpfads.
Store(nl::Weave::TLV::TLVReader & aPathReader, uint64_t aVersion, nl::Weave::TLV::TLVReader & aDataReader)
virtual WEAVE_ERROR
Ein gelesenes Datenlistenelement speichern.
StoreItem(const uint64_t & aTag, nl::Weave::TLV::TLVReader & aDataReader)=0
virtual WEAVE_ERROR
Datenelement basierend auf seinem Tag speichern

Öffentliche Attribute

mVersion

uint64_t mVersion

Version der Profildaten.

Die hier im Objekt ProfileData angegebene Version gilt für den gesamten Profildatensatz für eine bestimmte Instanz.

Öffentliche Funktionen

ProfileData

 ProfileData(
  void
)

Der Standardkonstruktor für ProfileData.

Initialisieren Sie ein neues ProfileData-Element, indem Sie seine Version auf 0 setzen.

Abrufen

virtual WEAVE_ERROR Retrieve(
  nl::Weave::TLV::TLVReader & aPathReader,
  nl::Weave::TLV::TLVWriter & aDataWriter
)=0

Schreiben Sie ein Datenelement anhand eines WDM-Residuenpfads.

Implementierer der Unterklasse ProfileDatabase müssen immer dann eine konkrete Implementierung für diese Methode bereitstellen, wenn auf die einzelnen Elemente eines Unterklassenobjekts von ProfileData unter bestimmten Tags zugegriffen werden kann.

Details
Parameter
[in] aPathReader
Ein Verweis auf einen TLV-Leser, der sich in einem WDM-Pfad nach den Profilinformationen befindet, z.B. bei den Residuenpfadelementen, falls vorhanden.
[in] aDataWriter
Ein Verweis auf einen TLV-Writer, mit dem die durch den Residuenpfad angegebenen Daten geschrieben werden.
Rückgabe
WEAVE_NO_ERROR Bei Erfolg Andernfalls wird WEAVE_ERROR zurückgegeben, wenn ein Residual-Tag nicht erkannt oder die entsprechenden Daten nicht geschrieben werden können.

Speichern

virtual WEAVE_ERROR Store(
  nl::Weave::TLV::TLVReader & aPathReader,
  uint64_t aVersion,
  nl::Weave::TLV::TLVReader & aDataReader
)

Ein gelesenes Datenlistenelement speichern.

Diese virtuelle Methode wird verwendet, um ein bestimmtes Datenlistenelement in einem Objekt einer konkreten ProfileData-Unterklasse zu speichern. Die Implementierung hier in der übergeordneten Klasse kann verwendet werden, wenn das Objekt einfach und "oberflächlich" ist und nur Pfade mit nur einem Element hat. Bei einem komplexeren Schema sollte diese Methode von Implementierern überschrieben werden.

Details
Parameter
[in] aPathReader
Ein Verweis auf einen TLV-Leser, der sich in der Pfadkomponente des Datenlistenelements befindet.
[in] aVersion
64-Bit-Version des Datenlistenelements
[in] aDataReader
Ein Verweis auf einen TLV-Leser, der sich in der Datenkomponente des Datenlistenelements befindet.
Rückgabe
WEAVE_NO_ERROR Bei Erfolg Andernfalls wird WEAVE_ERROR zurückgegeben, was bedeutet, dass die relevanten Daten nicht gespeichert werden konnten.

StoreItem

virtual WEAVE_ERROR StoreItem(
  const uint64_t & aTag,
  nl::Weave::TLV::TLVReader & aDataReader
)=0

Datenelement basierend auf seinem Tag speichern

Details
Parameter
[in] aTag
Ein Verweis auf das voll qualifizierte 64-Bit-TLV-Tag, unter dem die Daten gespeichert werden sollen.
[in] aDataReader
Ein TLV-Lesegerät, das sich beim zu speichernden Datenelement befindet.
Rückgabe
WEAVE_NO_ERROR bei Erfolg. Andernfalls wird WEAVE_ERROR zurückgegeben, wenn das Tag entweder nicht erkannt oder die Daten nicht gespeichert werden können.

~Profildaten

virtual  ~ProfileData(
  void
)

Der Destruktor für ProfileData.

Wie beim Konstruktor wird nur die Datenversion auf 0 gelöscht.