จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

ไม่มี:: สาน:: โปรไฟล์:: DataManagement_Current:: UpdateEncoder

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

วัตถุนี้ถอดรหัส WDM UpdateRequest และ PartialUpdateRequest payloads

สรุป

โปรดทราบว่าคำขอทั้งสองมีรูปแบบเดียวกัน โดยจะแยกความแตกต่างตามประเภทข้อความเท่านั้น ซึ่งอยู่นอกขอบเขตของวัตถุนี้

การเข้ารหัสทำได้พร้อมกันโดยวิธี EncodeRequest วิธีการสาธารณะอื่น ๆ คือ InsertInProgressUpdateItem ซึ่งถูกเรียกโดย SchemaEngine เมื่อจำเป็นต้องพุชพจนานุกรมกลับไปที่คิว

ตัวสร้างและตัวทำลาย

UpdateEncoder ()
~UpdateEncoder ()

งานสาธารณะ

EncodeRequest ( Context & aContext)
เข้ารหัสเพย์โหลดคำขอ WDM Update
InsertInProgressUpdateItem (const TraitPath & aItem)
เพิ่มพาธส่วนตัวในรายการพาธที่กำลังดำเนินการ โดยแทรกหลังจากเส้นทางที่เข้ารหัสในขณะนี้

โครงสร้าง

NL :: สาน :: โปรไฟล์ :: DataManagement_Current :: UpdateEncoder :: บริบท

โครงสร้างนี้เก็บอาร์กิวเมนต์ I/O ไว้กับเมธอด EncodeRequest

งานสาธารณะ

เข้ารหัสคำขอ

WEAVE_ERROR EncodeRequest(
  Context & aContext
)

เข้ารหัสเพย์โหลดคำขอ WDM Update

ดู UpdateEncoder :: บริบท ความยาวข้อมูลของ PacketBuffer ถูกอัพเดตเฉพาะในกรณีที่สำเร็จ แต่เนื้อหาบัฟเฟอร์จะไม่ถูกรักษาไว้

รายละเอียด
ส่งกลับค่า
WEAVE_NO_ERROR
อย่างน้อยหนึ่ง DataElement ถูกเข้ารหัสในส่วนของข้อมูลของ DataList
WEAVE_ERROR_BUFFER_TOO_SMALL
ครั้งแรก DataElement ไม่สามารถใส่ในอัตรา
WEAVE_ERROR_INVALID_ARGUMENT
aContext ถูกกำหนดค่าเริ่มต้นด้วยค่าที่ไม่ถูกต้อง
other
ข้อผิดพลาดอื่นๆ จากออบเจ็กต์ระดับล่าง (TLVWriter, SchemaEngine ฯลฯ)

InsertInProgressUpdateItem

WEAVE_ERROR InsertInProgressUpdateItem(
  const TraitPath & aItem
)

เพิ่มพาธส่วนตัวในรายการพาธที่กำลังดำเนินการ โดยแทรกหลังจากเส้นทางที่เข้ารหัสในขณะนี้

SchemaEngine ต้องการให้เมธอดนี้เรียกเมธอดขณะที่ข้ามแผนผังสคีมา และต้องพุชพจนานุกรมกลับไปที่รายการ

รายละเอียด
พารามิเตอร์
[in] aItem
TraitPath แทรกในรายการที่มีการเข้ารหัส
ส่งกลับค่า
WEAVE_NO_ERROR
แทรกรายการสำเร็จแล้ว
WEAVE_NO_MEMORY
ไม่มีที่ว่างในเป็น TraitPathStore แทรกรายการ

UpdateEncoder

 UpdateEncoder()

~UpdateEncoder

 ~UpdateEncoder()