nl :: نسج:: مظهر:: DataManagement_Legacy :: DMClient
#include <src/lib/profiles/data-management/Legacy/DMClient.h>
الفئة الأساسية المجردة لعملاء WDM الخاصين بالتطبيقات.
ملخص
DMClient هو العميل WDM القياسية. يتضمن التنفيذ اختياريًا الاشتراك / الإخطار. بل هو مزيج من DM 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) | Update * |
NewView (void) | View * |
ViewRequest
virtual WEAVE_ERROR ViewRequest( const uint64_t & aDestinationId, ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout )
طلب عرض البيانات المنشورة.
طلب طريقة عرض البيانات الموجودة على والتي يديرها ناشر بعيد محدد.
تفاصيل | |||||||||
---|---|---|---|---|---|---|---|---|---|
المعلمات |
| ||||||||
إرجاع القيم |
| ||||||||
عائدات | خلاف ذلك، و WEAVE_ERROR يعكس عدم تهيئة أو بدء المعاملة. |
ViewRequest
virtual WEAVE_ERROR ViewRequest( ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout )
طلب عرض البيانات على الناشر الافتراضي.
طلب عرض البيانات الموجودة على الناشر "الافتراضي" وإدارتها ، أي الناشر الأول (أو الوحيد) في جدول ربط العميل.
تفاصيل | |||||||
---|---|---|---|---|---|---|---|
المعلمات |
| ||||||
إرجاع القيم |
| ||||||
عائدات | خلاف ذلك، و WEAVE_ERROR يعكس عدم تهيئة أو بدء المعاملة. |
طلب التحديث
virtual WEAVE_ERROR UpdateRequest( const uint64_t & aDestinationId, ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout )
طلب تحديث البيانات المنشورة.
اطلب من ناشر بعيد تحديث البيانات تحت الإدارة.
تفاصيل | |||||||||
---|---|---|---|---|---|---|---|---|---|
المعلمات |
| ||||||||
عائدات | WEAVE_NO_ERROR على نجاح أو WEAVE_ERROR_NO_MEMORY إذا تعذر تخصيص معاملة التحديث. خلاف ذلك، إرجاع WEAVE_ERROR يعكس فشل التحديث. |
طلب التحديث
virtual WEAVE_ERROR UpdateRequest( ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout )
اطلب تحديثًا للبيانات الموجودة على الناشر الافتراضي.
اطلب من ناشر بعيد تحديث البيانات تحت الإدارة. يوجه هذا الإصدار الطلب إلى الناشر الذي يعد هدف ربط العميل الافتراضي.
تفاصيل | |||||||
---|---|---|---|---|---|---|---|
المعلمات |
| ||||||
عائدات | WEAVE_NO_ERROR على نجاح أو WEAVE_ERROR_NO_MEMORY إذا تعذر تخصيص معاملة التحديث. خلاف ذلك، إرجاع WEAVE_ERROR يعكس فشل التحديث. |
السمات المحمية
mUpdatePool
Update mUpdatePool[kUpdatePoolSize]
mViewPool
View mViewPool[kViewPoolSize]
الوظائف العامة
إلغاء طلب معاملة
WEAVE_ERROR CancelTransactionRequest( uint16_t aTxnId, WEAVE_ERROR aError )
طلب إلغاء معاملة منفذة.
لا تؤدي هذه الطريقة إلى إنشاء حركة مرور على الشبكة ، ولكن تقوم فقط بتحرير الموارد المخصصة للمعاملة (المعاملات) المحددة
تفاصيل | |||||
---|---|---|---|---|---|
المعلمات |
| ||||
عائدات | WEAVE_NO_ERROR على نجاح أو WEAVE_ERROR يعكس عدم إلغاء الصفقة. |
صافي
virtual void Clear( void )
مسح الحالة الداخلية المرتبطة DMClient الكائن.
على وجه الخصوص ، تقوم هذه الطريقة بمسح جميع مجموعات معاملات العميل. للعملاء التي تم استخدامها ل وضع الصيغة النهائية () الأسلوب هو الأفضل لأنه يلغي أيضا اشتراكات وينظفها من المعاملات والجداول ملزمة.
أنظر أيضا:إنهاء ()
DMClient
DMClient( void )
وضع اللمسات الأخيرة
virtual void Finalize( void )
إيقاف تشغيل التشغيل DMClient .
يمسح جميع حالات التشغيل المرتبطة بالعميل ويزيل جميع الاشتراكات ذات الصلة من المخطر. بعد استدعاء وضع الصيغة النهائية) ( و DMClient قد يكون reinitialized ببساطة عن طريق الاتصال التهيئة (). وضع الصيغة النهائية () يتم استدعاء من قبل DMClient المدمر ولكن يمكن أن يسمى في الحالة التي يكون فيها DMClient يتطلب تنظيف، على سبيل المثال في حالة فشل أو إيقاف مؤقت، ولكن قد تحتاج إلى أن يعاد في وقت لاحق.
إشارة غير كاملة
virtual void IncompleteIndication( Binding *aBinding, StatusReport & aReport )
معالجة "عدم اكتمال" الربط المستخدم من قبل العميل.
عندما يفشل الربط بشكل غير متوقع ، على سبيل المثال إذا تم إغلاق الاتصال المتضمن في الربط ، يتم استدعاء هذه الطريقة.
تفاصيل | |||||
---|---|---|---|---|---|
المعلمات |
|
~ DMClient
virtual ~DMClient( void )
والمدمر ل DMClient الكائنات.
يمسح جميع الحالات الداخلية ، ويلغي الاشتراكات المعلقة إذا لزم الأمر.
وظائف محمية
تحديث جديد
Update * NewUpdate( void )
عرض جديد
View * NewView( void )
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجّلة لشركة Oracle و/أو شركائها التابعين، وThread هي علامة تجارية مسجّلة لشركة .Thread Group, Inc.
تاريخ التعديل الأخير: 2020-08-28 (حسب التوقيت العالمي المتفَّق عليه)