nl:: বুনা:: প্রোফাইল:: ডেটা ম্যানেজমেন্ট_কারেন্ট:: এনকোডার আপডেট করুন

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

এই বস্তুটি WDM UpdateRequest এবং PartialUpdateRequest পেলোড এনকোড করে।

সারসংক্ষেপ

মনে রাখবেন যে উভয় অনুরোধ একই বিন্যাস আছে; তারা শুধুমাত্র বার্তা প্রকার দ্বারা পৃথক করা হয়, যা এই বস্তুর সুযোগের বাইরে।

এনকোডিংটি এনকোডরিকোয়েস্ট পদ্ধতি দ্বারা সিঙ্ক্রোনাসভাবে করা হয়। একমাত্র অন্য সর্বজনীন পদ্ধতি হল InsertInProgressUpdateItem, যেটিকে SchemaEngine দ্বারা ডাকা হয় যখন এটি একটি অভিধানকে সারিতে ফিরিয়ে আনতে হয়।

কনস্ট্রাক্টর এবং ডেস্ট্রাক্টর

UpdateEncoder ()
~UpdateEncoder ()

পাবলিক ফাংশন

EncodeRequest ( Context & aContext)
একটি WDM আপডেট অনুরোধ পেলোড এনকোড করুন।
InsertInProgressUpdateItem (const TraitPath & aItem)
প্রগতিশীল পথের তালিকায় একটি ব্যক্তিগত পথ যোগ করুন, এই মুহূর্তে এনকোড করার পরে এটি সন্নিবেশ করান।

কাঠামো

nl:: বুনা:: প্রোফাইল:: ডেটা ম্যানেজমেন্ট_কারেন্ট:: আপডেট এনকোডার:: প্রসঙ্গ

এই কাঠামোটি EncodeRequest পদ্ধতিতে I/O আর্গুমেন্ট ধারণ করে।

পাবলিক ফাংশন

এনকোডরিকোয়েস্ট

WEAVE_ERROR EncodeRequest(
  Context & aContext
)

একটি WDM আপডেট অনুরোধ পেলোড এনকোড করুন।

UpdateEncoder::Context দেখুন। PacketBuffer এর ডেটা দৈর্ঘ্য শুধুমাত্র সাফল্যের ক্ষেত্রে আপডেট করা হয়, কিন্তু বাফার বিষয়বস্তু সংরক্ষিত হয় না।

বিস্তারিত
রিটার্ন মান
WEAVE_NO_ERROR
পেলোডের ডেটালিস্টে অন্তত একটি ডেটা এলিমেন্ট এনকোড করা হয়েছে।
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()