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

Esta es una clase abstracta.

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

La clase auxiliar abstracta ProfileDatabase.

Resumen

WDM separa la implementación del protocolo de la implementación de la administración de datos y, al menos en principio, le deja la mayor parte de estas últimas al desarrollador de la aplicación. Todas las llamadas interesantes en WDM y todos los métodos abstractos que el desarrollador de perfiles debe implementar toman listas de rutas de acceso codificadas con TLV o listas de datos. Esto genera una carga para los desarrolladores de perfiles y, en la práctica, causará una gran cantidad de duplicación de código, ya que el desarrollador después de escribir el mismo código para empaquetar y desempaquetar TLV, etcétera. Para facilitar un poco la situación, ofrecemos una especie de "kit de herramientas de administración de datos".

Esta clase auxiliar proporciona compatibilidad para almacenar y recuperar datos siempre que se hayan proporcionado las subclases concretas ProfileData necesarias y se hayan agregado al método LookupProfileData() a continuación.

Funciones públicas

LookupDataFromProfileDescriptor(nl::Weave::TLV::TLVReader & aDescReader, ProfileData **aProfileData)
Encuentra un objeto ProfileData en la base de datos.
LookupProfileData(nl::Weave::TLV::TLVReader & aPathReader, ProfileData **aProfileData)
Encuentra un objeto ProfileData en la base de datos.
LookupProfileData(uint32_t aProfileId, nl::Weave::TLV::TLVReader *aInstanceIdRdr, ProfileData **aResult)=0
virtual WEAVE_ERROR
Busca un objeto ProfileData.
Retrieve(ReferencedTLVData & aPathList, ReferencedTLVData & aDataList)
Recupera una lista de datos a partir de una lista de rutas de acceso.
Retrieve(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVWriter & aWriter)
Escribe una lista de datos dada una lista de rutas de acceso.
Store(ReferencedTLVData & aDataList)
Almacena una lista de datos.

Funciones protegidas

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

Clases

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

La clase interna auxiliar abstracta ProfileData.

Funciones públicas

LookupDataFromProfileDescriptor

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

Encuentra un objeto ProfileData en la base de datos.

Este método de utilidad se usa para encontrar objetos ProfileData en una ProfileDatabase en particular. Depende en gran medida de los métodos de búsqueda que proporciona el implementador de la subclase concreta de ProfileDatabase.

Detalles
Parámetros
[in] aDescReader
Es una referencia a un lector de TLV posicionado en una ruta de WDM, es decir, una ruta de acceso de TLV que tiene, como su primer elemento, una descripción de perfil.
[out] aProfileData
Un puntero, diseñado para mostrar un puntero al objeto ProfileData de interés.
Resultado que se muestra
WEAVE_NO_ERROR si se ejecuta de forma correcta; de lo contrario, muestra un WEAVE_ERROR que indica un error al buscar un objeto ProfileData coincidente.

LookupProfileData

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

Encuentra un objeto ProfileData en la base de datos.

Este método de utilidad se usa para encontrar objetos ProfileData en una ProfileDatabase en particular. Depende en gran medida de los métodos de búsqueda que proporciona el implementador de la subclase concreta de ProfileDatabase.

Detalles
Parámetros
[in] aPathReader
Es una referencia a un lector de TLV posicionado en una ruta de WDM, es decir, una ruta de acceso de TLV que tiene, como su primer elemento, una descripción de perfil.
[out] aProfileData
Un puntero, diseñado para mostrar un puntero al objeto ProfileData de interés.
Resultado que se muestra
WEAVE_NO_ERROR si se ejecuta de forma correcta; de lo contrario, muestra un WEAVE_ERROR que indica un error al buscar un objeto ProfileData coincidente.

LookupProfileData

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

Busca un objeto ProfileData.

Buscar un objeto ProfileData específico con un ID de perfil y un ID de instancia (opcional)< como lector de TLV.

Detalles
Parámetros
[in] aProfileId
Número de perfil de 32 bits del perfil de interés.
[in] aInstanceIdRdr
Un puntero para un lector de TLV posicionado en los datos del identificador de instancia. Si no se proporcionó un identificador de instancia, este debe ser NULL.
[out] aResult
Un puntero, diseñado para mostrar un puntero al objeto ProfileData de interés.
Resultado que se muestra
WEAVE_NO_ERROR si la operación es exitosa. De lo contrario, muestra un WEAVE_ERROR, que refleja la incapacidad de encontrar un objeto ProfileData.

Recuperar

WEAVE_ERROR Retrieve(
  ReferencedTLVData & aPathList,
  ReferencedTLVData & aDataList
)

Recupera una lista de datos a partir de una lista de rutas de acceso.

Dada una lista de rutas de acceso, recupera una lista de datos que contenga los elementos de la lista de datos para cada ruta de acceso en la lista de los datos que son la terminal de esa ruta.

Detalles
Parámetros
[in] aPathList
Es una referencia a un objeto ReferencedTLVData que contiene una lista codificada por TLV de rutas que representan los datos que se recuperarán. Este parámetro se mantiene constante durante la ejecución de esta función.
[out] aDataList
Una referencia a un objeto ReferencedTLVData en la que se escriben los resultados recuperados. La longitud de los datos se ajusta solo después de la ejecución correcta de esta función.
Resultado que se muestra
WEAVE_NO_ERROR si la operación es exitosa. De lo contrario, muestra un WEAVE_ERROR que indica que no se pudo recuperar la lista de datos de interés.

Recuperar

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

Escribe una lista de datos dada una lista de rutas de acceso.

Dada una lista de rutas de acceso y un escritor TLV, escribe una lista de datos que contenga elementos de lista de datos para cada ruta de acceso y los datos que son la terminal de esa ruta.

Detalles
Parámetros
[in] aPathList
Es una referencia a un objeto ReferencedTLVData que contiene una lista de rutas de acceso TLV que representan los datos que se recuperarán. Este parámetro se mantiene constante durante la ejecución de esta función.
[in] aWriter
Una referencia al escritor TLV para usar en la escritura de la lista de rutas de acceso recuperada. El estado interno del escritor podría ser irrecuperable en caso de un error.
Resultado que se muestra
WEAVE_NO_ERROR si la operación es exitosa. De lo contrario, mostrará un error WEAVE_ERROR que indica que no se pudieron recuperar los datos ni escribir la lista de datos de interés.

Tienda

WEAVE_ERROR Store(
  ReferencedTLVData & aDataList
)

Almacena una lista de datos.

Dada una lista de datos con codificación TLV, este método pasa por el proceso de analizar esa lista y llamar a los métodos concretos proporcionados por los implementadores de subclases ProfileDatabase para colocar los datos referenciados donde pertenecen.

Detalles
Parámetros
[in] aDataList
Una referencia a un objeto ReferencedTLVData que contiene los datos de interés en formato con codificación TLV.
Resultado que se muestra
WEAVE_NO_ERROR si la operación es exitosa. De lo contrario, muestra un WEAVE_ERROR que indica que no se pudieron almacenar los datos de interés.

Funciones protegidas

StoreInternal

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