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 che lo sviluppatore del profilo è tenuto a implementare per implementare elenchi di percorsi o elenchi di dati con codifica TLV. Ciò rappresenta un onere per gli sviluppatori di profili e, in pratica, causerà molti duplicati del codice dopo che questi scrivono lo stesso codice per pacchettizzare TLV e così via. Per semplificare 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 e aggiunte al metodo LookupProfileData() di seguito le sottoclassi ProfileData concrete necessarie.

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 dato un elenco di percorsi.
Retrieve(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVWriter & aWriter)
Scrivi un elenco di dati dato 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 ProfileDatabase concreta.

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, destinato a restituire un puntatore all'oggetto ProfileData di interesse.
Restituisce
WEAVE_NO_ERROR in caso di esito positivo, altrimenti restituisce un WEAVE_ERROR che indica un errore nella 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 ProfileDatabase concreta.

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, destinato a restituire un puntatore all'oggetto ProfileData di interesse.
Restituisce
WEAVE_NO_ERROR in caso di esito positivo, altrimenti restituisce un WEAVE_ERROR che indica un errore nella 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 a cui sono stati assegnati un ID profilo e 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 dell'istanza. Se non è stato fornito l'identificatore dell'istanza, il valore sarà NULL.
[out] aResult
Un puntatore, destinato a restituire un puntatore all'oggetto ProfileData di interesse.
Restituisce
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di trovare un oggetto ProfileData.

Recupera

WEAVE_ERROR Retrieve(
  ReferencedTLVData & aPathList,
  ReferencedTLVData & aDataList
)

Recupera un elenco di dati dato un elenco di percorsi.

Una volta fornito un elenco di percorsi, recupera un elenco di dati contenente elementi dell'elenco di dati per ciascun 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 con codifica TLV di percorsi che rappresentano i dati da recuperare. Questo parametro viene mantenuto costante per tutta l'esecuzione della funzione.
[out] aDataList
Un riferimento a un oggetto ReferencedTLVData in cui scrivere i risultati recuperati. La lunghezza dei dati viene regolata solo dopo la riuscita esecuzione di questa funzione.
Restituisce
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di recuperare l'elenco di dati di interesse.

Recupera

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

Scrivi un elenco di dati dato un elenco di percorsi.

Una volta fornito un elenco di percorsi e un writer TLV, scrivi un elenco di dati contenente elementi dell'elenco di dati per ogni percorso nell'elenco di percorsi 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 della funzione.
[in] aWriter
Un riferimento al writer TLV da utilizzare per scrivere l'elenco dei percorsi recuperati. In caso di errore, lo stato interno dell'autore potrebbe non essere recuperabile.
Restituisce
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un WEAVE_ERROR che indica l'impossibilità di recuperare i dati o di scrivere l'elenco di dati di interesse.

Negozio

WEAVE_ERROR Store(
  ReferencedTLVData & aDataList
)

Archivia un elenco di dati.

Dato un elenco di dati con codifica TLV, questo metodo compie il processo di analisi dell'elenco e di chiamata ai 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 forma con codifica TLV.
Restituisce
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un WEAVE_ERROR che indica un'errata memorizzazione dei dati di interesse.

Funzioni protette

StoreInternal

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