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

Dies ist eine abstrakte Klasse.

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

Die abstrakte innere Hilfsklasse ProfileData.

Zusammenfassung

Implementierer der abgeleiteten ProfileDatabase-Klasse sollten auch Unterklassen dieser inneren Hilfsklasse implementieren. Die Funktion von ProfileData-Objekten besteht darin, Hooks bereitzustellen, mit denen konkrete Daten anhand ihrer Darstellung als TLV gespeichert und als TLV-Darstellung in 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-Restpfads.
Store(nl::Weave::TLV::TLVReader & aPathReader, uint64_t aVersion, nl::Weave::TLV::TLVReader & aDataReader)
virtual WEAVE_ERROR
Speichert ein Datenlistenelement, das gerade gelesen wird.
StoreItem(const uint64_t & aTag, nl::Weave::TLV::TLVReader & aDataReader)=0
virtual WEAVE_ERROR
Speichern Sie ein Datenelement basierend auf seinem Tag.

Öffentliche Attribute

mVersion

uint64_t mVersion

Version der Profildaten.

Die hier im ProfileData-Objekt angegebene Version gilt für den gesamten Profildatensatz einer bestimmten 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-Restpfads aus.

Implementierer der ProfileDatabase-Unterklassen müssen eine konkrete Implementierung für diese Methode in jedem Fall bereitstellen, in dem die einzelnen Elemente eines ProfileData-Unterklassenobjekts unter bestimmten Tags zugänglich sind.

Details
Parameter
[in] aPathReader
Ein Verweis auf einen TLV-Leser, der sich in einem WDM-Pfad nach den Profilinformationen befindet, d.h. am "Residual"-Pfad Pfad-Elemente, falls vorhanden.
[in] aDataWriter
Ein Verweis auf einen TLV-Schreiber, der zum Ausschreiben der Daten verwendet wird, die durch den Residuenpfad angegeben werden.
Rückgabe
WEAVE_NO_ERROR Bei Erfolg. Andernfalls wird ein WEAVE_ERROR zurückgegeben, der angibt, dass kein Rest-Tag erkannt oder die entsprechenden Daten nicht geschrieben werden können.

Shop

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

Speichert ein Datenlistenelement, das gerade gelesen wird.

Diese virtuelle Methode wird verwendet, um ein bestimmtes Datenlistenelement in einem Objekt einer konkreten ProfileData-Unterklasse zu speichern. Die Implementierung in der übergeordneten Klasse kann verwendet werden, wenn das Objekt einfach und "flach" ist und nur Pfade mit einem Element lang ist. Bei einem komplexeren Schema sollten Implementierer diese Methode überschreiben.

Details
Parameter
[in] aPathReader
Ein Verweis auf einen TLV-Leser, der sich unter der Pfadkomponente des Datenlistenelements befindet.
[in] aVersion
Die 64-Bit-Versionskomponente des Datenlistenelements.
[in] aDataReader
Ein Verweis auf einen TLV-Leser, der sich an der Datenkomponente des Datenlisteneintrags befindet.
Rückgabe
WEAVE_NO_ERROR Bei Erfolg. Andernfalls wird ein WEAVE_ERROR zurückgegeben, der angibt, dass die gewünschten Daten nicht gespeichert werden konnten.

StoreItem

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

Speichern Sie ein Datenelement basierend auf seinem Tag.

Details
Parameter
[in] aTag
Eine Referenz auf das voll qualifizierte 64-Bit-TLV-Tag, unter dem die Daten gespeichert werden sollen.
[in] aDataReader
Ein TLV-Lesegerät, das sich am zu speichernden Datenelement befindet.
Rückgabe
Bei Erfolg WEAVE_NO_ERROR. Andernfalls wird ein WEAVE_ERROR zurückgegeben, der darauf hinweist, dass das Tag nicht erkannt oder die Daten nicht gespeichert werden können.

~ProfileData

virtual  ~ProfileData(
  void
)

Der Destruktor für ProfileData.

Wie beim Konstruktor löscht dies nur die Datenversion auf 0.