nl:: Weave:: Profiles:: SoftwareUpdate:: ImageQuery
#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>
Class untuk mendukung pembuatan dan decoding pesan kueri gambar.
Ringkasan
{i>Frame<i} kueri gambar memiliki bentuk berikut di atas kabel
Durasi | Nama Kolom |
1 byte | kontrol frame |
6 byte | spesifikasi produk |
variabel | spesifikasi versi |
2,.4 byte | daftar jenis integritas |
2,.5 byte | perbarui daftar skema |
variabel | spesifikasi lokalitas (opsional) |
8 byte | ID node target |
variabel | data khusus vendor (opsional) |
Bit | Arti |
0 | 1 - ada data khusus vendor, 0 - tidak ada |
1 | 1 - spesifikasi lokal ada, 0 - tidak ada |
2 | 1 - ID node target ada, 0 - tidak ada |
3..7 | Dengan fungsi khusus |
Konstruktor dan Destruktor |
|
---|---|
ImageQuery()
Konstruktor default untuk ImageQuery.
|
Atribut publik |
|
---|---|
integrityTypes
|
Jenis integritas yang didukung oleh perangkat.
|
localeSpec
|
String UTF-8 dengan panjang variabel yang berisi lokalitas POSIX yang berlaku pada perangkat yang kueri gambarnya dibuat.
|
packageSpec
|
String UTF-8 dengan panjang variabel yang berisi string spesifikasi paket khusus vendor.
|
productSpec
|
Spesifikasi produk yang menjelaskan perangkat yang membuat kueri gambar.
|
targetNodeId
|
uint64_t
ID node opsional perangkat yang kuerinya sedang dibuat.
|
theMetaData
|
Kolom data khusus vendor memiliki panjang bervariasi dan menempati sisa payload pesan Weave, di luar kolom yang dijelaskan di atas.
|
updateSchemes
|
Skema update (protokol download) yang didukung oleh perangkat.
|
version
|
String UTF-8 dengan panjang variabel yang berisi versi software yang ditentukan vendor dari perangkat yang kuerinya dibuat.
|
Fungsi publik |
|
---|---|
init(ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData)
|
Lakukan inisialisasi objek ImageQuery secara eksplisit dengan nilai yang diberikan.
|
operator==(const ImageQuery &) const
|
bool
Operator kesetaraan.
|
pack(PacketBuffer *)
|
Lakukan serialisasi ImageQuery yang mendasarinya ke dalam PacketBuffer yang disediakan.
|
print(void)
|
void
|
Fungsi statis publik |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
Melakukan deserialisasi pesan kueri gambar yang disediakan di PacketBuffer ke dalam ImageQuery yang disediakan.
|
Atribut publik
localeSpec
ReferencedString localeSpec
String UTF-8 dengan panjang variabel yang berisi lokalitas POSIX yang berlaku pada perangkat yang kueri gambarnya dibuat.
Konten string harus sesuai dengan format ID lokalitas POSIX, seperti yang ditentukan dalam ISO/IEC 15897, misalnya en_AU.UTF-8 untuk bahasa Inggris Australia.
packageSpec
ReferencedString packageSpec
String UTF-8 dengan panjang variabel yang berisi string spesifikasi paket khusus vendor.
Konten kolom menjelaskan jenis penampung yang diinginkan untuk image software, seperti 'rpm', 'deb', 'tgz', 'elf', dll. (CATATAN: Kolom ini tidak digunakan dalam implementasi protokol Nest)
productSpec
ProductSpec productSpec
Spesifikasi produk yang menjelaskan perangkat yang membuat kueri gambar.
targetNodeId
uint64_t targetNodeId
ID node opsional perangkat yang kuerinya sedang dibuat.
Kolom ID node target bersifat opsional. Jika tidak ada, ID node target untuk kueri secara implisit adalah node yang merupakan sumber pesan kueri gambar.
Kolom ID node target biasanya digunakan jika node yang merupakan sumber pesan IMAGE QUERY berfungsi sebagai proxy update software untuk node lain.
theMetaData
ReferencedTLVData theMetaData
Kolom data khusus vendor memiliki panjang bervariasi dan menempati sisa payload pesan Weave, di luar kolom yang dijelaskan di atas.
Kolom mengenkode informasi khusus vendor tentang perangkat yang kuerinya dibuat. Kolom data khusus vendor bersifat opsional. Jika ada, kolom memiliki bentuk struktur berenkode TLV anonim. Tag yang disajikan dalam struktur ini harus sepenuhnya memenuhi syarat tag khusus profil.
updateSchemes
UpdateSchemeList updateSchemes
Skema update (protokol download) yang didukung oleh perangkat.
versi
ReferencedString version
String UTF-8 dengan panjang variabel yang berisi versi software yang ditentukan vendor dari perangkat yang kuerinya dibuat.
Harus berukuran 32 atau lebih kecil.
Fungsi publik
ImageQuery
ImageQuery()
Konstruktor default untuk ImageQuery.
ImageQuery dapat diisi dengan memanggil init() atau dengan melakukan deserialisasi objek dari pesan.
init
WEAVE_ERROR init( ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData )
Lakukan inisialisasi objek ImageQuery secara eksplisit dengan nilai yang diberikan.
Detail | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||||||
Hasil |
WEAVE_NO_ERROR Tanpa syarat.
|
operator==
bool operator==( const ImageQuery & ) const
Operator kesetaraan.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
benar jika semua kolom di kedua objek sama, salah jika tidak
|
pak
WEAVE_ERROR pack( PacketBuffer * )
Lakukan serialisasi ImageQuery yang mendasarinya ke dalam PacketBuffer yang disediakan.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Nilai Pengembalian |
|
cetak
void print( void )
Fungsi statis publik
parse
WEAVE_ERROR parse( PacketBuffer *, ImageQuery & )
Melakukan deserialisasi pesan kueri gambar yang disediakan di PacketBuffer ke dalam ImageQuery yang disediakan.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Hasil |
WEAVE_NO_ERROR Saat berhasil
|
||||
Hasil |
WEAVE_ERROR_BUFFER_TOO_SMALL Jika pesan terlalu kecil untuk memuat semua kolom ImageQuery
|
||||
Hasil |
WEAVE_ERROR_INVALID_LIST_LENGTH Jika pesan berisi IntegrityTypeList atau UpdateSchemeList yang terlalu panjang
|