nl:: बुनें:: प्रोफाइल:: डेटा प्रबंधन_विरासत:: डीएम क्लाइंट

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

अनुप्रयोग-विशिष्ट WDM क्लाइंट के लिए सार आधार वर्ग।

सारांश

DMClient मानक WDM ग्राहक है। कार्यान्वयन में वैकल्पिक रूप से सदस्यता/अधिसूचना शामिल है। यह डीएम का एक मिश्रण है ProtocolEngine वर्ग है, जो संभालती है संचारों क्रैंक-मोड़, और पूरी तरह से अमूर्त ClientDataManager वर्ग, इसलिए लागू किया सदस्यता से संबंधित विधियों में से कुछ के साथ उच्च स्तर उनके बारे में चिंता करने की ज़रूरत नहीं है।

सदस्यता संबंधित कार्यों के लिए संचालकों मुख्य रूप से अधिक एक पतली एडाप्टर के रूप में कार्य ClientNotifier वस्तु। सबक्लास कार्यान्वयनकर्ताओं को सब्सक्रिप्शन मैनेजर क्रैंक को चालू करने के लिए प्रासंगिक सुपर-क्लास विधियों को कॉल करने का ख्याल रखना चाहिए।

DMClient अनुरोध तरीकों आम तौर पर 2 हस्ताक्षर, एक स्पष्ट गंतव्य नोड आईडी के साथ एक और एक निर्दिष्ट गंतव्य के साथ अन्य की है। किसी भी मामले में, एक प्रकाशक को संदेश भेजने की क्षमता क्लाइंट में पहले से मौजूद बाइंडिंग पर निर्भर करती है, लेकिन पहले मामले में, गंतव्य आईडी का उद्देश्य कई बाउंड डेस्टिनेशन के बीच चयन करना है और दूसरे मामले में, पहले बाध्यकारी तालिका में आइटम को डिफ़ॉल्ट के रूप में चुना गया है। यह उपयोगी है, उदाहरण के लिए, यदि क्लाइंट केवल एक ही प्रकाशक के लिए बाध्य होगा।

विरासत

इनहेरिट करता है:
  nl::Weave::Profiles::DataManagement_Legacy::ProtocolEngine
  nl::Weave::Profiles::DataManagement_Legacy::ClientDataManager

निर्माता और विनाशक

DMClient (void)
के लिए डिफ़ॉल्ट निर्माता DMClient वस्तुओं।
~DMClient (void)
के लिए नाशक DMClient वस्तुओं।
ViewRequest (const uint64_t & aDestinationId, ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout)
virtual WEAVE_ERROR
प्रकाशित डेटा को देखने का अनुरोध करें।
ViewRequest ( ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout)
virtual WEAVE_ERROR
डिफ़ॉल्ट प्रकाशक पर डेटा देखने का अनुरोध करें।
UpdateRequest (const uint64_t & aDestinationId, ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout)
virtual WEAVE_ERROR
प्रकाशित डेटा के अपडेट का अनुरोध करें।
UpdateRequest ( ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout)
virtual WEAVE_ERROR
डिफ़ॉल्ट प्रकाशक पर डेटा के अपडेट का अनुरोध करें।

संरक्षित गुण

mUpdatePool [kUpdatePoolSize]
mViewPool [kViewPoolSize]

सार्वजनिक समारोह

CancelTransactionRequest (uint16_t aTxnId, WEAVE_ERROR aError)
अनुरोध करें कि एक निष्पादन लेनदेन रद्द कर दिया जाए।
Clear (void)
virtual void
आंतरिक एक साथ जुड़े राज्य साफ़ DMClient वस्तु।
Finalize (void)
virtual void
एक ऑपरेटिंग शट डाउन DMClient
IncompleteIndication ( Binding *aBinding, StatusReport & aReport)
virtual void
क्लाइंट द्वारा उपयोग में आने वाले बाइंडिंग के "अपूर्ण" को हैंडल करें।

संरक्षित कार्य

NewUpdate (void)
NewView (void)
View *

व्यू रिक्वेस्ट

virtual WEAVE_ERROR ViewRequest(
  const uint64_t & aDestinationId,
  ReferencedTLVData & aPathList,
  uint16_t aTxnId,
  uint32_t aTimeout
)

प्रकाशित डेटा को देखने का अनुरोध करें।

किसी निर्दिष्ट दूरस्थ प्रकाशक द्वारा प्रबंधित और प्रबंधित डेटा के दृश्य का अनुरोध करें।

विवरण
मापदंडों
[in] aDestinationId
दूरस्थ प्रकाशक के 64-बिट नोड आईडी का संदर्भ।
[in] aPathList
एक करने के लिए एक संदर्भ ReferencedTLVData एक TLV एन्कोड पथ सूची का अनुरोध किया डेटा का संकेत युक्त वस्तु।
[in] aTxnId
इस व्यू ऑपरेशन को प्रबंधित करने के लिए सेट किए गए WDM लेनदेन के लिए एक पहचानकर्ता।
[in] aTimeout
दृश्य प्रतिक्रिया की प्रतीक्षा करने के लिए मिलीसेकंड में अधिकतम समय।
वापसी मूल्य
WEAVE_NO_ERROR
सफलता पर।
WEAVE_ERROR_NO_MEMORY
यदि कोई लेन-देन आवंटित नहीं किया जा सका।
रिटर्न
अन्यथा, एक WEAVE_ERROR प्रारंभ या लेन-देन शुरू करने के लिए विफलता को दर्शाती है।

व्यू रिक्वेस्ट

virtual WEAVE_ERROR ViewRequest(
  ReferencedTLVData & aPathList,
  uint16_t aTxnId,
  uint32_t aTimeout
)

डिफ़ॉल्ट प्रकाशक पर डेटा देखने का अनुरोध करें।

"डिफ़ॉल्ट" प्रकाशक, यानी क्लाइंट की बाध्यकारी तालिका में पहले (या केवल) प्रकाशक द्वारा प्रबंधित और प्रबंधित डेटा के दृश्य का अनुरोध करें।

विवरण
मापदंडों
[in] aPathList
एक करने के लिए एक संदर्भ ReferencedTLVData एक TLV एन्कोड पथ सूची का अनुरोध किया डेटा का संकेत युक्त वस्तु।
[in] aTxnId
इस व्यू ऑपरेशन को प्रबंधित करने के लिए सेट किए गए WDM लेनदेन के लिए एक पहचानकर्ता।
[in] aTimeout
दृश्य प्रतिक्रिया की प्रतीक्षा करने के लिए मिलीसेकंड में अधिकतम समय।
वापसी मूल्य
WEAVE_NO_ERROR
सफलता पर।
WEAVE_ERROR_NO_MEMORY
यदि कोई लेन-देन आवंटित नहीं किया जा सका।
रिटर्न
अन्यथा, एक WEAVE_ERROR प्रारंभ या लेन-देन शुरू करने के लिए विफलता को दर्शाती है।

अद्यतन अनुरोध

virtual WEAVE_ERROR UpdateRequest(
  const uint64_t & aDestinationId,
  ReferencedTLVData & aDataList,
  uint16_t aTxnId,
  uint32_t aTimeout
)

प्रकाशित डेटा के लिए एक अद्यतन का अनुरोध करें।

अनुरोध करें कि एक दूरस्थ प्रकाशक प्रबंधन के तहत डेटा अपडेट करता है।

विवरण
मापदंडों
[in] aDestinationId
दूरस्थ प्रकाशक के 64-बिट नोड आईडी का संदर्भ, जिसके लिए अनुरोध भेजा जा रहा है।
[in] aDataList
एक करने के लिए एक संदर्भ ReferencedTLVData एक TLV एन्कोड डेटा रास्तों जो करने के लिए अद्यतन लागू किया जा रहा है सहित अद्यतन का प्रतिनिधित्व युक्त सूची से युक्त वस्तु।
[in] aTxnId
अद्यतन अनुरोध को प्रबंधित करने के लिए सेट अप लेनदेन के लिए एक पहचानकर्ता।
[in] aTimeout
मिलीसेकंड में संबंधित स्थिति रिपोर्ट की प्रतीक्षा करने के लिए अधिकतम समय।
रिटर्न
WEAVE_NO_ERROR सफलता या पर WEAVE_ERROR_NO_MEMORY एक अद्यतन लेनदेन आवंटित नहीं किया जा सका है। अन्यथा, एक वापसी WEAVE_ERROR एक अद्यतन विफलता को दर्शाती है।

अद्यतन अनुरोध

virtual WEAVE_ERROR UpdateRequest(
  ReferencedTLVData & aDataList,
  uint16_t aTxnId,
  uint32_t aTimeout
)

डिफ़ॉल्ट प्रकाशक पर डेटा के अपडेट का अनुरोध करें।

अनुरोध करें कि एक दूरस्थ प्रकाशक प्रबंधन के तहत डेटा अपडेट करता है। यह संस्करण प्रकाशक के अनुरोध को निर्देशित करता है जो क्लाइंट के डिफ़ॉल्ट बाइंडिंग का लक्ष्य है।

विवरण
मापदंडों
[in] aDataList
एक करने के लिए एक संदर्भ ReferencedTLVData एक TLV एन्कोड डेटा रास्तों जो करने के लिए अद्यतन लागू किया जा रहा है सहित अद्यतन का प्रतिनिधित्व युक्त सूची से युक्त वस्तु।
[in] aTxnId
अद्यतन अनुरोध को प्रबंधित करने के लिए सेट किए गए लेन-देन के लिए एक पहचानकर्ता।
[in] aTimeout
मिलीसेकंड में संबंधित स्थिति रिपोर्ट की प्रतीक्षा करने के लिए अधिकतम समय।
रिटर्न
WEAVE_NO_ERROR सफलता या पर WEAVE_ERROR_NO_MEMORY एक अद्यतन लेनदेन आवंटित नहीं किया जा सका है। अन्यथा, एक वापसी WEAVE_ERROR एक अद्यतन विफलता को दर्शाती है।

संरक्षित गुण

एमअपडेटपूल

Update mUpdatePool[kUpdatePoolSize]

एमव्यूपूल

View mViewPool[kViewPoolSize]

सार्वजनिक समारोह

रद्द करेंलेनदेनअनुरोध

WEAVE_ERROR CancelTransactionRequest(
  uint16_t aTxnId,
  WEAVE_ERROR aError
)

अनुरोध करें कि एक निष्पादन लेनदेन रद्द कर दिया जाए।

यह विधि नेटवर्क ट्रैफ़िक उत्पन्न नहीं करती है, लेकिन केवल निर्दिष्ट लेनदेन के लिए आवंटित संसाधनों को जारी करती है।

विवरण
मापदंडों
[in] aTxnId
रद्द किए जाने वाले लेन-देन की संख्या. यदि kTransactionIdNotSpecified प्रदान किया जाता है, तो सभी लेनदेन रद्द कर दिए जाएंगे।
[in] aError
WEAVE_ERROR जब लेन-देन को रद्द रिपोर्ट करने के लिए।
रिटर्न
WEAVE_NO_ERROR सफलता या एक पर WEAVE_ERROR लेन-देन को रद्द करने के एक विफलता को दर्शाती है।

स्पष्ट

virtual void Clear(
  void
)

आंतरिक एक साथ जुड़े राज्य साफ़ DMClient वस्तु।

विशेष रूप से, यह विधि सभी क्लाइंट लेनदेन पूल को साफ़ करती है। ग्राहकों है कि प्रयोग में रहे हैं के लिए अंतिम रूप () विधि के बाद से यह भी सदस्यता रद्द और लेन-देन और बाध्यकारी टेबल को साफ बेहतर है।

यह सभी देखें:
अंतिम रूप दें ()

डीएम क्लाइंट

 DMClient(
  void
)

के लिए डिफ़ॉल्ट निर्माता DMClient वस्तुओं।

सभी आंतरिक स्थिति को साफ़ करता है। एक DMClient ) उपयोग करने से पहले Init (के साथ आगे प्रारंभ की आवश्यकता है।

अंतिम रूप

virtual void Finalize(
  void
)

एक ऑपरेटिंग शट डाउन DMClient

क्लाइंट से जुड़ी सभी ऑपरेटिंग स्थिति को साफ़ करता है और नोटिफ़ायर से सभी संबंधित सब्सक्रिप्शन को हटा देता है। के लिए एक कॉल के बाद अंतिम रूप () एक DMClient Init फोन करके बस इसे पुनः शुरू किया जा सकता है ()। अंतिम रूप () द्वारा शुरू हो जाती है DMClient नाशक लेकिन मामले में जहां एक में कहा जा सकता है DMClient विफलता या अस्थायी बंद करने के मामले में सफाई, जैसे की आवश्यकता है, लेकिन कुछ बाद में पुनर्गठन किया जाना पड़ सकता है।

अधूरा संकेत

virtual void IncompleteIndication(
  Binding *aBinding,
  StatusReport & aReport
)

क्लाइंट द्वारा उपयोग में आने वाले बाइंडिंग के "अपूर्ण" को हैंडल करें।

जब कोई बाइंडिंग अनपेक्षित रूप से विफल हो जाती है, जैसे यदि बाइंडिंग में शामिल कनेक्शन बंद हो जाता है, तो इस विधि को कहा जाता है।

विवरण
मापदंडों
[in] aBinding
करने के लिए एक सूचक बाध्यकारी कि अधूरा बन गया है।
[in] aReport
विफलता का कारण बताते हुए स्थिति रिपोर्ट का संदर्भ।

~डीएमक्लाइंट

virtual  ~DMClient(
  void
)

के लिए नाशक DMClient वस्तुओं।

सभी आंतरिक स्थिति को साफ़ करता है और यदि आवश्यक हो तो लंबित सदस्यता रद्द कर देता है।

संरक्षित कार्य

नई अपडेट

Update * NewUpdate(
  void
)

नया दर्शन

View * NewView(
  void
)