nl:: Weave:: Profiles:: DataManagement_Current:: ResourceIdentifier
#include <src/lib/profiles/data-management/Current/ResourceIdentifier.h>
Uma estrutura que encapsula o ID de um recurso.
Resumo
O ResourceIdentifier pode ser um ID de objeto generalizado de 64 bits de um tipo específico ou um UUID. Quando codificadas externamente, as seguintes representações são aceitas:
um número inteiro de 64 bits não assinado correspondente ao objeto generalizado do tipo DEVICE com o ID especificado na representação
uma representação generalizada codificada como uma sequência de bytes de 10 octetos. Os dois primeiros octetos codificam o tipo de recurso como um número inteiro small endian de 16 bits, com os 8 bytes restantes codificando um ID de recurso pequeno endian de 64 bits.
Os ResourceIdentifiers também incorporam as convenções presentes em todo o código WDM: um ResourceIdentifier vazio corresponde ao ID do nó de DEVICE, e construtores são fornecidos para os casos de uso mais comuns.
Construtores e destruidores |
|
---|---|
ResourceIdentifier()
Construa um ResourceIdentifier correspondente a um ResourceID não especificado.
|
|
ResourceIdentifier(const uint64_t & aNodeId)
Cria um ResourceIdentifier do tipo DEVICE com base em um determinado aNodeId.
|
|
ResourceIdentifier(uint16_t aResourceType, const uint64_t & aResourceId)
Construa o ResourceIdentifier do tipo especificado com o ID fornecido.
|
|
ResourceIdentifier(uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen)
Construa o ResourceIdentifier do tipo especificado com o ID fornecido.
|
Tipos públicos |
|
---|---|
@125{
|
enum |
@126
|
enum Define um valor especial para o NodeId que faz referência a "self". |
@127
|
enum |
Atributos públicos |
|
---|---|
ResourceId
|
uint64_t
|
ResourceIdBytes[8]
|
uint8_t
|
Funções públicas |
|
---|---|
FromString(const char *inBuffer, size_t inBufferLen)
|
Analisa uma representação de string canônica de um recurso em um objeto de recurso.
|
FromString(const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId)
|
Analisa uma representação de string canônica de um recurso em um objeto de recurso.
|
FromTLV(nl::Weave::TLV::TLVReader & aReader)
|
Desserialize um ResourceIdentifier de uma representação TLV nesse objeto.
|
FromTLV(nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
|
Desserialize um ResourceIdentifier de uma representação TLV nesse objeto.
|
GetResourceId() const
|
uint64_t
Uma função de acesso para buscar o ResourceId.
|
GetResourceType() const
|
uint16_t
Uma função de acesso para buscar o ResourceType.
|
ResourceTypeAsString(void) const
|
const char *
Produz uma representação de string do ResourceType.
|
ToString(char *buffer, size_t bufferLen)
|
Converter o ResourceIdentifier em uma string que pode ser impressa.
|
ToTLV(nl::Weave::TLV::TLVWriter & aWriter) const
|
Serializar o recurso para uma representação TLV usando uma tag Path::ResourceID de contexto.
|
ToTLV(nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag) const
|
Serializa o recurso para uma representação TLV usando uma determinada tag.
|
Funções estáticas públicas |
|
---|---|
ResourceTypeAsString(uint16_t aResourceType)
|
const char *
Produz uma representação de string de um tipo de recurso.
|
Classes de amizade |
|
---|---|
operator==
|
friend bool
|
Tipos públicos
@125
@125
Propriedades | |
---|---|
RESOURCE_TYPE_RESERVED
|
Um tipo de recurso reservado. O tipo enumerado é escolhido de modo que não entre em conflito com os valores de tipo enumerado dos tipos enumerados Schema::Weave:::Common::ResourceType. No momento, dois valores de ResourceId são possíveis para o tipo de recurso RESERVED: um kNodeIdNotspecified corresponde a um ResourceIdentifier unitário, e SELF_NODE_ID corresponde a um recurso que será remapeado para SELF a partir de qualquer outra representação. |
@126
@126
Define um valor especial para o NodeId que faz referência a "self".
Em certas interações do WDM, ter um valor "self" para o recurso permite a compactação dessas informações, pois é redundante para o ID do nó de origem do dispositivo expresso no Weave. a própria mensagem
@127
@127
Atributos públicos
ResourceId
uint64_t ResourceId
ResourceIdBytes
uint8_t ResourceIdBytes[8]
Funções públicas
FromString
WEAVE_ERROR FromString( const char *inBuffer, size_t inBufferLen )
Analisa uma representação de string canônica de um recurso em um objeto de recurso.
Converte a representação de string canônica de um recurso em um objeto de recurso. Observe que apenas um subconjunto de recursos pode ser representado como uma string. Especificamente, a implementação de referência no Weave analisará apenas os recursos de tipos canônicos conforme expresso no ResourceTypeEnum.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
FromString
WEAVE_ERROR FromString( const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId )
Analisa uma representação de string canônica de um recurso em um objeto de recurso.
Converte a representação de string canônica de um recurso em um objeto de recurso. Observe que apenas um subconjunto de recursos pode ser representado como uma string. Especificamente, a implementação de referência no Weave analisará apenas os recursos de tipos canônicos conforme expresso no ResourceTypeEnum.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
FromTLV
WEAVE_ERROR FromTLV( nl::Weave::TLV::TLVReader & aReader )
Desserialize um ResourceIdentifier de uma representação TLV nesse objeto.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retornos |
WEAVE_NO_ERROR caso a operação seja concluída. Erros do TLVReader quando o ResourceIdentifier não pode ser lido corretamente.
|
FromTLV
WEAVE_ERROR FromTLV( nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId )
Desserialize um ResourceIdentifier de uma representação TLV nesse objeto.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Retornos |
WEAVE_NO_ERROR caso a operação seja concluída. Erros do TLVReader quando o ResourceIdentifier não pode ser lido corretamente.
|
GetResourceId
uint64_t GetResourceId() const
Uma função de acesso para buscar o ResourceId.
GetResourceType
uint16_t GetResourceType() const
Uma função de acesso para buscar o ResourceType.
ResourceIdentifier
ResourceIdentifier()
Construa um ResourceIdentifier correspondente a um ResourceID não especificado.
O ID de recurso não especificado é uma tupla que consiste em um tipo de recurso RESERVED com um recurso kNodeIdNotSpeficied.
ResourceIdentifier
ResourceIdentifier( const uint64_t & aNodeId )
Cria um ResourceIdentifier do tipo DEVICE com base em um determinado aNodeId.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
ResourceIdentifier
ResourceIdentifier( uint16_t aResourceType, const uint64_t & aResourceId )
Construa o ResourceIdentifier do tipo especificado com o ID fornecido.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
ResourceIdentifier
ResourceIdentifier( uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen )
Construa o ResourceIdentifier do tipo especificado com o ID fornecido.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
ResourceTypeAsString
const char * ResourceTypeAsString( void ) const
Produz uma representação de string do ResourceType.
Os tipos de recursos convertidos são os enumerados em ResourceTypeEnum.h e o 0 (correspondente ao RESOURCE_TYPE_RESERVED)
ToString
WEAVE_ERROR ToString( char *buffer, size_t bufferLen )
Converter o ResourceIdentifier em uma string que pode ser impressa.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
ToTLV
WEAVE_ERROR ToTLV( nl::Weave::TLV::TLVWriter & aWriter ) const
Serializar o recurso para uma representação TLV usando uma tag Path::ResourceID de contexto.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
ToTLV
WEAVE_ERROR ToTLV( nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag ) const
Serializa o recurso para uma representação TLV usando uma determinada tag.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
Funções estáticas públicas
ResourceTypeAsString
const char * ResourceTypeAsString( uint16_t aResourceType )
Produz uma representação de string de um tipo de recurso.
Os tipos de recursos convertidos são os enumerados em ResourceTypeEnum.h e o 0 (correspondente ao RESOURCE_TYPE_RESERVED)
Detalhes | |||
---|---|---|---|
Parâmetros |
|
Classes de amizade
operador==
friend bool operator==(const ResourceIdentifier &lhs, const ResourceIdentifier &rhs)