Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.

nl::Weave::Profiles::SoftwareUpdate::ImageQueryResponse

#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>

Một lớp hỗ trợ việc tạo và giải mã thông báo phản hồi truy vấn hình ảnh.

Tóm tắt

Thông báo phản hồi truy vấn hình ảnh có dạng:

Thời gian sử dụng Tên trường
biến thiên URI
biến thiên Thông số kỹ thuật của phiên bản
biến thiên Quy cách về tính toàn vẹn
1 byte Cập nhật lược đồ
1 byte Tùy chọn cập nhật
Định dạng của trường tùy chọn cập nhật (không bắt buộc) như sau:

Lưỡi câu Ý nghĩa
0,02 Cập nhật mức độ ưu tiên
3,4 Cập nhật điều kiện
5 Trạng thái báo cáo. Khi được đặt, ứng dụng sẽ được yêu cầu tạo thông báo Tải xuống thông báo và Cập nhật thông báo tùy chọn.
5,7 Đã đặt chỗ
Phản hồi truy vấn hình ảnh chỉ được gửi trong trường hợp truy vấn hình ảnh được xử lý thành công và tạo ra một hình ảnh để tải xuống. Thông báo này tạo thành các hướng dẫn tải xuống cho nút mà truy vấn gửi. Xin lưu ý rằng trong trường hợp máy chủ không xử lý được truy vấn hình ảnh, máy chủ sẽ tạo trạng thái truy vấn hình ảnh.

Hàm dựng và hàm phá hủy

ImageQueryResponse()
Hàm dựng mặc định cho ImageQueryResponse.

Thuộc tính công khai

integritySpec
Một trường chứa thông tin về tính toàn vẹn (loại tính toàn vẹn và hàm băm) cho hình ảnh cập nhật phần mềm.
reportStatus
bool
Yêu cầu thông báo cho máy chủ về tiến trình cập nhật phần mềm qua các thông báo tùy chọn Tải xuống thông báo và Thông báo cập nhật.
updateCondition
Hướng dẫn về điều kiện mà tiến hành cập nhật phần mềm.
updatePriority
Hướng dẫn hướng dẫn thiết bị thời điểm thực hiện cập nhật phần mềm.
updateScheme
uint8_t
Lược đồ cập nhật sẽ được dùng để tải hình ảnh cập nhật phần mềm xuống.
uri
Một chuỗi UTF-8 có độ dài biến đổi chứa vị trí của hình ảnh phần mềm.
versionSpec
Chuỗi UTF-8 có độ dài biến đổi chứa thông tin nhận dạng phiên bản phần mềm dành riêng cho nhà cung cấp.

Hàm công khai

init(ReferencedString &, ReferencedString &, IntegritySpec &, uint8_t, UpdatePriority, UpdateCondition, bool)
Khởi tạo đối tượng ImageQueryResponse một cách rõ ràng với các giá trị đã cho.
operator==(const ImageQueryResponse &) const
bool
Toán tử bằng.
pack(PacketBuffer *)
Sắp xếp tuần tự ImageQueryResponse vào gói PacketBuffer đã cung cấp.
print(void)
void

Hàm tĩnh công khai

parse(PacketBuffer *, ImageQueryResponse &)
Giải mã thông báo phản hồi truy vấn hình ảnh được cung cấp trong một PacketBuffer thành một ImageQueryResponse được cung cấp.

Thuộc tính công khai

Tính toàn vẹn

IntegritySpec integritySpec

Một trường chứa thông tin về tính toàn vẹn (loại tính toàn vẹn và hàm băm) cho hình ảnh cập nhật phần mềm.

trạng thái báo cáo

bool reportStatus

Yêu cầu thông báo cho máy chủ về tiến trình cập nhật phần mềm qua các thông báo tùy chọn Tải xuống thông báo và Thông báo cập nhật.

updateCondition

UpdateCondition updateCondition

Hướng dẫn về điều kiện mà tiến hành cập nhật phần mềm.

updateƯu tiên

UpdatePriority updatePriority

Hướng dẫn hướng dẫn thiết bị thời điểm thực hiện cập nhật phần mềm.

cập nhậtScheme

uint8_t updateScheme

Lược đồ cập nhật sẽ được dùng để tải hình ảnh cập nhật phần mềm xuống.

Giá trị của thông số này được lấy từ UpdateSchemes.

uri

ReferencedString uri

Một chuỗi UTF-8 có độ dài biến đổi chứa vị trí của hình ảnh phần mềm.

Nội dung của chuỗi này phải tuân thủ thông số kỹ thuật RFC 3986. Đối với các lược đồ cập nhật tương ứng với một Giao thức Internet (HTTP, HTTPS, SFTP) đã xác định rõ, phần tử lược đồ của URI PHẢI tuân theo phương thức mã hoá URL chính tắc của giao thức đó. Độ dài chuỗi không được vượt quá 65565 và chuỗi phải nằm trong một thông báo Weave, có thể phải tuân theo giới hạn MTU.

versionSpec

ReferencedString versionSpec

Chuỗi UTF-8 có độ dài biến đổi chứa thông tin nhận dạng phiên bản phần mềm dành riêng cho nhà cung cấp.

Độ dài chuỗi không được vượt quá 256 byte.

Hàm công khai

Phản hồi hình ảnh

 ImageQueryResponse()

Hàm dựng mặc định cho ImageQueryResponse.

ImageQueryResponse có thể được điền bằng phương thức init() hoặc bằng cách tái thiết đối tượng từ một thông báo.

bắt đầu

WEAVE_ERROR init(
  ReferencedString &,
  ReferencedString &,
  IntegritySpec &,
  uint8_t,
  UpdatePriority,
  UpdateCondition,
  bool
)

Khởi tạo đối tượng ImageQueryResponse một cách rõ ràng với các giá trị đã cho.

Thông tin chi tiết
Các thông số
[in] aUri
URI tìm thấy hình ảnh chương trình cơ sở mới.
[in] aVersion
Chuỗi phiên bản cho hình ảnh này.
[in] aIntegrity
Thông số về tính toàn vẹn tương ứng với hình ảnh mới.
[in] aScheme
Lược đồ cập nhật sẽ dùng để tải xuống.
[in] aPriority
Ưu tiên cập nhật liên quan đến bản cập nhật này.
[in] aCondition
Điều kiện mà bạn cần cập nhật.
[in] aReportStatus
Nếu có yêu cầu đúng thì khách hàng sẽ báo cáo sau khi tải xuống và cập nhật, nếu không thì khách hàng sẽ không báo cáo.
Trả về
WEAVE_NO_ERROR Vô điều kiện.

toán tử==

bool operator==(
  const ImageQueryResponse &
) const 

Toán tử bằng.

Thông tin chi tiết
Các thông số
another
Một ImageQueryResponse để kiểm tra ImageQueryResponse này
Trả về
true nếu tất cả các trường trong cả hai đối tượng đều bằng nhau, false nếu không

gói

WEAVE_ERROR pack(
  PacketBuffer *
)

Sắp xếp tuần tự ImageQueryResponse vào gói PacketBuffer đã cung cấp.

Thông tin chi tiết
Các thông số
[in] aBuffer
Vùng đệm gói để đóng gói phản hồi truy vấn
Giá trị trả về
WEAVE_NO_ERROR
Thành công!
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu ImageQueryResponse quá lớn để vừa với bộ đệm đã cung cấp.

in

void print(
  void
)

Hàm tĩnh công khai

phân tích cú pháp

WEAVE_ERROR parse(
  PacketBuffer *,
  ImageQueryResponse &
)

Giải mã thông báo phản hồi truy vấn hình ảnh được cung cấp trong một PacketBuffer thành một ImageQueryResponse được cung cấp.

Thông tin chi tiết
Các thông số
[in] aBuffer
Con trỏ đến gói mà từ đó phân tích cú pháp truy vấn hình ảnh
[in] aResponse
Đối tượng mà bạn cần đặt kết quả
Trả về
WEAVE_NO_ERROR Khi thành công
Trả về
WEAVE_ERROR_BUFFER_TOO_CUSTOM 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_INTEGRITY_TYPE Nếu loại tính toàn vẹn đã cung cấp không phải là một trong các giá trị được chỉ định trong IntegrityTypes