nl:: Weave:: Profiles:: DataManagement_Legacy:: DMClient
#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)
|
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 שמשקף את כשל באתחול או בהתחלת העסקה.
|
UpdateRequest
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 שמשקף כשל בעדכון.
|
UpdateRequest
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]
פונקציות ציבוריות
CancelTransactionRequest
WEAVE_ERROR CancelTransactionRequest( uint16_t aTxnId, WEAVE_ERROR aError )
מבקשים לבטל עסקה שמבצעת.
השיטה הזו לא יוצרת תנועה ברשת, אלא רק משחררת משאבים שהוקצו עבור הטרנזקציות שצוינו
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
החזרות |
WEAVE_NO_ERROR במקרה של הצלחה או הודעת WEAVE_ERROR שמשקפת כשל בביטול העסקה.
|
ניקוי
virtual void Clear( void )
ניקוי המצב הפנימי שמשויך לאובייקט DMClient.
השיטה הזו מסירה באופן ספציפי את כל מאגרי העסקאות של הלקוחות. עדיף ללקוחות שמשתמשים בשיטה Finalize() כי היא גם מבטלת מינויים ומנקה את טבלאות העסקאות והקישורים.
למידע נוסף:Finalize()
DMClient
DMClient( void )
סיום
virtual void Finalize( void )
כיבוי של DMClient בהפעלה.
ניקוי של כל מצב ההפעלה שמשויך ללקוח והסרה של כל המינויים הקשורים משירות ההתראות. אחרי קריאה ל-Finalize(), אפשר לאתחל מחדש את DMClient פשוט על ידי קריאה ל-Init(). Finalize() מופעל על ידי ה-destructor של DMClient, אבל יכול להיות שהקריאה שלו מופעלת במקרה שבו נדרש ניקוי של DMClient, למשל. במקרה של כשל או כיבוי זמני, אך ייתכן שיהיה צורך לשחזר אותו במועד מאוחר יותר.
IncompleteIndication
virtual void IncompleteIndication( Binding *aBinding, StatusReport & aReport )
טיפול ב"השלמת הפעולה" קישור שבו הלקוח משתמש.
כשקישור נכשל באופן בלתי צפוי, למשל: אם החיבור שמעורב בקישור נסגר, השיטה הזו מופעלת.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
~DMClient
virtual ~DMClient( void )
כלי ההרכבה של אובייקטים של DMClient.
ניקוי כל המצב הפנימי, ואם צריך, מבטל מינויים בהמתנה.