nl:: بافت:: پروفایل ها:: DataManagement_Legacy:: DMPublisher

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

کلاس پایه انتزاعی برای ناشران WDM ویژه برنامه.

خلاصه

DMPublisher کلاس پایه ناشر استاندارد WDM است. این ترکیبی از کلاس DM ProtocolEngine است که کام‌های crank-turning را مدیریت می‌کند و کلاس کاملاً انتزاعی PublisherDataManager . پشتیبانی از اشتراک و اعلان اختیاری است و ممکن است صرفاً با پیکربندی یک جدول اشتراک بدون هیچ ورودی سرکوب شود.

وراثت

ارث می برد از:
  nl::Weave::Profiles::DataManagement_Legacy::ProtocolEngine
  nl::Weave::Profiles::DataManagement_Legacy::PublisherDataManager

سازندگان و تخریب کنندگان

DMPublisher (void)
سازنده پیش فرض برای اشیاء DMPublisher .
~DMPublisher (void)
تخریب کننده برای اشیاء 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 در حال کار را خاموش کنید.

تمام وضعیت عملکرد را پاک می کند و در صورت اجرا شنونده را خاموش می کند.

نشان ناقص

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

نشانی از عدم موفقیت اتصال را مدیریت کنید.

هنگامی که یک اتصال ناقص می شود، یعنی زمانی که اتصال برای اتصال TCP بسته می شود، موتور پروتکل باید هر تراکنش وابسته به آن را از بین ببرد، که شامل فراخوانی کنترل کننده های وضعیت آنها می شود. همچنین، نشانه ناقص به هر شیء سوپرکلاسی که فرم جایگزین این روش را که یک شناسه همتا می گیرد، اجرا می کند، ارسال می شود.

جزئیات
مولفه های
[in] aBinding
اشاره‌ای به اتصال ناموفق.
[in] aReport
ارجاع به یک آبجکت StatusReport که دلیل شکست را با جزئیات توضیح می دهد.

شروع کنید

virtual WEAVE_ERROR Init(
  WeaveExchangeManager *aExchangeMgr,
  uint32_t aResponseTimeout
)

یک شی DMPublisher را راه اندازی کنید.

این روش دارای اثر جانبی نصب شنونده در مدیر تبادل برای طیف گسترده ای از درخواست های مشتری از جمله درخواست های اشتراک است.

جزئیات
مولفه های
[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
)

تخریب کننده برای اشیاء DMPublisher .

تمام حالت های داخلی را پاک می کند و شنونده را از مدیر مبادله حذف می کند، اگر یکی در جای خود باشد.