nl::Weave::Profiles::DataManagement_Legacy::ProfileDatabase

זו כיתה מופשטת.

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

מחלקת העזר המופשטת ProfileDatabase.

סיכום

WDM מפריד בין הטמעת הפרוטוקול לבין הטמעת ניהול הנתונים, ולכל הפחות באופן עקרוני, משאיר את רוב הדברים האחרונים למפתח האפליקציה. כל הקריאות המעניינות ב-WDM וכל השיטות המופשטות שמפתח הפרופיל נדרש להטמיע הן רשימות של נתיבים או רשימות נתונים בקידוד TLV. פעולה זו יוצרת עומס על מפתחי הפרופיל, ולמעשה תגרום לכפילויות רבות בקוד של המפתח לאחר שהמפתח יכתוב את אותו קוד לאריזה ולפריסה של TLV וכן הלאה. כדי להקל קצת, אנחנו מספקים מעין "ערכת כלים לניהול נתונים".

מחלקת העזר הזו מספקת תמיכה לאחסון ולאחזור של נתונים, בתנאי שסופקו מחלקות המשנה הממשיות הנדרשות ל-ProfileData ונוספו לשיטה LookupProfileData() שלמטה.

תפקידים ציבוריים

LookupDataFromProfileDescriptor(nl::Weave::TLV::TLVReader & aDescReader, ProfileData **aProfileData)
מוצאים אובייקט ProfileData במסד הנתונים.
LookupProfileData(nl::Weave::TLV::TLVReader & aPathReader, ProfileData **aProfileData)
מוצאים אובייקט ProfileData במסד הנתונים.
LookupProfileData(uint32_t aProfileId, nl::Weave::TLV::TLVReader *aInstanceIdRdr, ProfileData **aResult)=0
virtual WEAVE_ERROR
מחפשים אובייקט ProfileData.
Retrieve(ReferencedTLVData & aPathList, ReferencedTLVData & aDataList)
אחזור של רשימת נתונים על סמך רשימת נתיבים.
Retrieve(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVWriter & aWriter)
ניתן לכתוב רשימת נתונים בהינתן רשימת נתיבים.
Store(ReferencedTLVData & aDataList)
אחסון של רשימת נתונים.

פונקציות מוגנות

StoreInternal(nl::Weave::TLV::TLVReader & aPathReader, uint64_t aVersion, nl::Weave::TLV::TLVReader & aDataReader)

מחלקות

nl::Weave::Profiles::DataManagement_Legacy::ProfileDatabase::ProfileData

מחלקת העזר המופשטת ProfileData.

תפקידים ציבוריים

LookupDataFromProfileDescriptor

WEAVE_ERROR LookupDataFromProfileDescriptor(
  nl::Weave::TLV::TLVReader & aDescReader,
  ProfileData **aProfileData
)

מוצאים אובייקט ProfileData במסד הנתונים.

שיטת שירות זו משמשת לאיתור אובייקטים של ProfileData ב-ProfileDatabase ספציפי. הדבר תלוי מאוד בשיטות חיפוש שסופקו על ידי המטמיע של מחלקת המשנה ProfileDatabase של הבטון.

פרטים
פרמטרים
[in] aDescReader
הפניה לקורא TLV שממוקם בנתיב WDM – כלומר נתיב TLV שיש בו, בתור הרכיב הראשון, תיאור פרופיל.
[out] aProfileData
מצביע, המיועד להחזיר מצביע אל האובייקט ProfileData שמעניין אותך.
החזרות
WEAVE_NO_ERROR כשהבדיקה תסתיים בהצלחה, אחרת תוחזר השגיאה WEAVE_ERROR שמציינת כישלון בחיפוש אובייקט ProfileData תואם.

LookupProfileData

WEAVE_ERROR LookupProfileData(
  nl::Weave::TLV::TLVReader & aPathReader,
  ProfileData **aProfileData
)

מוצאים אובייקט ProfileData במסד הנתונים.

שיטת שירות זו משמשת לאיתור אובייקטים של ProfileData ב-ProfileDatabase ספציפי. הדבר תלוי מאוד בשיטות חיפוש שסופקו על ידי המטמיע של מחלקת המשנה ProfileDatabase של הבטון.

פרטים
פרמטרים
[in] aPathReader
הפניה לקורא TLV שממוקם בנתיב WDM – כלומר נתיב TLV שיש בו, בתור הרכיב הראשון, תיאור פרופיל.
[out] aProfileData
מצביע, המיועד להחזיר מצביע אל האובייקט ProfileData שמעניין אותך.
החזרות
WEAVE_NO_ERROR כשהבדיקה תסתיים בהצלחה, אחרת תוחזר השגיאה WEAVE_ERROR שמציינת כישלון בחיפוש אובייקט ProfileData תואם.

LookupProfileData

virtual WEAVE_ERROR LookupProfileData(
  uint32_t aProfileId,
  nl::Weave::TLV::TLVReader *aInstanceIdRdr,
  ProfileData **aResult
)=0

מחפשים אובייקט ProfileData.

מחפשים אובייקט ProfileData ספציפי כשמזינים מזהה פרופיל ומזהה מופע (אופציונלי) שמופיע כקורא TLV.

פרטים
פרמטרים
[in] aProfileId
מספר פרופיל 32 הסיביות של הפרופיל הרצוי.
[in] aInstanceIdRdr
מצביע לקורא TLV שממוקם בנתוני מזהה המכונה. אם לא סופק מזהה מופע, הערך יהיה NULL.
[out] aResult
מצביע, המיועד להחזיר מצביע אל האובייקט ProfileData שמעניין אותך.
החזרות
WEAVE_NO_ERROR בהצלחה. אחרת, מחזירים WEAVE_ERROR שמשקפת אי-יכולת למצוא אובייקט ProfileData.

אחזור

WEAVE_ERROR Retrieve(
  ReferencedTLVData & aPathList,
  ReferencedTLVData & aDataList
)

אחזור של רשימת נתונים על סמך רשימת נתיבים.

על סמך רשימת נתיבים, מאחזרים רשימת נתונים שמכילה רכיבים של רשימת נתונים לכל נתיב ברשימת הנתיבים, שהם הטרמינל של אותו נתיב.

פרטים
פרמטרים
[in] aPathList
הפניה לאובייקט ReferencedTLVData. האובייקט מכיל רשימה של נתיבים בקידוד TLV, שמייצגים נתונים שצריך לאחזר. הפרמטר הזה נשאר קבוע במהלך ביצוע הפונקציה.
[out] aDataList
הפניה לאובייקט ReferencedTLVData שבו יש לכתוב את התוצאות שאוחזרו. אורך הנתונים מותאם רק לאחר ביצוע מוצלח של הפונקציה הזו.
החזרות
WEAVE_NO_ERROR בהצלחה. אחרת, יחזירו WEAVE_ERROR שמציין כישלון באחזור רשימת הנתונים.

אחזור

WEAVE_ERROR Retrieve(
  ReferencedTLVData & aPathList,
  nl::Weave::TLV::TLVWriter & aWriter
)

ניתן לכתוב רשימת נתונים בהינתן רשימת נתיבים.

בהינתן רשימת נתיבים וכותב TLV, כותבים רשימת נתונים שמכילה רכיבים של רשימת נתונים לכל נתיב ברשימת הנתיבים ואת הנתונים שהם הטרמינל של אותו נתיב.

פרטים
פרמטרים
[in] aPathList
הפניה לאובייקט ReferencedTLVData. שמכילה רשימה של נתיבי TLV לייצוג נתונים שצריך לאחזר. הפרמטר הזה נשאר קבוע במהלך ביצוע הפונקציה.
[in] aWriter
הפניה לכותב של TLV לשימוש בכתיבה של רשימת הנתיבים שאוחזרו. במקרה של שגיאה, ייתכן שלא ניתן יהיה לשחזר את המצב הפנימי של הכותב.
החזרות
WEAVE_NO_ERROR בהצלחה. אחרת, מחזירים הודעת WEAVE_ERROR שמצביעה על כשל באחזור הנתונים או בכתיבת רשימת הנתונים הרצויים.

חנות

WEAVE_ERROR Store(
  ReferencedTLVData & aDataList
)

אחסון של רשימת נתונים.

בהינתן רשימת נתונים בקידוד TLV, השיטה הזו עוברת את תהליך הניתוח של הרשימה וקריאה לשיטות הבטון שמסופקות על ידי מטמיעים של מחלקה משנית ProfileDatabase, כדי למקם את הנתונים שיש להפנות אליהם.

פרטים
פרמטרים
[in] aDataList
הפניה לאובייקט ReferencedTLVData שמכיל את הנתונים הרלוונטיים בקידוד TLV.
החזרות
WEAVE_NO_ERROR בהצלחה. אחרת, מחזירים את השגיאה WEAVE_ERROR שמצביעה על כשל באחסון הנתונים הרלוונטיים.

פונקציות מוגנות

StoreInternal

WEAVE_ERROR StoreInternal(
  nl::Weave::TLV::TLVReader & aPathReader,
  uint64_t aVersion,
  nl::Weave::TLV::TLVReader & aDataReader
)