nl:: Weave:: Profiles:: SoftwareUpdate:: ImageQuery
#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>
Una clase para admitir la creación y la decodificación de mensajes de consulta de imágenes.
Resumen
El marco de consulta de imágenes tiene la siguiente forma sobre el cable.
Longitud | Nombre del campo |
1 byte | control de trama |
6 bytes | especificaciones de producto |
variable | especificación de la versión |
2..4 bytes | lista de tipos de integridad |
2..5 bytes | actualizar lista de esquemas |
variable | especificación de configuración regional (opcional) |
8 bytes | ID del nodo de destino |
variable | datos específicos del proveedor (opcional) |
Broca | Significado |
0 | 1 - Datos específicos del proveedor presentes, 0 - ausentes |
1 | 1: Especificación de configuración regional presente, 0: ausente |
2 | 1: ID de nodo de destino presente, 0: ausente |
3..7 | Reservados |
Constructores y destructores |
|
---|---|
ImageQuery()
Constructor predeterminado para ImageQuery.
|
Atributos públicos |
|
---|---|
integrityTypes
|
Tipos de integridad que admite el dispositivo.
|
localeSpec
|
Una cadena UTF-8 de longitud variable que contiene la configuración regional POSIX vigente en el dispositivo para el que se realiza la consulta de imagen.
|
packageSpec
|
Una cadena UTF-8 de longitud variable que contiene una cadena de especificación de paquete específica del proveedor.
|
productSpec
|
Especificaciones del producto que describen el dispositivo que realiza la búsqueda de la imagen.
|
targetNodeId
|
uint64_t
Es un ID de nodo opcional del dispositivo por el que se realiza la consulta.
|
theMetaData
|
El campo de datos específicos del proveedor tiene una longitud variable y ocupa el resto de la carga útil del mensaje de Weave, más allá de los campos descritos anteriormente.
|
updateSchemes
|
Actualiza los esquemas (protocolos de descarga) que admite el dispositivo.
|
version
|
Una cadena UTF-8 de longitud variable que contiene la versión de software del dispositivo especificada por el proveedor para el cual se realiza la consulta.
|
Funciones públicas |
|
---|---|
init(ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData)
|
Inicializa de forma explícita el objeto ImageQuery con los valores proporcionados.
|
operator==(const ImageQuery &) const
|
bool
Un operador de igualdad.
|
pack(PacketBuffer *)
|
Serializa la ImageQuery subyacente en el packageBuffer proporcionado.
|
print(void)
|
void
|
Funciones estáticas públicas |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
Deserializa el mensaje de consulta de imagen proporcionado en un PackageBuffer en una ImageQuery proporcionada.
|
Atributos públicos
localeSpec
ReferencedString localeSpec
Una cadena UTF-8 de longitud variable que contiene la configuración regional POSIX vigente en el dispositivo para el que se realiza la consulta de imagen.
El contenido de la cadena debe cumplir con el formato de identificador de configuración regional POSIX, como se especifica en ISO/IEC 15897; p.ej., en_AU.UTF-8 para inglés australiano.
packageSpec
ReferencedString packageSpec
Una cadena UTF-8 de longitud variable que contiene una cadena de especificación de paquete específica del proveedor.
El contenido del campo describe el tipo de contenedor deseado para la imagen de software, como "rpm", "deb", "tgz", "elf", etc. (NOTA: Este campo no se usa en las implementaciones de Nest del protocolo).
productSpec
ProductSpec productSpec
Especificaciones del producto que describen el dispositivo que realiza la búsqueda de la imagen.
targetNodeId
uint64_t targetNodeId
Es un ID de nodo opcional del dispositivo por el que se realiza la consulta.
El campo de ID de nodo de destino es opcional. Si está ausente, el ID del nodo de destino de la consulta es implícitamente el nodo que fue la fuente del mensaje de consulta de imagen.
El campo de ID de nodo de destino suele usarse cuando el nodo que es la fuente del mensaje de CONSULTA DE IMAGEN sirve como un proxy de actualización de software para otro nodo.
theMetaData
ReferencedTLVData theMetaData
El campo de datos específicos del proveedor tiene una longitud variable y ocupa el resto de la carga útil del mensaje de Weave, más allá de los campos descritos anteriormente.
El campo codifica información específica del proveedor sobre el dispositivo para el que se realiza la consulta. El campo de datos específico del proveedor es opcional. Si está presente, el campo tiene una forma de estructura anónima con codificación TLV. Las etiquetas que se presentan dentro de esta estructura deben ser etiquetas específicas del perfil completas.
updateSchemes
UpdateSchemeList updateSchemes
Actualiza los esquemas (protocolos de descarga) que admite el dispositivo.
versión
ReferencedString version
Una cadena UTF-8 de longitud variable que contiene la versión de software del dispositivo especificada por el proveedor para el cual se realiza la consulta.
Debe tener una longitud de 32 caracteres o menos.
Funciones públicas
ImageQuery
ImageQuery()
Constructor predeterminado para ImageQuery.
La ImageQuery se puede propagar llamando a init() o deserializando el objeto desde un mensaje.
init
WEAVE_ERROR init( ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData )
Inicializa de forma explícita el objeto ImageQuery con los valores proporcionados.
Detalles | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||||||||
Resultado que se muestra |
WEAVE_NO_ERROR en todos los casos.
|
operador==
bool operator==( const ImageQuery & ) const
Un operador de igualdad.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
true si todos los campos en ambos objetos son iguales; de lo contrario, false
|
paquete
WEAVE_ERROR pack( PacketBuffer * )
Serializa la ImageQuery subyacente en el packageBuffer proporcionado.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
||||
Valores de retorno |
|
imprimir
void print( void )
Funciones estáticas públicas
parse
WEAVE_ERROR parse( PacketBuffer *, ImageQuery & )
Deserializa el mensaje de consulta de imagen proporcionado en un PackageBuffer en una ImageQuery proporcionada.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
||||
Resultado que se muestra |
WEAVE_NO_ERROR si la operación se realizó correctamente
|
||||
Resultado que se muestra |
WEAVE_ERROR_BUFFER_TOO_SMALL Si el mensaje es demasiado pequeño para contener todos los campos de la ImageQuery
|
||||
Resultado que se muestra |
WEAVE_ERROR_INVALID_LIST_LENGTH Si el mensaje contenía una IntegrityTypeList o UpdateSchemeList demasiado larga
|