nl::Weave::Profiles::DataManagement_Legacy::ProfileDatabase

هذا صف مجرّد.

#include <src/lib/profiles/data-management/Legacy/ProfileDatabase.h>

الفئة الإضافية المجرّدة ProfileDatabase.

ملخّص

يفصل WDM تنفيذ البروتوكول عن تنفيذ إدارة البيانات، ويترك، على الأقل، من حيث المبدأ معظمه لمطوّر التطبيقات. جميع الطلبات المثيرة للاهتمام في WDM وجميع الطرق المجرّدة التي على مطوّر الملف الشخصي تنفيذها تستخدم قوائم المسارات أو قوائم البيانات المرمّزة بتنسيق TLV. وهذا يضع عبئًا على مطوّري الملفات الشخصية، وسيتسبب عمليًا في حدوث الكثير من تكرار الرموز، إذ يكتب المطوّر بعد كتابة الرمز نفسه لعملية تعبئة ملف TLV وفكه، وما إلى ذلك. لتيسير الأمور قليلاً، نقدم نوعًا من "مجموعة أدوات إدارة البيانات".

توفِّر هذه الفئة الإضافية إمكانية تخزين البيانات واستردادها بشرط تقديم فئات ProfileData الأساسية الملموسة وإضافتها إلى طريقة LookupProfileData() أدناه.

وظائف عامة

LookupDataFromProfileDescriptor(nl::Weave::TLV::TLVReader & aDescReader, ProfileData **aProfileData)
ابحث عن كائن ProfileData في قاعدة البيانات.
LookupProfileData(nl::Weave::TLV::TLVReader & aPathReader, ProfileData **aProfileData)
ابحث عن كائن ProfileData في قاعدة البيانات.
LookupProfileData(uint32_t aProfileId, nl::Weave::TLV::TLVReader *aInstanceIdRdr, ProfileData **aResult)=0
virtual WEAVE_ERROR
ابحث عن كائن ProfileData.
Retrieve(ReferencedTLVData & aPathList, ReferencedTLVData & aDataList)
يمكنك استرداد قائمة بيانات وفقًا لقائمة مسارات.
Retrieve(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVWriter & aWriter)
اكتب قائمة بيانات وفقًا لقائمة مسارات.
Store(ReferencedTLVData & aDataList)
تخزين قائمة بيانات.

الدوال المحمية

StoreInternal(nl::Weave::TLV::TLVReader & aPathReader, uint64_t aVersion, nl::Weave::TLV::TLVReader & aDataReader)

صفوف

nl::Weave::Profiles::DataManagement_Legacy::ProfileDatabase::ProfileData

الفئة الداخلية الإضافية ProfileData المجرّدة.

وظائف عامة

LookupDataFromProfileDescriptor

WEAVE_ERROR LookupDataFromProfileDescriptor(
  nl::Weave::TLV::TLVReader & aDescReader,
  ProfileData **aProfileData
)

ابحث عن كائن ProfileData في قاعدة البيانات.

ويتم استخدام طريقة الأداة هذه للعثور على كائنات ProfileData في ProfileDatabase معيّن. ويعتمد إلى حد كبير على طرق البحث التي يوفّرها منفّذ الفئة الفرعية ProfileDatabase الملموسة.

التفاصيل
المعلمات
[in] aDescReader
يشير ذلك المصطلح إلى مرجع إلى قارئ TLV تم وضعه في مسار WDM، أي مسار TLV يحتوي، كعنصر أول، على وصف للملف الشخصي.
[out] aProfileData
مؤشر يهدف إلى عرض مؤشر إلى الكائن ProfileData المطلوب.
المرتجعات
WEAVE_NO_ERROR عند نجاح الإجراء، وإلا عليك عرض WEAVE_ERROR الذي يشير إلى تعذُّر البحث عن عنصر ProfileData مطابق.

LookupProfileData

WEAVE_ERROR LookupProfileData(
  nl::Weave::TLV::TLVReader & aPathReader,
  ProfileData **aProfileData
)

ابحث عن كائن ProfileData في قاعدة البيانات.

ويتم استخدام طريقة الأداة هذه للعثور على كائنات ProfileData في ProfileDatabase معيّن. ويعتمد إلى حد كبير على طرق البحث التي يوفّرها منفّذ الفئة الفرعية ProfileDatabase الملموسة.

التفاصيل
المعلمات
[in] aPathReader
يشير ذلك المصطلح إلى مرجع إلى قارئ TLV تم وضعه في مسار WDM، أي مسار TLV يحتوي، كعنصر أول، على وصف للملف الشخصي.
[out] aProfileData
مؤشر يهدف إلى عرض مؤشر إلى الكائن ProfileData المطلوب.
المرتجعات
WEAVE_NO_ERROR عند نجاح الإجراء، وإلا عليك عرض WEAVE_ERROR الذي يشير إلى تعذُّر البحث عن عنصر ProfileData مطابق.

LookupProfileData

virtual WEAVE_ERROR LookupProfileData(
  uint32_t aProfileId,
  nl::Weave::TLV::TLVReader *aInstanceIdRdr,
  ProfileData **aResult
)=0

ابحث عن كائن ProfileData.

البحث عن كائن ProfileData محدد برقم تعريف ملف شخصي ورقم تعريف للمثيل (اختياري)< المقدمة كقارئ TLV

التفاصيل
المعلمات
[in] aProfileId
رقم الملف الشخصي 32 بت للملف الشخصي محل الاهتمام.
[in] aInstanceIdRdr
يشير ذلك المصطلح إلى مؤشر لقارئ TLV موضوع في بيانات معرِّف المثيل. وإذا لم يتم تقديم معرف المثيل، فسيكون هذا الحقل "NULL".
[out] aResult
مؤشر يهدف إلى عرض مؤشر إلى الكائن ProfileData المطلوب.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض خطأ WEAVE_ERROR يعكس عدم القدرة على العثور على كائن ProfileData.

استرداد

WEAVE_ERROR Retrieve(
  ReferencedTLVData & aPathList,
  ReferencedTLVData & aDataList
)

يمكنك استرداد قائمة بيانات وفقًا لقائمة مسارات.

عند الاطّلاع على قائمة المسارات، يمكنك استرداد قائمة بيانات تحتوي على عناصر قائمة بيانات لكل مسار في المسار، ثم سرد البيانات الطرفية لهذا المسار.

التفاصيل
المعلمات
[in] aPathList
مرجع إلى عنصر ReferencedTLVData الذي يحتوي على قائمة بمسارات مرمّزة بتنسيق TLV تمثّل البيانات المطلوب استردادها يتم الحفاظ على هذه المعلمة ثابتة طوال تنفيذ هذه الدالة.
[out] aDataList
مرجع إلى عنصر ReferencedTLVData لكتابة النتائج المسترجعة لا يتم تعديل طول البيانات إلا بعد التنفيذ الناجح لهذه الدالة.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يتم عرض WEAVE_ERROR يشير إلى تعذُّر استرداد قائمة البيانات التي تهمّك.

استرداد

WEAVE_ERROR Retrieve(
  ReferencedTLVData & aPathList,
  nl::Weave::TLV::TLVWriter & aWriter
)

اكتب قائمة بيانات وفقًا لقائمة مسارات.

بناءً على قائمة المسارات وكاتب TLV، يمكنك كتابة قائمة بيانات تحتوي على عناصر قائمة البيانات لكل مسار في قائمة المسارات والبيانات الطرفية لهذا المسار.

التفاصيل
المعلمات
[in] aPathList
مرجع إلى عنصر ReferencedTLVData يحتوي على قائمة بمسارات TLV التي تمثل البيانات المطلوب استردادها يتم الحفاظ على هذه المعلمة ثابتة طوال تنفيذ هذه الدالة.
[in] aWriter
مرجع إلى كاتب TLV لاستخدامه في كتابة قائمة المسارات التي تم استردادها قد يتعذر استرداد الحالة الداخلية للكاتب في حال حدوث خطأ.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يتم عرض WEAVE_ERROR يشير إلى تعذُّر استرداد البيانات أو كتابة قائمة البيانات التي تهمّك.

المتجر

WEAVE_ERROR Store(
  ReferencedTLVData & aDataList
)

تخزين قائمة بيانات.

وبالنظر إلى قائمة بيانات بترميز TLV، تمر هذه الطريقة بعملية تحليل تلك القائمة واستدعاء الطرق الملموسة التي يوفرها منفّذو الفئة الفرعية ProfileDatabase لوضع البيانات المرجعية في المكان الذي تنتمي إليه.

التفاصيل
المعلمات
[in] aDataList
مرجع إلى عنصر ReferencedTLVData الذي يحتوي على البيانات التي تهمّك بتنسيق TLV
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يتم عرض WEAVE_ERROR يشير إلى تعذُّر تخزين البيانات المهمة.

الدوال المحمية

StoreInternal

WEAVE_ERROR StoreInternal(
  nl::Weave::TLV::TLVReader & aPathReader,
  uint64_t aVersion,
  nl::Weave::TLV::TLVReader & aDataReader
)