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

यह एक ऐब्सट्रैक्ट क्लास है.

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

ऐब्स्ट्रैक्ट ProfileData सहायक इनर क्लास.

खास जानकारी

ProfileDatabase सब-क्लास लागू करने वालों को इस सहायक इनर क्लास की सब-क्लास भी लागू करनी चाहिए. ProfileData ऑब्जेक्ट, ऐसे हुक देते हैं जिनसे कंक्रीट का डेटा सेव हो सकता है. ऐसा इसलिए, क्योंकि इसे TLV के तौर पर दिखाया जाता है और पाथ की टीएलवी-कोड में बदली गई सूची के आधार पर, इसे TLV के तौर पर फिर से हासिल किया जाता है.

कंस्ट्रक्टर और डिस्ट्रक्टर

ProfileData(void)
ProfileData के लिए डिफ़ॉल्ट कंस्ट्रक्टर.
~ProfileData(void)
ProfileData का डिस्ट्रक्टर.

सार्वजनिक विशेषताएं

mVersion
uint64_t
प्रोफ़ाइल के डेटा का वर्शन.

सार्वजनिक फ़ंक्शन

Retrieve(nl::Weave::TLV::TLVReader & aPathReader, nl::Weave::TLV::TLVWriter & aDataWriter)=0
virtual WEAVE_ERROR
अवशिष्ट WDM पथ दिए जाने पर डेटा आइटम लिखें.
Store(nl::Weave::TLV::TLVReader & aPathReader, uint64_t aVersion, nl::Weave::TLV::TLVReader & aDataReader)
virtual WEAVE_ERROR
पढ़े जा रहे डेटा सूची आइटम को सेव करें.
StoreItem(const uint64_t & aTag, nl::Weave::TLV::TLVReader & aDataReader)=0
virtual WEAVE_ERROR
डेटा आइटम को उसके टैग के आधार पर सेव करें.

सार्वजनिक विशेषताएं

mVersion

uint64_t mVersion

प्रोफ़ाइल के डेटा का वर्शन.

यहां ProfileData ऑब्जेक्ट में दिया गया वर्शन, किसी खास इंस्टेंस के लिए, प्रोफ़ाइल के पूरे डेटा सेट पर लागू होता है.

सार्वजनिक फ़ंक्शन

ProfileData

 ProfileData(
  void
)

ProfileData के लिए डिफ़ॉल्ट कंस्ट्रक्टर.

नए ProfileData आइटम के वर्शन को 0 पर सेट करके, उसे शुरू करें.

वापस पाएं

virtual WEAVE_ERROR Retrieve(
  nl::Weave::TLV::TLVReader & aPathReader,
  nl::Weave::TLV::TLVWriter & aDataWriter
)=0

अवशिष्ट WDM पथ दिए जाने पर डेटा आइटम लिखें.

हर उस मामले में जहां ProfileData सब-क्लास ऑब्जेक्ट के अलग-अलग एलिमेंट को किसी खास टैग से ऐक्सेस किया जा सकता है, ProfileDatabase सब-क्लास लागू करने वालों को इस तरीके को सही तरीके से लागू करने की सुविधा देनी होगी.

ब्यौरा
पैरामीटर
[in] aPathReader
प्रोफ़ाइल की जानकारी के बाद डब्ल्यूडीएम पाथ में TLV रीडर का रेफ़रंस, जैसे कि 'रेज़िड्यूअल' पाथ एलिमेंट.
[in] aDataWriter
TLV राइटर के बारे में जानकारी, जिसका इस्तेमाल रेज़िड्यूअल पाथ से दिखाए गए डेटा को लिखने के लिए किया जाता है.
लौटाए जाने वाले प्रॉडक्ट
WEAVE_NO_ERROR सफलता पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. यह रेज़िड्यूअल टैग को पहचानने या मिलते-जुलते डेटा को लिखने में समस्या दिखाता है.

स्टोर

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

पढ़े जा रहे डेटा सूची आइटम को सेव करें.

इस वर्चुअल तरीके का इस्तेमाल, किसी खास डेटा सूची के आइटम को कंक्रीट ProfileData सब-क्लास के ऑब्जेक्ट में सेव करने के लिए किया जाता है. सुपर-क्लास में यहां लागू करने की प्रक्रिया का इस्तेमाल तब किया जा सकता है, जब ऑब्जेक्ट आसान और "हैलो" हो. साथ ही, इसमें सिर्फ़ एक एलिमेंट वाले पाथ शामिल हों. ज़्यादा मुश्किल स्कीमा के लिए, लागू करने वाले लोगों को इस तरीके को बदलना चाहिए.

ब्यौरा
पैरामीटर
[in] aPathReader
डेटा सूची के आइटम के पाथ कॉम्पोनेंट में मौजूद TLV रीडर का रेफ़रंस.
[in] aVersion
डेटा सूची में मौजूद आइटम का 64-बिट वर्शन वाला कॉम्पोनेंट.
[in] aDataReader
डेटा सूची के आइटम के डेटा कॉम्पोनेंट में मौजूद TLV रीडर का रेफ़रंस.
लौटाए जाने वाले प्रॉडक्ट
WEAVE_NO_ERROR सफलता पर. अगर ऐसा नहीं है, तो एक WEAVE_ERROR दिखाएं.

StoreItem

virtual WEAVE_ERROR StoreItem(
  const uint64_t & aTag,
  nl::Weave::TLV::TLVReader & aDataReader
)=0

डेटा आइटम को उसके टैग के आधार पर सेव करें.

ब्यौरा
पैरामीटर
[in] aTag
पूरी तरह क्वालिफ़ाइड 64-बिट TLV टैग का रेफ़रंस, जिसमें डेटा सेव किया जाना चाहिए.
[in] aDataReader
स्टोर किए जाने वाले डेटा आइटम के पास एक TLV रीडर.
लौटाए जाने वाले प्रॉडक्ट
सफलता मिलने पर WEAVE_NO_ERROR, नहीं तो टैग को पहचानने या डेटा स्टोर करने में असमर्थता दिखाने वाली WEAVE_ERROR दिखाएं.

~ProfileData

virtual  ~ProfileData(
  void
)

ProfileData का डिस्ट्रक्टर.

कंस्ट्रक्टर की तरह, यह डेटा वर्शन को सिर्फ़ 0 पर साफ़ कर देता है.