nl:: Weave:: Profiles:: SoftwareUpdate:: ImageQuery
#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>
Classe permettant de créer et de décoder des messages de requête d'image.
Résumé
Le cadre de requête d'image se présente comme suit sur le fil :
Longueur | Nom du champ |
1 octet | contrôle du cadre |
6 octets | spécifications du produit |
variable | spécification de version |
2,4 octets | liste des types d'intégrité |
2,5 octets | mettre à jour la liste des schémas |
variable | Spécification des paramètres régionaux (facultatif) |
8 octets | ID du nœud cible |
variable | données spécifiques au fournisseur (facultatif) |
Bit | Signification |
0 | 1 - données spécifiques au fournisseur présentes, 0 - absente |
1 | 1 - spécification des paramètres régionaux présente, 0 - absent |
2 | 1 - ID du nœud cible présent, 0 - absent |
3..7 | Réservé |
Constructeurs et destructeurs |
|
---|---|
ImageQuery()
Constructeur par défaut pour ImageQuery.
|
Attributs publics |
|
---|---|
integrityTypes
|
Types d'intégrité compatibles avec l'appareil.
|
localeSpec
|
Chaîne UTF-8 de longueur variable contenant les paramètres régionaux POSIX en vigueur sur l'appareil pour lequel la requête d'image est effectuée.
|
packageSpec
|
Chaîne UTF-8 de longueur variable contenant une chaîne de spécification de package spécifique au fournisseur.
|
productSpec
|
Spécifications produit décrivant l'appareil qui effectue la requête d'image.
|
targetNodeId
|
uint64_t
ID de nœud facultatif de l'appareil pour lequel la requête est effectuée.
|
theMetaData
|
Le champ de données spécifique au fournisseur est de longueur variable et occupe le reste de la charge utile du message Weave, au-delà des champs décrits ci-dessus.
|
updateSchemes
|
Schémas de mise à jour (protocoles de téléchargement) compatibles avec l'appareil
|
version
|
Chaîne UTF-8 de longueur variable contenant la version logicielle spécifiée par le fournisseur de l'appareil pour lequel la requête est effectuée.
|
Fonctions publiques |
|
---|---|
init(ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData)
|
Initialisez explicitement l'objet ImageQuery avec les valeurs fournies.
|
operator==(const ImageQuery &) const
|
bool
Opérateur d'égalité.
|
pack(PacketBuffer *)
|
Sérialise la requête ImageQuery sous-jacente dans le PaquetBuffer fourni.
|
print(void)
|
void
|
Fonctions statiques publiques |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
Désérialiser le message de requête d'image fourni dans un PaquetBuffer en un objet ImageQuery fourni
|
Attributs publics
localeSpec
ReferencedString localeSpec
Chaîne UTF-8 de longueur variable contenant les paramètres régionaux POSIX en vigueur sur l'appareil pour lequel la requête d'image est effectuée.
Le contenu de la chaîne doit respecter le format d'identifiant des paramètres régionaux POSIX, tel que spécifié dans la norme ISO/IEC 15897 (par exemple, en_AU.UTF-8 pour l'anglais australien.)
packageSpec
ReferencedString packageSpec
Chaîne UTF-8 de longueur variable contenant une chaîne de spécification de package spécifique au fournisseur.
Le contenu du champ décrit le type de conteneur souhaité pour l'image du logiciel, par exemple "rpm", "deb", "tgz", "elf", etc. (REMARQUE: ce champ n'est pas utilisé dans les implémentations Nest du protocole.)
productSpec
ProductSpec productSpec
Spécifications produit décrivant l'appareil qui effectue la requête d'image.
targetNodeId
uint64_t targetNodeId
ID de nœud facultatif de l'appareil pour lequel la requête est effectuée.
Le champ d'ID du nœud cible est facultatif. S'il est absent, l'ID de nœud cible de la requête est implicitement le nœud qui était la source du message de requête d'image.
Le champ d'ID de nœud cible est généralement utilisé dans les cas où le nœud qui est la source du message IMAGE QUERY sert de proxy de mise à jour logicielle pour un autre nœud.
theMetaData
ReferencedTLVData theMetaData
Le champ de données spécifique au fournisseur est de longueur variable et occupe le reste de la charge utile du message Weave, au-delà des champs décrits ci-dessus.
Le champ encode les informations spécifiques au fournisseur concernant l'appareil pour lequel la requête est effectuée. Le champ de données spécifiques au fournisseur est facultatif. S'il est présent, le champ présente une forme de structure anonyme encodée en TLV. Les balises présentées dans cette structure doivent être des balises complètes et spécifiques au profil.
updateSchemes
UpdateSchemeList updateSchemes
Schémas de mise à jour (protocoles de téléchargement) compatibles avec l'appareil
version
ReferencedString version
Chaîne UTF-8 de longueur variable contenant la version logicielle spécifiée par le fournisseur de l'appareil pour lequel la requête est effectuée.
Il ne doit pas dépasser 32 caractères.
Fonctions publiques
ImageQuery
ImageQuery()
Constructeur par défaut pour ImageQuery.
La valeur ImageQuery peut être renseignée en appelant init() ou en désérialisant l'objet à partir d'un message.
init
WEAVE_ERROR init( ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData )
Initialisez explicitement l'objet ImageQuery avec les valeurs fournies.
Détails | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||||||
Renvoie |
WEAVE_NO_ERROR sans condition.
|
opérateur==
bool operator==( const ImageQuery & ) const
Opérateur d'égalité.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
"true" si tous les champs des deux objets sont égaux, "false" dans le cas contraire
|
pack
WEAVE_ERROR pack( PacketBuffer * )
Sérialise la requête ImageQuery sous-jacente dans le PaquetBuffer fourni.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Valeurs de retour |
|
presse
void print( void )
Fonctions statiques publiques
parse
WEAVE_ERROR parse( PacketBuffer *, ImageQuery & )
Désérialiser le message de requête d'image fourni dans un PaquetBuffer en un objet ImageQuery fourni
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite
|
||||
Renvoie |
WEAVE_ERROR_BUFFER_TOO_Small Si le message est trop petit pour contenir tous les champs d'ImageQuery
|
||||
Renvoie |
WEAVE_ERROR_INVALID_LIST_LENGTH Si le message contenait une liste IntegrityTypeList ou une UpdateSchemeList trop longue
|