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

Questa è una classe astratta.

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

La classe ausiliaria astratta ProfileDatabase.

Riepilogo

WDM separa l'implementazione del protocollo dall'implementazione della gestione dei dati e, almeno in linea di principio, lascia la maggior parte di quest'ultima allo sviluppatore dell'applicazione. Tutte le chiamate interessanti in WDM e tutti i metodi astratti necessari allo sviluppatore del profilo per implementare utilizzano elenchi di percorsi o elenchi di dati con codifica TLV. Questo crea un onere per gli sviluppatori di profili e, in pratica, causerà molte duplicazioni di codice in quanto sviluppatore dopo che quest'ultimo scriverà lo stesso codice per la pacchettizzazione e il decompressione di TLV e così via. Per semplificare un po' le cose, forniamo una sorta di "toolkit di gestione dei dati".

Questa classe ausiliaria fornisce supporto per l'archiviazione e il recupero dei dati a condizione che siano state fornite le sottoclassi concrete ProfileData necessarie e aggiunte al metodo LookupProfileData() di seguito.

Funzioni pubbliche

LookupDataFromProfileDescriptor(nl::Weave::TLV::TLVReader & aDescReader, ProfileData **aProfileData)
Trova un oggetto ProfileData nel database.
LookupProfileData(nl::Weave::TLV::TLVReader & aPathReader, ProfileData **aProfileData)
Trova un oggetto ProfileData nel database.
LookupProfileData(uint32_t aProfileId, nl::Weave::TLV::TLVReader *aInstanceIdRdr, ProfileData **aResult)=0
virtual WEAVE_ERROR
Cerca un oggetto ProfileData.
Retrieve(ReferencedTLVData & aPathList, ReferencedTLVData & aDataList)
Recupera un elenco di dati in base a un elenco di percorsi.
Retrieve(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVWriter & aWriter)
Scrivi un elenco di dati sulla base di un elenco di percorsi.
Store(ReferencedTLVData & aDataList)
Archivia un elenco di dati.

Funzioni protette

StoreInternal(nl::Weave::TLV::TLVReader & aPathReader, uint64_t aVersion, nl::Weave::TLV::TLVReader & aDataReader)

Corsi

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

La classe interna ausiliaria astratta ProfileData.

Funzioni pubbliche

LookupDataFromProfileDescriptor

WEAVE_ERROR LookupDataFromProfileDescriptor(
  nl::Weave::TLV::TLVReader & aDescReader,
  ProfileData **aProfileData
)

Trova un oggetto ProfileData nel database.

Questo metodo di utilità viene utilizzato per trovare oggetti ProfileData in un determinato ProfileDatabase. Dipende in gran parte dai metodi di ricerca forniti dall'implementatore della sottoclasse concreta ProfileDatabase.

Dettagli
Parametri
[in] aDescReader
Un riferimento a un lettore TLV posizionato in un percorso WDM, ovvero un percorso TLV che ha come primo elemento una descrizione del profilo.
[out] aProfileData
Un puntatore che restituisce un puntatore all'oggetto ProfileData che ti interessa.
Restituisce
WEAVE_NO_ERROR in caso di esito positivo. In caso contrario, restituisce WEAVE_ERROR che indica la mancata ricerca di un oggetto ProfileData corrispondente.

LookupProfileData

WEAVE_ERROR LookupProfileData(
  nl::Weave::TLV::TLVReader & aPathReader,
  ProfileData **aProfileData
)

Trova un oggetto ProfileData nel database.

Questo metodo di utilità viene utilizzato per trovare oggetti ProfileData in un determinato ProfileDatabase. Dipende in gran parte dai metodi di ricerca forniti dall'implementatore della sottoclasse concreta ProfileDatabase.

Dettagli
Parametri
[in] aPathReader
Un riferimento a un lettore TLV posizionato in un percorso WDM, ovvero un percorso TLV che ha come primo elemento una descrizione del profilo.
[out] aProfileData
Un puntatore che restituisce un puntatore all'oggetto ProfileData che ti interessa.
Restituisce
WEAVE_NO_ERROR in caso di esito positivo. In caso contrario, restituisce WEAVE_ERROR che indica la mancata ricerca di un oggetto ProfileData corrispondente.

LookupProfileData

virtual WEAVE_ERROR LookupProfileData(
  uint32_t aProfileId,
  nl::Weave::TLV::TLVReader *aInstanceIdRdr,
  ProfileData **aResult
)=0

Cerca un oggetto ProfileData.

Cerca un oggetto ProfileData specifico in base a un ID profilo e a un ID istanza (facoltativo) < fornito come lettore TLV.

Dettagli
Parametri
[in] aProfileId
Il numero del profilo a 32 bit del profilo di interesse.
[in] aInstanceIdRdr
Un puntatore a un lettore TLV posizionato in corrispondenza dei dati dell'identificatore di istanza. Se non è stato fornito l'identificatore dell'istanza, questo sarà NULL.
[out] aResult
Un puntatore che restituisce un puntatore all'oggetto ProfileData che ti interessa.
Restituisce
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che riflette l'impossibilità di trovare un oggetto ProfileData.

Recupera

WEAVE_ERROR Retrieve(
  ReferencedTLVData & aPathList,
  ReferencedTLVData & aDataList
)

Recupera un elenco di dati in base a un elenco di percorsi.

Una volta creato un elenco di percorsi, recupera un elenco di dati contenente gli elementi per ogni percorso nell'elenco dei dati che costituiscono il terminale di quel percorso.

Dettagli
Parametri
[in] aPathList
Un riferimento a un oggetto ReferencedTLVData contenente un elenco di percorsi con codifica TLV che rappresentano i dati da recuperare. Questo parametro viene mantenuto costante per tutta l'esecuzione di questa funzione.
[out] aDataList
Un riferimento a un oggetto ReferencedTLVData in cui scrivere i risultati recuperati. La lunghezza dei dati viene modificata solo dopo l'esecuzione corretta di questa funzione.
Restituisce
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indichi un mancato recupero dell'elenco di dati di interesse.

Recupera

WEAVE_ERROR Retrieve(
  ReferencedTLVData & aPathList,
  nl::Weave::TLV::TLVWriter & aWriter
)

Scrivi un elenco di dati sulla base di un elenco di percorsi.

Data un elenco di percorsi e un writer TLV, scrivi un elenco di dati contenente gli elementi dell'elenco di dati per ogni percorso nell'elenco e i dati che costituiscono il terminale di quel percorso.

Dettagli
Parametri
[in] aPathList
Un riferimento a un oggetto ReferencedTLVData contenente un elenco di percorsi TLV che rappresentano i dati da recuperare. Questo parametro viene mantenuto costante per tutta l'esecuzione di questa funzione.
[in] aWriter
Un riferimento al writer TLV da utilizzare per scrivere l'elenco dei percorsi recuperato. In caso di errore, lo stato interno dell'autore potrebbe non essere recuperabile.
Restituisce
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica un errore durante il recupero dei dati o la scrittura dell'elenco di dati che ti interessa.

Archiviazione

WEAVE_ERROR Store(
  ReferencedTLVData & aDataList
)

Archivia un elenco di dati.

Dato un elenco di dati con codifica TLV, questo metodo passa attraverso il processo di analisi dell'elenco e di chiamare i metodi concreti forniti dagli implementatori della sottoclasse ProfileDatabase per inserire i dati di riferimento dove appartengono.

Dettagli
Parametri
[in] aDataList
Un riferimento a un oggetto ReferencedTLVData contenente i dati di interesse in formato con codifica TLV.
Restituisce
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indichi la mancata memorizzazione dei dati di interesse.

Funzioni protette

StoreInternal

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