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 :: Dệt :: Hồ sơ :: DataManagement_Current :: UpdateEncoder

#include <src/lib/profiles/data-management/Current/UpdateEncoder.h>

Đây đối tượng mã hóa WDM UpdateRequest và PartialUpdateRequest trọng tải.

Tóm lược

Lưu ý rằng cả hai yêu cầu đều có cùng định dạng; chúng chỉ được phân biệt bởi kiểu thông báo, nằm ngoài phạm vi của đối tượng này.

Việc mã hóa được thực hiện đồng bộ bằng phương pháp EncodeRequest. Phương thức công khai duy nhất khác là InsertInProgressUpdateItem, được gọi bởi SchemaEngine khi nó cần đẩy từ điển trở lại hàng đợi.

Người xây dựng và Người phá hủy

UpdateEncoder ()
~UpdateEncoder ()

Chức năng công cộng

EncodeRequest ( Context & aContext)
Mã hóa tải trọng yêu cầu Cập nhật WDM.
InsertInProgressUpdateItem (const TraitPath & aItem)
Thêm một đường dẫn riêng trong danh sách các đường dẫn đang được xử lý, chèn nó vào sau đường dẫn đang được mã hóa tại thời điểm này.

Cấu trúc

nl :: Weave :: Profiles :: DataManagement_Current :: UpdateEncoder :: Context

Cấu trúc này chứa các đối số I / O cho phương thức EncodeRequest.

Chức năng công cộng

EncodeRequest

WEAVE_ERROR EncodeRequest(
  Context & aContext
)

Mã hóa tải trọng yêu cầu Cập nhật WDM.

Xem UpdateEncoder :: Context . Độ dài dữ liệu của PacketBuffer chỉ được cập nhật trong trường hợp thành công, nhưng nội dung bộ đệm không được bảo toàn.

Chi tiết
Giá trị trả lại
WEAVE_NO_ERROR
Ít nhất một DataElement được mã hóa trong DataList của tải trọng.
WEAVE_ERROR_BUFFER_TOO_SMALL
Đầu tiên DataElement không thể phù hợp trong payload.
WEAVE_ERROR_INVALID_ARGUMENT
aContext đã được khởi tạo với các giá trị không hợp lệ.
other
Các lỗi khác từ các đối tượng cấp thấp hơn (TLVWriter, SchemaEngine, v.v.).

InsertInProgressUpdateItem

WEAVE_ERROR InsertInProgressUpdateItem(
  const TraitPath & aItem
)

Thêm một đường dẫn riêng trong danh sách các đường dẫn đang được xử lý, chèn nó vào sau đường dẫn đang được mã hóa tại thời điểm này.

Phương thức này được gọi bởi SchemaEngine vì nó đi qua cây lược đồ và nó cần đẩy các từ điển trở lại danh sách.

Chi tiết
Thông số
[in] aItem
Các TraitPath để chèn trong danh sách được mã hóa.
Giá trị trả lại
WEAVE_NO_ERROR
Mục đã được chèn thành công.
WEAVE_NO_MEMORY
Không có không gian trong TraitPathStore để chèn mục.

UpdateEncoder

 UpdateEncoder()

~ UpdateEncoder

 ~UpdateEncoder()