nl:: Weave:: Profiles:: DataManagement_Current:: UpdateEncoder
#include <src/lib/profiles/data-management/Current/UpdateEncoder.h>
אובייקט זה מקודד מטענים ייעודיים (payloads) של WDM UpdateRequest ו-PartialUpdateRequest.
סיכום
שימו לב שלשתי הבקשות יש אותו פורמט. הן נבדלות רק לפי סוג ההודעה, שלא נכלל במסגרת האובייקט הזה.
הקידוד מתבצע באופן סינכרוני על ידי שיטת EncodeRequest. השיטה הציבורית היחידה הנוספת היא InsertInProgressUpdateItem, שנקראת על ידי SchemaEngine כשהוא צריך לדחוף מילון בחזרה לתור.
בונים והורסים |
|
---|---|
UpdateEncoder()
|
|
~UpdateEncoder()
|
תפקידים ציבוריים |
|
---|---|
EncodeRequest(Context & aContext)
|
קידוד של מטען ייעודי (payload) של בקשה לעדכון WDM.
|
InsertInProgressUpdateItem(const TraitPath & aItem)
|
יש להוסיף נתיב פרטי מרשימת הנתיבים שמתבצעת, ולהוסיף אותו אחרי הנתיב שמקודד כרגע.
|
מבנים |
|
---|---|
nl:: |
המבנה הזה מכיל את הארגומנטים של קלט/פלט (I/O) בשיטת EncodeRequest. |
תפקידים ציבוריים
EncodeRequest
WEAVE_ERROR EncodeRequest( Context & aContext )
קידוד של מטען ייעודי (payload) של בקשה לעדכון WDM.
למידע נוסף, ראו UpdateEncoder::Context. אורך הנתונים של PacketBuffer מתעדכן רק במקרה של הצלחה, אך תוכן המאגר לא נשמר.
פרטים | |||||||||
---|---|---|---|---|---|---|---|---|---|
ערכים מוחזרים |
|
InsertInProgressUpdateItem
WEAVE_ERROR InsertInProgressUpdateItem( const TraitPath & aItem )
יש להוסיף נתיב פרטי מרשימת הנתיבים שמתבצעת, ולהוסיף אותו אחרי הנתיב שמקודד כרגע.
לשיטה הזו יש קריאה ל-SchemaEngine מכיוון שהוא חוצה את עץ הסכימה וצריך לדחוף מילונים חזרה לרשימה.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
ערכים מוחזרים |
|
UpdateEncoder
UpdateEncoder()
~UpdateEncoder
~UpdateEncoder()