nl:: Weave:: Profiles:: SoftwareUpdate:: ImageQuery
#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>
Una classe per supportare la creazione e la decodifica di messaggi di query immagine.
Riepilogo
Il frame della query dell'immagine ha la forma seguente sull'immagine
Lunghezza | Nome campo |
1 byte | controllo del frame |
6 byte | specifica del prodotto |
variabile | specifica della versione |
2..4 byte | elenco dei tipi di integrità |
2..5 byte | aggiorna elenco di schemi |
variabile | specifica delle impostazioni internazionali (facoltativo) |
8 byte | ID nodo target |
variabile | dati specifici del fornitore (facoltativo) |
Punta | Significato |
0 | 1 - dati specifici del fornitore presenti, 0 - non presente |
1 | 1 - specifica locale presente, 0 - non presente |
2 | 1: ID nodo di destinazione presente, 0 - non presente |
3..7 | Riservata |
Costruttori e distruttori |
|
---|---|
ImageQuery()
Costruttore predefinito per ImageQuery.
|
Attributi pubblici |
|
---|---|
integrityTypes
|
Tipi di integrità supportati dal dispositivo.
|
localeSpec
|
Una stringa UTF-8 a lunghezza variabile contenente le impostazioni internazionali POSIX in vigore sul dispositivo per il quale viene eseguita la query dell'immagine.
|
packageSpec
|
Una stringa UTF-8 a lunghezza variabile contenente una stringa delle specifiche del pacchetto specifica del fornitore.
|
productSpec
|
Specifica di prodotto che descrive il dispositivo che esegue la query sull'immagine.
|
targetNodeId
|
uint64_t
Un ID nodo facoltativo del dispositivo per il quale viene effettuata la query.
|
theMetaData
|
Il campo dei dati specifici del fornitore ha una lunghezza variabile e occupa la parte rimanente del payload dei messaggi Weave, oltre ai campi descritti in precedenza.
|
updateSchemes
|
Schemi di aggiornamento (protocolli di download) supportati dal dispositivo.
|
version
|
Una stringa UTF-8 a lunghezza variabile contenente la versione software del dispositivo per cui viene eseguita la query, specificata dal fornitore.
|
Funzioni pubbliche |
|
---|---|
init(ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData)
|
Inizializza in modo esplicito l'oggetto ImageQuery con i valori forniti.
|
operator==(const ImageQuery &) const
|
bool
Un operatore di uguaglianza.
|
pack(PacketBuffer *)
|
Serializza la query ImageQuery sottostante nel PacketBuffer fornito.
|
print(void)
|
void
|
Funzioni statiche pubbliche |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
Deserializza il messaggio di query sull'immagine fornito in un PacketBuffer in un valore ImageQuery fornito.
|
Attributi pubblici
localeSpec
ReferencedString localeSpec
Una stringa UTF-8 a lunghezza variabile contenente le impostazioni internazionali POSIX in vigore sul dispositivo per il quale viene eseguita la query dell'immagine.
I contenuti della stringa devono essere conformi al formato dell'identificatore locale POSIX, come specificato nello standard ISO/IEC 15897, ad esempio en_AU.UTF-8 per l'inglese australiano.
packageSpec
ReferencedString packageSpec
Una stringa UTF-8 a lunghezza variabile contenente una stringa delle specifiche del pacchetto specifica del fornitore.
Il contenuto del campo descrive il tipo di contenitore desiderato per l'immagine software, ad esempio "rpm", "deb", "tgz", "elf" e così via. NOTA: questo campo non è utilizzato nelle implementazioni Nest del protocollo.
productSpec
ProductSpec productSpec
Specifica di prodotto che descrive il dispositivo che esegue la query sull'immagine.
targetNodeId
uint64_t targetNodeId
Un ID nodo facoltativo del dispositivo per il quale viene effettuata la query.
Il campo ID nodo target è facoltativo. Se assente, l'ID nodo di destinazione per la query corrisponde implicitamente al nodo che è stato l'origine del messaggio di query dell'immagine.
Il campo ID nodo target viene generalmente utilizzato nelle istanze in cui il nodo origine del messaggio IMAGE QUERY funge da proxy di aggiornamento del software per un altro nodo.
theMetaData
ReferencedTLVData theMetaData
Il campo dei dati specifici del fornitore ha una lunghezza variabile e occupa la parte rimanente del payload dei messaggi Weave, oltre ai campi descritti in precedenza.
Il campo codifica le informazioni specifiche del fornitore sul dispositivo per il quale viene effettuata la query. Il campo dei dati specifici del fornitore è facoltativo. Se presente, il campo ha una forma di struttura anonima con codifica TLV. I tag presentati all'interno di questa struttura devono essere tag specifici del profilo completi.
updateSchemes
UpdateSchemeList updateSchemes
Schemi di aggiornamento (protocolli di download) supportati dal dispositivo.
versione
ReferencedString version
Una stringa UTF-8 a lunghezza variabile contenente la versione software del dispositivo per cui viene eseguita la query, specificata dal fornitore.
Deve avere una lunghezza massima di 32.
Funzioni pubbliche
ImageQuery
ImageQuery()
Costruttore predefinito per ImageQuery.
Il campo ImageQuery può essere compilato chiamando init() o deserializzando l'oggetto da un messaggio.
init
WEAVE_ERROR init( ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData )
Inizializza in modo esplicito l'oggetto ImageQuery con i valori forniti.
Dettagli | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||||
Restituisce |
WEAVE_NO_ERROR Incondizionatamente.
|
operatore==
bool operator==( const ImageQuery & ) const
Un operatore di uguaglianza.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
true se tutti i campi in entrambi gli oggetti sono uguali, false negli altri casi
|
confezione
WEAVE_ERROR pack( PacketBuffer * )
Serializza la query ImageQuery sottostante nel PacketBuffer fornito.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
stampare (a schermo)
void print( void )
Funzioni statiche pubbliche
parse
WEAVE_ERROR parse( PacketBuffer *, ImageQuery & )
Deserializza il messaggio di query sull'immagine fornito in un PacketBuffer in un valore ImageQuery fornito.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo
|
||||
Restituisce |
WEAVE_ERROR_BUFFER_TOO_Small Se il messaggio era troppo piccolo per contenere tutti i campi della query ImageQuery
|
||||
Restituisce |
WEAVE_ERROR_INVALID_LIST_LENGTH Se il messaggio conteneva un valore IntegrityTypeList o UpdateSchemeList troppo lungo
|