nl:: Weave:: Profiles:: SoftwareUpdate:: ImageQuery
#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>
Klasa do tworzenia i dekodowania wiadomości zapytań dotyczących obrazów.
Podsumowanie
Ramka zapytania o obraz ma na przewód ten format
Długość | Nazwa pola |
1 bajt | sterowanie ramkami |
6 bajtów | specyfikacja produktu |
zmienna | specyfikacja wersji |
2,4 bajtów | lista typów integralności |
2,5 bajtu | zaktualizuj listę schematów |
zmienna | specyfikacja języka (opcjonalnie) |
8 bajtów | identyfikator węzła docelowego |
zmienna | dane dotyczące dostawcy (opcjonalnie) |
Końcówka | Znaczenie |
0 | 1 – dostępne dane dotyczące konkretnego dostawcy, 0 – brak |
1 | 1 – podano specyfikację języka, 0 – brak |
2 | 1 – podano identyfikator węzła docelowego, 0 – nie występuje |
3..7 | Zarezerwowano |
Konstruktorzy i niszczyciele |
|
---|---|
ImageQuery()
Domyślny konstruktor dla ImageQuery.
|
Atrybuty publiczne |
|
---|---|
integrityTypes
|
Typy integralności obsługiwane przez urządzenie.
|
localeSpec
|
Ciąg znaków UTF-8 o zmiennej długości zawierający język POSIX obowiązujący na urządzeniu, w przypadku którego wysyła się zapytanie dotyczące obrazu.
|
packageSpec
|
Ciąg znaków UTF-8 o zmiennej długości zawierający ciąg specyfikacji pakietu konkretnego dostawcy.
|
productSpec
|
Specyfikacja produktu opisująca urządzenie, które wysyła zapytanie o grafikę.
|
targetNodeId
|
uint64_t
Opcjonalny identyfikator węzła urządzenia, dla którego tworzysz zapytanie.
|
theMetaData
|
Pole danych konkretnego dostawcy ma zmienną długości i zajmuje pozostałą część ładunku wiadomości Weave poza polami opisanymi powyżej.
|
updateSchemes
|
Zaktualizuj schematy (protokoły pobierania) obsługiwane przez urządzenie.
|
version
|
Ciąg znaków UTF-8 o zmiennej długości zawierający określoną przez dostawcę wersję oprogramowania urządzenia, dla którego tworzone jest zapytanie.
|
Funkcje publiczne |
|
---|---|
init(ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData)
|
Jawnie zainicjuj obiekt ImageQuery za pomocą podanych wartości.
|
operator==(const ImageQuery &) const
|
bool
Operator równości.
|
pack(PacketBuffer *)
|
Zserializuj podstawowe zapytanie ImageQuery w udostępnionym buforze pakietów.
|
print(void)
|
void
|
Publiczne funkcje statyczne |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
Deserializuj wiadomość zapytania o obraz przesłaną w PacketBuffer do pliku ImageQuery.
|
Atrybuty publiczne
localeSpec
ReferencedString localeSpec
Ciąg znaków UTF-8 o zmiennej długości zawierający język POSIX obowiązujący na urządzeniu, w przypadku którego wysyła się zapytanie dotyczące obrazu.
Zawartość ciągu musi być zgodna z formatem identyfikatora języka POSIX zgodnym z normą ISO/IEC 15897, np. en_AU.UTF-8 w przypadku australijskiego angielskiego.
packageSpec
ReferencedString packageSpec
Ciąg znaków UTF-8 o zmiennej długości zawierający ciąg specyfikacji pakietu konkretnego dostawcy.
Zawartość tego pola zawiera opis odpowiedniego typu kontenera do obrazu oprogramowania, np. „rpm”, „deb”, „tgz”, „elf” itp. (UWAGA: to pole nie jest używane w implementacjach Nest tego protokołu).
productSpec
ProductSpec productSpec
Specyfikacja produktu opisująca urządzenie, które wysyła zapytanie o grafikę.
targetNodeId
uint64_t targetNodeId
Opcjonalny identyfikator węzła urządzenia, dla którego tworzysz zapytanie.
Pole identyfikatora węzła docelowego jest opcjonalne. Jeśli go brak, identyfikator węzła docelowego dla zapytania jest domyślnie węzłem, który był źródłem wiadomości dotyczącej zapytania dotyczącego obrazu.
Pole identyfikatora węzła docelowego jest zwykle używane w przypadkach, gdy węzeł, który jest źródłem wiadomości ZAPYTANIE ZDJĘCIA, działa jako serwer proxy aktualizacji oprogramowania dla innego węzła.
theMetaData
ReferencedTLVData theMetaData
Pole danych konkretnego dostawcy ma zmienną długości i zajmuje pozostałą część ładunku wiadomości Weave poza polami opisanymi powyżej.
To pole zawiera informacje specyficzne dla dostawcy o urządzeniu, dla którego tworzysz zapytanie. Pole danych dostawcy jest opcjonalne. Jeśli pole jest obecne, ma postać anonimowej struktury zakodowanej w formacie TLV. Tagi prezentowane w tej strukturze są w pełni dokładnymi tagami specyficznymi dla danego profilu.
updateSchemes
UpdateSchemeList updateSchemes
Zaktualizuj schematy (protokoły pobierania) obsługiwane przez urządzenie.
Wersja
ReferencedString version
Ciąg znaków UTF-8 o zmiennej długości zawierający określoną przez dostawcę wersję oprogramowania urządzenia, dla którego tworzone jest zapytanie.
Długość nie może przekraczać 32 znaków.
Funkcje publiczne
ImageQuery
ImageQuery()
Domyślny konstruktor dla ImageQuery.
Zapytanie ImageQuery może być wypełniane przez wywołanie init() lub przez deserializację obiektu z wiadomości.
init
WEAVE_ERROR init( ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData )
Jawnie zainicjuj obiekt ImageQuery za pomocą podanych wartości.
Szczegóły | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||||||||
Zwroty |
WEAVE_NO_ERROR bezwarunkowo.
|
operator==
bool operator==( const ImageQuery & ) const
Operator równości.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
prawda, jeśli wszystkie pola w obu obiektach są równe, lub fałsz w przeciwnym razie
|
paczka
WEAVE_ERROR pack( PacketBuffer * )
Zserializuj podstawowe zapytanie ImageQuery w udostępnionym buforze pakietów.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
wyświetlić
void print( void )
Publiczne funkcje statyczne
parse
WEAVE_ERROR parse( PacketBuffer *, ImageQuery & )
Deserializuj wiadomość zapytania o obraz przesłaną w PacketBuffer do pliku ImageQuery.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
WEAVE_NO_ERROR Po pomyślnym zakończeniu
|
||||
Zwroty |
WEAVE_ERROR_BUFFER_TOO_SMALL Jeśli wiadomość jest zbyt mała, aby zmieściła się we wszystkich polach ImageQuery
|
||||
Zwroty |
WEAVE_ERROR_Nieprawidłowe_LIST_LENGTH – jeśli wiadomość zawierała za długi element IntegrityTypeList lub UpdateSchemeList.
|