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

Essa é uma classe abstrata.

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

A classe auxiliar ProfileDatabase abstrata.

Resumo

O WDM separa a implementação do protocolo da implementação do gerenciamento de dados e, pelo menos em princípio, deixa a maior parte deste para o desenvolvedor do aplicativo. Todas as chamadas interessantes no WDM e todos os métodos abstratos que o desenvolvedor do perfil precisa implementar usam listas de caminhos ou de dados codificados em TLV. Isso sobrecarrega os desenvolvedores de perfil e, na prática, causa muita duplicação de código, já que eles são criados após o desenvolvedor criar o mesmo código para empacotar e descompactar TLV e assim por diante. Para facilitar um pouco as coisas, fornecemos um tipo de "kit de ferramentas de gerenciamento de dados".

Essa classe auxiliar fornece suporte para armazenar e recuperar dados, desde que as subclasses ProfileData concretas necessárias tenham sido fornecidas e adicionadas ao método LookupProfileData() abaixo.

Funções públicas

LookupDataFromProfileDescriptor(nl::Weave::TLV::TLVReader & aDescReader, ProfileData **aProfileData)
Encontre um objeto ProfileData no banco de dados.
LookupProfileData(nl::Weave::TLV::TLVReader & aPathReader, ProfileData **aProfileData)
Encontre um objeto ProfileData no banco de dados.
LookupProfileData(uint32_t aProfileId, nl::Weave::TLV::TLVReader *aInstanceIdRdr, ProfileData **aResult)=0
virtual WEAVE_ERROR
Procure um objeto ProfileData.
Retrieve(ReferencedTLVData & aPathList, ReferencedTLVData & aDataList)
Recupera uma lista de dados com base em uma lista de caminhos.
Retrieve(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVWriter & aWriter)
Escreva uma lista de dados com base em uma lista de caminhos.
Store(ReferencedTLVData & aDataList)
Armazenar uma lista de dados.

Funções protegidas

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

Aulas

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

A classe interna auxiliar ProfileData abstrata.

Funções públicas

LookupDataFromProfileDescriptor

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

Encontre um objeto ProfileData no banco de dados.

Esse método utilitário é usado para encontrar objetos ProfileData em um ProfileDatabase específico. Ela depende muito dos métodos de pesquisa fornecidos pelo implementador da subclasse ProfileDatabase concreta.

Detalhes
Parâmetros
[in] aDescReader
Uma referência a um leitor de TLV posicionado em um caminho WDM, ou seja, um caminho TLV que tem, como primeiro elemento, uma descrição de perfil.
[out] aProfileData
Um ponteiro, destinado a retornar um ponteiro para o objeto ProfileData desejado.
Retorna
WEAVE_NO_ERROR em caso de sucesso, caso contrário, retorna um WEAVE_ERROR indicando uma falha ao procurar um objeto ProfileData correspondente.

LookupProfileData

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

Encontre um objeto ProfileData no banco de dados.

Esse método utilitário é usado para encontrar objetos ProfileData em um ProfileDatabase específico. Ela depende muito dos métodos de pesquisa fornecidos pelo implementador da subclasse ProfileDatabase concreta.

Detalhes
Parâmetros
[in] aPathReader
Uma referência a um leitor de TLV posicionado em um caminho WDM, ou seja, um caminho TLV que tem, como primeiro elemento, uma descrição de perfil.
[out] aProfileData
Um ponteiro, destinado a retornar um ponteiro para o objeto ProfileData desejado.
Retorna
WEAVE_NO_ERROR em caso de sucesso, caso contrário, retorna um WEAVE_ERROR indicando uma falha ao procurar um objeto ProfileData correspondente.

LookupProfileData

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

Procure um objeto ProfileData.

Pesquisar um objeto ProfileData específico com um ID de perfil e um ID de instância (opcional)< fornecidos como um leitor de TLV.

Detalhes
Parâmetros
[in] aProfileId
O número de 32 bits do perfil de interesse.
[in] aInstanceIdRdr
Um ponteiro para um leitor de TLV posicionado nos dados do identificador da instância. Se não foi fornecido um identificador de instância, o valor será NULL.
[out] aResult
Um ponteiro, destinado a retornar um ponteiro para o objeto ProfileData desejado.
Retorna
WEAVE_NO_ERROR Em caso de êxito. Caso contrário, retorne um WEAVE_ERROR que reflete uma incapacidade de encontrar um objeto ProfileData.

Recuperar

WEAVE_ERROR Retrieve(
  ReferencedTLVData & aPathList,
  ReferencedTLVData & aDataList
)

Recupera uma lista de dados com base em uma lista de caminhos.

Dada uma lista de caminhos, recupere uma lista de dados que contenha elementos dela para cada caminho na lista de caminhos com os dados que são o terminal desse caminho.

Detalhes
Parâmetros
[in] aPathList
Uma referência a um objeto ReferencedTLVData contendo uma lista codificada por TLV de caminhos que representam os dados a serem recuperados. Esse parâmetro é mantido constante durante toda a execução dessa função.
[out] aDataList
Uma referência a um objeto ReferencedTLVData no qual gravar os resultados recuperados. O comprimento dos dados é ajustado somente após a execução bem-sucedida desta função.
Retorna
WEAVE_NO_ERROR Em caso de êxito. Caso contrário, retorne um WEAVE_ERROR indicando uma falha na recuperação da lista de dados de interesse.

Recuperar

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

Escreva uma lista de dados com base em uma lista de caminhos.

Dada uma lista de caminhos e um gravador de TLV, escreva uma lista de dados contendo elementos de lista de dados para cada caminho na lista de caminhos e os dados que são o terminal desse caminho.

Detalhes
Parâmetros
[in] aPathList
Uma referência a um objeto ReferencedTLVData contendo uma lista de caminhos TLV que representam os dados a serem recuperados. Esse parâmetro é mantido constante durante toda a execução dessa função.
[in] aWriter
Uma referência ao gravador TLV a ser usado para escrever a lista de caminhos recuperados. O estado interno do gravador pode ser irrecuperável em caso de erro.
Retorna
WEAVE_NO_ERROR Em caso de êxito. Caso contrário, retorne um WEAVE_ERROR indicando uma falha na recuperação dos dados ou na gravação da lista de dados de interesse.

Armazenar

WEAVE_ERROR Store(
  ReferencedTLVData & aDataList
)

Armazenar uma lista de dados.

Esse método passa pelo processo de análise de uma lista de dados codificada por TLV e chama os métodos concretos fornecidos pelos implementadores de subclasse ProfileDatabase para colocar os dados referenciados no lugar certo.

Detalhes
Parâmetros
[in] aDataList
Uma referência a um objeto ReferencedTLVData contendo os dados de interesse na forma codificada por TLV.
Retorna
WEAVE_NO_ERROR Em caso de êxito. Caso contrário, retorne um WEAVE_ERROR indicando uma falha ao armazenar os dados de interesse.

Funções protegidas

StoreInternal

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