nl:: Weave:: Profiles:: DataManagement_Legacy:: DMClient
#include <src/lib/profiles/data-management/Legacy/DMClient.h>
מחלקת הבסיס המופשטת ללקוחות WDM ספציפיים לאפליקציות.
סיכום
DMClient הוא לקוח ה-WDM הרגיל. ההטמעה יכולה לכלול גם מינוי/הודעה. מדובר בשילוב של המחלקה ProtocolEngine של DM שמטפלת בהפיכת התקשורת בשרשור, והמחלקה ClientDataManager המופשטת לחלוטין, כאשר כמה מהשיטות הקשורות למנויים הוטמעו כך ששכבות גבוהות יותר לא יצטרכו לדאוג להן.
רכיבי ה-handler למשימות שקשורות למינוי פועלים בעיקר כמתאם דק מעל האובייקט ClientNotifier. משתמשים שמשתייכים למחלקות משנה צריכים להקפיד להתקשר לשיטות הרלוונטיות של מחלקת-העל, כדי להפוך את המכשיר של מנהל המינויים.
לשיטות הבקשה של DMClient יש בדרך כלל שתי חתימות, אחת עם מזהה מפורש של צומת יעד והשנייה עם יעד מוגדר. בכל מקרה, היכולת לשלוח הודעה לבעל תוכן דיגיטלי תלויה בקישור קיים מראש בלקוח, אבל במקרה הראשון מזהה היעד אמור לבחור בין מספר יעדים קשורים. במקרה השני, הפריט הראשון בטבלת הקישורים נבחר כברירת מחדל. האפשרות הזו שימושית, לדוגמה, אם הלקוח יהיה כפוף תמיד לבעל אתר אחד בלבד.
ירושה
ירש מ-:nl::Weave::Profiles::DataManagement_Legacy::ProtocolEngine
nl::Weave::Profiles::DataManagement_Legacy::ClientDataManager
בונים והורסים |
|
---|---|
DMClient(void)
בנאי ברירת המחדל של אובייקטים של DMClient.
|
|
~DMClient(void)
ה-Destructor של האובייקטים של 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 )
ה-Destructor של האובייקטים של DMClient.
ניקוי כל המצב הפנימי, ובמקרה הצורך, ביטול מינויים ממתינים.