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 imagen.
Resumen
El marco de consulta de imagen tiene la siguiente forma sobre la línea
Longitud | Nombre del campo |
1 byte | control de fotogramas |
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 la configuración regional (opcional) |
8 bytes | ID del nodo de destino |
variable | datos específicos del proveedor (opcional) |
Bit | Significado |
0 | 1 - Datos específicos del proveedor presentes, 0 - Ausente |
1 | 1 - especificación de configuración regional presente, 0 - ausente |
2 | 1 - ID de nodo de destino presente, 0 - no presente |
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 string UTF-8 de longitud variable que contiene una string de especificación de paquete específica del proveedor.
|
productSpec
|
Especificación de producto que describe el dispositivo que realiza la consulta de imagen.
|
targetNodeId
|
uint64_t
Un ID de nodo opcional del dispositivo para el que se realiza la consulta.
|
theMetaData
|
El campo de datos específico 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 string UTF-8 de longitud variable que contiene la versión de software especificada por el proveedor del dispositivo para el que 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 PacketBuffer proporcionado.
|
print(void)
|
void
|
Funciones estáticas públicas |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
Deserializa el mensaje de consulta de imagen proporcionado en un PacketBuffer 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 string debe cumplir con el formato del identificador de configuración regional POSIX, como se especifica en el estándar ISO/IEC 15897, p.ej., en_AU.UTF-8 para inglés australiano.
packageSpec
ReferencedString packageSpec
Una string UTF-8 de longitud variable que contiene una string 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
Especificación de producto que describe el dispositivo que realiza la consulta de imagen.
targetNodeId
uint64_t targetNodeId
Un ID de nodo opcional del dispositivo para el que se realiza la consulta.
El campo ID del nodo de destino es opcional. Si está ausente, el ID del nodo de destino para la consulta es implícitamente el nodo que fue la fuente del mensaje de consulta de imagen.
El campo ID del nodo de destino suele usarse en instancias en las que el nodo que es el origen del mensaje IMAGE QUERY se utiliza como proxy de actualización de software para otro nodo.
theMetaData
ReferencedTLVData theMetaData
El campo de datos específico 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íficos del proveedor es opcional. Si está presente, el campo tiene una forma de estructura anónima codificada en el TLV. Las etiquetas que se presenten dentro de esta estructura deben ser etiquetas específicas del perfil completamente calificadas.
updateSchemes
UpdateSchemeList updateSchemes
Actualiza los esquemas (protocolos de descarga) que admite el dispositivo.
version
ReferencedString version
Una string UTF-8 de longitud variable que contiene la versión de software especificada por el proveedor del dispositivo para el que se realiza la consulta.
Debe tener una longitud de 32 años 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 |
|
||||||||||||||||
Qué muestra |
WEAVE_NO_ERROR Incondicionalmente.
|
operador==
bool operator==( const ImageQuery & ) const
Un operador de igualdad.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
true si todos los campos de ambos objetos son iguales, de lo contrario, false
|
paquete
WEAVE_ERROR pack( PacketBuffer * )
Serializa la ImageQuery subyacente en el PacketBuffer proporcionado.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
||||
Valores que se muestran |
|
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 PacketBuffer en una ImageQuery proporcionada.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
||||
Qué muestra |
WEAVE_NO_ERROR Si la operación es exitosa
|
||||
Qué muestra |
WEAVE_ERROR_BUFFER_TOO_SMALL Si el mensaje es demasiado pequeño para contener todos los campos de la ImageQuery
|
||||
Qué muestra |
WEAVE_ERROR_INVALID_LIST_LENGTH Si el mensaje contenía una IntegrityTypeList o una UpdateSchemeList que era demasiado larga
|