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 sulle immagini.
Riepilogo
Il frame di query sull'immagine ha il seguente formato sulla rete
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 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 target presente, 0 - non presente |
3,.7 | Prenotato |
Costruttori e distruttori |
|
---|---|
ImageQuery()
Costruttore predefinito per ImageQuery.
|
Attributi pubblici |
|
---|---|
integrityTypes
|
Tipi di integrità supportati dal dispositivo.
|
localeSpec
|
Una stringa UTF-8 di lunghezza variabile contenente le impostazioni internazionali POSIX attiva sul dispositivo per cui viene effettuata la query sull'immagine.
|
packageSpec
|
Una stringa UTF-8 di lunghezza variabile contenente una stringa di specifiche del pacchetto specifico del fornitore.
|
productSpec
|
Specifica del prodotto che descrive il dispositivo che esegue la query sull'immagine.
|
targetNodeId
|
uint64_t
Un ID nodo facoltativo del dispositivo per cui viene eseguita la query.
|
theMetaData
|
Il campo dei dati specifici del fornitore ha una lunghezza variabile e occupa la parte restante del payload di Weave, oltre i campi descritti sopra.
|
updateSchemes
|
Schemi di aggiornamento (protocolli di download) supportati dal dispositivo.
|
version
|
Una stringa UTF-8 di lunghezza variabile contenente la versione software specificata dal fornitore del dispositivo per cui viene effettuata la query.
|
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 l'elemento ImageQuery sottostante nel PacketBuffer fornito.
|
print(void)
|
void
|
Funzioni statiche pubbliche |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
Deserializza il messaggio di query dell'immagine fornito in un PacketBuffer in un elemento ImageQuery fornito.
|
Attributi pubblici
localeSpec
ReferencedString localeSpec
Una stringa UTF-8 di lunghezza variabile contenente le impostazioni internazionali POSIX attiva sul dispositivo per cui viene effettuata la query sull'immagine.
I contenuti della stringa devono essere conformi al formato degli identificatori internazionali 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 di lunghezza variabile contenente una stringa di specifiche del pacchetto specifico del fornitore.
I contenuti del campo descrivono 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 del prodotto che descrive il dispositivo che esegue la query sull'immagine.
targetNodeId
uint64_t targetNodeId
Un ID nodo facoltativo del dispositivo per cui viene eseguita la query.
Il campo ID nodo target è facoltativo. Se non è presente, l'ID del nodo target per la query corrisponde implicitamente al nodo che era l'origine del messaggio di query dell'immagine.
Il campo ID nodo target viene solitamente utilizzato in istanze in cui il nodo che ha origine del messaggio QUERY IMAGE serve da proxy di aggiornamento software per un altro nodo.
theMetaData
ReferencedTLVData theMetaData
Il campo dei dati specifici del fornitore ha una lunghezza variabile e occupa la parte restante del payload di Weave, oltre i campi descritti sopra.
Il campo codifica le informazioni specifiche del fornitore sul dispositivo per cui 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 completi e specifici del profilo.
updateSchemes
UpdateSchemeList updateSchemes
Schemi di aggiornamento (protocolli di download) supportati dal dispositivo.
versione
ReferencedString version
Una stringa UTF-8 di lunghezza variabile contenente la versione software specificata dal fornitore del dispositivo per cui viene effettuata la query.
Deve essere di massimo 32 caratteri.
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 in caso contrario
|
confezione
WEAVE_ERROR pack( PacketBuffer * )
Serializza l'elemento 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 dell'immagine fornito in un PacketBuffer in un elemento ImageQuery fornito.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine
|
||||
Restituisce |
WEAVE_ERROR_BUFFER_TOO_Small Se il messaggio era troppo piccolo per contenere tutti i campi della colonna ImageQuery
|
||||
Restituisce |
WEAVE_ERROR_INVALID_LIST_LENGTH Se il messaggio conteneva un valore IntegrityTypeList o UpdateSchemeList troppo lungo
|