nl:: Weave:: Profiles:: SoftwareUpdate:: ImageQuery
#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>
Một lớp (class) hỗ trợ việc tạo và giải mã thông báo truy vấn hình ảnh.
Tóm tắt
Khung truy vấn hình ảnh có biểu mẫu sau trên dây
Độ dài | Tên trường |
1 byte | điều khiển khung hình |
6 byte | quy cách sản phẩm |
biến | thông số phiên bản |
2,4 byte | danh sách loại toàn vẹn |
2,5 byte | cập nhật danh sách lược đồ |
biến | quy cách ngôn ngữ (không bắt buộc) |
8 byte | mã nút mục tiêu |
biến | dữ liệu cụ thể của nhà cung cấp (không bắt buộc) |
Bit | Ý nghĩa |
0 | 1 – hiện diện dữ liệu dành riêng cho nhà cung cấp, 0 – không có |
1 | 1 – hiện tại thông số kỹ thuật của ngôn ngữ, 0 – không có |
2 | 1 – hiện diện mã nhận dạng nút mục tiêu, 0 – không hiện diện |
3,7 | Đã đặt chỗ |
Hàm dựng và hàm dựng |
|
---|---|
ImageQuery()
Hàm khởi tạo mặc định cho ImageQuery.
|
Thuộc tính công khai |
|
---|---|
integrityTypes
|
Các loại tính toàn vẹn mà thiết bị hỗ trợ.
|
localeSpec
|
Chuỗi UTF-8 có độ dài thay đổi chứa ngôn ngữ POSIX có hiệu lực trên thiết bị mà truy vấn hình ảnh được thực hiện.
|
packageSpec
|
Chuỗi UTF-8 có độ dài thay đổi chứa chuỗi thông số kỹ thuật của gói dành riêng cho nhà cung cấp.
|
productSpec
|
Thông số sản phẩm mô tả thiết bị đang tạo truy vấn hình ảnh.
|
targetNodeId
|
uint64_t
Mã nút không bắt buộc của thiết bị đang thực hiện truy vấn.
|
theMetaData
|
Trường dữ liệu dành riêng cho nhà cung cấp có độ dài thay đổi và chiếm phần còn lại của trọng tải tin nhắn Weave, ngoài các trường được mô tả ở trên.
|
updateSchemes
|
Lược đồ cập nhật (giao thức tải xuống) được thiết bị hỗ trợ.
|
version
|
Chuỗi UTF-8 có độ dài thay đổi chứa phiên bản phần mềm do nhà cung cấp chỉ định của thiết bị mà truy vấn được thực hiện.
|
Hàm công khai |
|
---|---|
init(ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData)
|
Khởi tạo đối tượng ImageQuery một cách rõ ràng bằng các giá trị được cung cấp.
|
operator==(const ImageQuery &) const
|
bool
Toán tử bằng.
|
pack(PacketBuffer *)
|
Tuần tự hoá ImageQuery cơ bản thành Gói PackBBer được cung cấp.
|
print(void)
|
void
|
Hàm tĩnh công khai |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
Giải tuần tự thông báo truy vấn hình ảnh được cung cấp trong PacketBuffer thành một ImageQuery được cung cấp.
|
Thuộc tính công khai
SpecSpec
ReferencedString localeSpec
Chuỗi UTF-8 có độ dài thay đổi chứa ngôn ngữ POSIX có hiệu lực trên thiết bị mà truy vấn hình ảnh được thực hiện.
Nội dung của chuỗi phải tuân theo định dạng mã nhận dạng ngôn ngữ POSIX, như được chỉ định trong ISO/IEC 15897, ví dụ: en_AU.UTF-8 cho tiếng Anh (Úc).
packageSpec
ReferencedString packageSpec
Chuỗi UTF-8 có độ dài thay đổi chứa chuỗi thông số kỹ thuật của gói dành riêng cho nhà cung cấp.
Nội dung của trường mô tả loại vùng chứa mong muốn cho hình ảnh phần mềm, chẳng hạn như "rpm", "deb", "tgz", "elf", v.v. (LƯU Ý: Trường này không được dùng trong quá trình triển khai Nest theo giao thức)
thông số sản phẩm
ProductSpec productSpec
Thông số sản phẩm mô tả thiết bị đang tạo truy vấn hình ảnh.
targetNodeId
uint64_t targetNodeId
Mã nút không bắt buộc của thiết bị đang thực hiện truy vấn.
Trường mã nút mục tiêu là không bắt buộc. Nếu không có nút này, thì mã của nút mục tiêu cho truy vấn sẽ ngầm là nút nguồn của thông báo truy vấn hình ảnh.
Trường mã nhận dạng nút mục tiêu thường được sử dụng trong các trường hợp nút là nguồn của thông báo HÌNH ẢNH DỮ LIỆU HÌNH ẢNH TRỰC TIẾP đang đóng vai trò là proxy cập nhật phần mềm cho một nút khác.
Siêu dữ liệu
ReferencedTLVData theMetaData
Trường dữ liệu dành riêng cho nhà cung cấp có độ dài thay đổi và chiếm phần còn lại của trọng tải tin nhắn Weave, ngoài các trường được mô tả ở trên.
Trường này mã hóa thông tin của nhà cung cấp cụ thể về thiết bị đang được thực hiện truy vấn. Trường dữ liệu dành riêng cho nhà cung cấp là không bắt buộc. Nếu có, trường này có dạng cấu trúc được mã hóa TLV ẩn danh. Các thẻ được trình bày trong cấu trúc này sẽ là các thẻ dành riêng cho hồ sơ đủ điều kiện.
updateSchemes
UpdateSchemeList updateSchemes
Lược đồ cập nhật (giao thức tải xuống) được thiết bị hỗ trợ.
phiên bản
ReferencedString version
Chuỗi UTF-8 có độ dài thay đổi chứa phiên bản phần mềm do nhà cung cấp chỉ định của thiết bị mà truy vấn được thực hiện.
Phải có độ dài từ 32 trở xuống.
Hàm công khai
Truy vấn hình ảnh
ImageQuery()
Hàm khởi tạo mặc định cho ImageQuery.
Có thể điền sẵn ImageQuery bằng cách gọi init() hoặc bằng cách hủy tuần tự hoá đối tượng từ một thông báo.
khởi đầu
WEAVE_ERROR init( ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData )
Khởi tạo đối tượng ImageQuery một cách rõ ràng bằng các giá trị được cung cấp.
Thông tin chi tiết | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||||||||
Trả về |
WEAVE_NO_ERROR Vô điều kiện.
|
toán tử=
bool operator==( const ImageQuery & ) const
Toán tử bằng.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
true nếu tất cả các trường trong cả hai đối tượng bằng nhau, false nếu không
|
gói
WEAVE_ERROR pack( PacketBuffer * )
Tuần tự hoá ImageQuery cơ bản thành Gói PackBBer được cung cấp.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
in
void print( void )
Hàm tĩnh công khai
phân tích cú pháp
WEAVE_ERROR parse( PacketBuffer *, ImageQuery & )
Giải tuần tự thông báo truy vấn hình ảnh được cung cấp trong PacketBuffer thành một ImageQuery được cung cấp.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Trả về |
WEAVE_NO_ERROR Thành công
|
||||
Trả về |
WEAVE_ERROR_BUFFER_TOO_SMALL Nếu thông báo quá nhỏ để chứa tất cả các trường của ImageQuery
|
||||
Trả về |
WEAVE_ERROR_INVALID_LIST_LENGTH Nếu thông báo chứa IntegrityTypeList hoặc UpdateSchemeList quá dài
|