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 | Frame Control |
6 octets | spécifications du produit |
variable | spécification de la 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) |
Foret | Signification |
0 | 1 - données spécifiques au fournisseur présentes, 0 - absentes |
1 | 1 : spécification des paramètres régionaux présente, 0 : absente |
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écification du produit décrivant l'appareil à l'origine de la requête d'image.
|
targetNodeId
|
uint64_t
Identifiant 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érialisez l'objet ImageQuery sous-jacent dans le PacketBuffer fourni.
|
print(void)
|
void
|
Fonctions statiques publiques |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
Désérialiser le message de requête d'image fourni dans un PacketBuffer dans une classe ImageQuery fournie.
|
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 de l'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 logicielle, tel que "rpm", "deb", "tgz", "elf", etc. (REMARQUE: ce champ n'est pas utilisé dans les implémentations Nest du protocole)
productSpec
ProductSpec productSpec
Spécification du produit décrivant l'appareil à l'origine de la requête d'image.
targetNodeId
uint64_t targetNodeId
Identifiant de nœud facultatif de l'appareil pour lequel la requête est effectuée.
Le champ "ID du nœud cible" est facultatif. S'il est absent, l'ID du 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 du nœud cible est généralement utilisé dans les instances 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 propres au fournisseur est facultatif. S'il est présent, le champ présente une structure anonyme encodée au format TLV. Les tags présentés dans cette structure doivent être des tags complets 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 classe 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érialisez l'objet ImageQuery sous-jacent dans le PacketBuffer fourni.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Valeurs renvoyées |
|
imprimer
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 PacketBuffer dans une classe ImageQuery fournie.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
WEAVE_NO_ERROR En cas de réussite
|
||||
Renvoie |
WEAVE_ERROR_BUFFER_TOO_Small. Si le message était trop petit pour contenir tous les champs de la classe ImageQuery
|
||||
Renvoie |
WEAVE_ERROR_INVALID_LIST_LENGTH : si le message contenait une liste IntegrityTypeList ou UpdateSchemeList trop longue
|