nl::Weave::Profiles::DataManagement_Legacy::DMPublisher

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

מחלקת הבסיס המופשטת לבעלי אתרי WDM ספציפיים לאפליקציות.

סיכום

DMPublisher הוא מחלקה הבסיסית של בעלי תוכן דיגיטלי סטנדרטיים של WDM. זוהי תערובת של המחלקה ProtocolEngine של DM, שמטפלת בפעולות ניתוב התקשורת, ובמחלקה PublisherDataManager המופשטת לחלוטין. התמיכה במינויים ובהתראות היא אופציונלית. ניתן לבטל אותה פשוט על ידי הגדרה של טבלת מינויים ללא רשומות.

ירושה

ירש מ:
  nl::Weave::Profiles::DataManagement_Legacy::ProtocolEngine
  nl::Weave::Profiles::DataManagement_Legacy::PublisherDataManager

בונים והורסים

DMPublisher(void)
בנאי ברירת המחדל של אובייקטים של DMPublisher.
~DMPublisher(void)
ה-Destructor של DMPublisher הוא אובייקטים.

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

CancelTransactionRequest(uint16_t aTxnId, WEAVE_ERROR aError)
Clear(void)
virtual void
מוחקים את המצב הפנימי של אובייקט DMPublisher.
Finalize(void)
virtual void
לסגור DMPublisher פעיל.
IncompleteIndication(Binding *aBinding, StatusReport & aReport)
virtual void
טפל בסימן לכך שהקישור נכשל.
Init(WeaveExchangeManager *aExchangeMgr, uint32_t aResponseTimeout)
virtual WEAVE_ERROR
מאתחלים אובייקט DMPublisher.
Init(WeaveExchangeManager *aExchangeMgr)
virtual WEAVE_ERROR
OnMsgReceived(ExchangeContext *aResponseCtx, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg)
void
UpdateResponse(ExchangeContext *aResponseCtx, StatusReport & aStatus)
להשיב לבקשה לעדכון.
ViewResponse(ExchangeContext *aResponseCtx, StatusReport & aStatus, ReferencedTLVData *aDataList)
להשיב לבקשה לצפייה.

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

CancelTransactionRequest

WEAVE_ERROR CancelTransactionRequest(
  uint16_t aTxnId,
  WEAVE_ERROR aError
)

ניקוי

virtual void Clear(
  void
)

מוחקים את המצב הפנימי של אובייקט DMPublisher.

ניקוי של מאגר העסקאות של ההתראות וטבלת המינויים.

DMPublisher

 DMPublisher(
  void
)

בנאי ברירת המחדל של אובייקטים של DMPublisher.

ניקוי כל המצב הפנימי.

סיים

virtual void Finalize(
  void
)

לסגור DMPublisher פעיל.

ניקוי כל מצב ההפעלה וכיבוי המאזין אם אחד מהמצבים פועל.

IncompleteIndication

virtual void IncompleteIndication(
  Binding *aBinding,
  StatusReport & aReport
)

טפל בסימן לכך שהקישור נכשל.

כשקישור הופך לבלתי שלם, כלומר כשסוגרים את החיבור לקישור TCP, מנגנון הפרוטוקול חייב להיכשל בכל העסקאות התלויות בו, כולל קריאה למטפלי הסטטוס שלו. בנוסף, ההתוויה החלקית מועברת לכל אובייקט של מחלקת-על שמטמיע את השיטה החלופית של השיטה הזו שמקבל מזהה עמית.

פרטים
פרמטרים
[in] aBinding
מצביע על הקישור שנכשל.
[in] aReport
הפניה לאובייקט StatusReport המפרט את הסיבה לכשל.

הפעלה

virtual WEAVE_ERROR Init(
  WeaveExchangeManager *aExchangeMgr,
  uint32_t aResponseTimeout
)

מאתחלים אובייקט DMPublisher.

לשיטה הזו יש תופעת לוואי של התקנת מאזין במנהל ה-Exchange עבור כל המגוון של בקשות לקוח, כולל בקשות עבור מינוי.

פרטים
פרמטרים
[in] aExchangeMgr
מצביע אל האובייקט WeaveExchangeManager לשימוש בכל הערוצים שבהם בעל התוכן הדיגיטלי רוצה להשתתף.
[in] aResponseTimeout
פרק הזמן הקצוב לתגובה באלפיות השנייה, כלומר משך הזמן המקסימלי להמתנה לתשובה.
החזרות
WEAVE_NO_ERROR בהצלחה. אחרת, יש להחזיר WEAVE_ERROR המשקפת כשל בהגדרה של בעל התוכן הדיגיטלי.

הפעלה

virtual WEAVE_ERROR Init(
  WeaveExchangeManager *aExchangeMgr
)

OnMsgReceived

void OnMsgReceived(
  ExchangeContext *aResponseCtx,
  uint32_t aProfileId,
  uint8_t aMsgType,
  PacketBuffer *aMsg
)

UpdateResponse

WEAVE_ERROR UpdateResponse(
  ExchangeContext *aResponseCtx,
  StatusReport & aStatus
)

להשיב לבקשה לעדכון.

שליחת התגובה לבקשת עדכון לאחר העיבוד, תוך שימוש בהקשר של חילופי ההודעות שנמסר בהנדיקציה.

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

ViewResponse

WEAVE_ERROR ViewResponse(
  ExchangeContext *aResponseCtx,
  StatusReport & aStatus,
  ReferencedTLVData *aDataList
)

להשיב לבקשה לצפייה.

שליחת התגובה לבקשת צפייה לאחר העיבוד, באמצעות ההקשר של חילופי הנתונים שנמסר בהנדיקציה.

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

~DMPublisher

virtual  ~DMPublisher(
  void
)

ה-Destructor של DMPublisher הוא אובייקטים.

ניקוי כל המצב הפנימי והסרה של המאזין ממנהל ה-Exchange, אם קיים כזה.