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

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

يرمّز هذا العنصر حمولات WDM UpdateRequest وPartialUpdateRequest.

ملخّص

يُرجى العِلم أنّ كلا الطلبَين لهما التنسيق نفسه. يتم التمييز بينهما فقط حسب نوع الرسالة، التي تقع خارج نطاق هذا الكائن.

يتم الترميز بشكل متزامن بواسطة طريقة EncodeRequest. الطريقة العامة الوحيدة الأخرى هي InsertInProgressUpdateItem، والذي يتم استدعاؤه بواسطة SchemaEngine عندما يحتاج إلى إعادة القاموس إلى قائمة الانتظار.

الشركات المصنّعة والمُصنّعة

UpdateEncoder()
~UpdateEncoder()

وظائف عامة

EncodeRequest(Context & aContext)
ترميز حمولة طلب تحديث WDM.
InsertInProgressUpdateItem(const TraitPath & aItem)
أضِف مسارًا خاصًا في قائمة المسارات قيد التقدّم، وأدخِله بعد ذلك الذي يتم ترميزه في الوقت الحالي.

بُنى

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

تحتفظ هذه البنية بوسيطات الإدخال/الإخراج على طريقة EncodeRequest.

وظائف عامة

EncodeRequest

WEAVE_ERROR EncodeRequest(
  Context & aContext
)

ترميز حمولة طلب تحديث WDM.

راجِع UpdateEncoder::Context. ويتم تعديل طول بيانات 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()