nl::Weave::โปรไฟล์::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)
ตัวทําลายสําหรับออบเจ็กต์ 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)
ตอบกลับคําขอดูข้อมูล

ฟังก์ชันสาธารณะ

ยกเลิกคําขอ Transaction

WEAVE_ERROR CancelTransactionRequest(
  uint16_t aTxnId,
  WEAVE_ERROR aError
)

ล้าง

virtual void Clear(
  void
)

ล้างสถานะภายในของออบเจ็กต์ DMPublisher

ล้างกลุ่มธุรกรรมการแจ้งเตือนและตารางการสมัครใช้บริการ

DM ผู้เผยแพร่โฆษณา

 DMPublisher(
  void
)

เครื่องมือสร้างเริ่มต้นสําหรับออบเจ็กต์ DMPublisher

ล้างสถานะภายในทั้งหมด

ทำให้สิ้นสุด

virtual void Finalize(
  void
)

ปิด DMPublisher ที่ดําเนินงานอยู่

ล้างสถานะการทํางานทั้งหมดและปิด Listener เมื่อมีการทํางาน

ตัวบ่งชี้ไม่สมบูรณ์

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

จัดการตัวบ่งชี้ว่าเชื่อมโยงไม่สําเร็จ

เมื่อการเชื่อมโยงไม่สมบูรณ์ เช่น เมื่อปิดการเชื่อมต่อสําหรับการเชื่อมโยง TCP เครื่องมือโปรโตคอลจะต้องล้มเหลวสําหรับธุรกรรมทั้งหมดที่ขึ้นอยู่กับการเชื่อมโยง ซึ่งรวมถึงการเรียกเครื่องจัดการสถานะ และจะมีการส่งตัวบ่งชี้ที่ไม่สมบูรณ์ไปยังออบเจ็กต์ Superclass ที่ใช้รูปแบบทางเลือกของวิธีการนี้ที่ใช้รหัสแอปเทียบเท่า

รายละเอียด
พารามิเตอร์
[in] aBinding
ตัวชี้ไปยังการเชื่อมโยงที่ล้มเหลว
[in] aReport
การอ้างอิงออบเจ็กต์ StatusReport ที่ระบุสาเหตุของการทํางานล้มเหลว

เริ่ม

virtual WEAVE_ERROR Init(
  WeaveExchangeManager *aExchangeMgr,
  uint32_t aResponseTimeout
)

เริ่มต้นออบเจ็กต์ DMPublisher

วิธีการนี้ทําให้เกิดผลข้างเคียงของการติดตั้ง Listener ในตัวจัดการ Exchange สําหรับคําขอทั้งหมดของไคลเอ็นต์ซึ่งอาจรวมถึงคําขอการสมัครใช้บริการ

รายละเอียด
พารามิเตอร์
[in] aExchangeMgr
ตัวชี้ไปยังออบเจ็กต์ WeaveExchangeManager เพื่อใช้สําหรับการแลกเปลี่ยนทั้งหมดที่ผู้เผยแพร่โฆษณาต้องการเข้าร่วม
[in] aResponseTimeout
ระยะหมดเวลาที่จะตอบกลับในหน่วยมิลลิวินาที เช่น เวลาสูงสุดในการรอการตอบกลับ
การคืนสินค้า
WEhave_NO_ERROR สําเร็จแล้ว มิเช่นนั้น ให้แสดงผล WEhave_ERROR ซึ่งแสดงความล้มเหลวในการตั้งค่าผู้เผยแพร่โฆษณาอย่างถูกต้อง

เริ่ม

virtual WEAVE_ERROR Init(
  WeaveExchangeManager *aExchangeMgr
)

OnMsgReceived

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

การตอบกลับ

WEAVE_ERROR UpdateResponse(
  ExchangeContext *aResponseCtx,
  StatusReport & aStatus
)

ตอบกลับคําขออัปเดต

ตอบกลับคําขออัปเดตหลังประมวลผลโดยใช้บริบท Exchange ที่ให้ไว้ในตัวบ่งชี้

รายละเอียด
พารามิเตอร์
[in] aResponseCtx
ตัวชี้ไปยังบริบทของ Exchange ที่ได้รับคําขอ
[in] aStatus
การอ้างอิงไปยังออบเจ็กต์ StatusReport ที่มีข้อมูลเกี่ยวกับสถานะของคําขอ
การคืนสินค้า
WEhave_NO_ERROR สําเร็จแล้ว ไม่เช่นนั้นจะส่งคืน WEhave_ERROR ซึ่งแสดงความล้มเหลวในการส่งข้อความตอบกลับ

การตอบกลับ

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

ตอบกลับคําขอดูข้อมูล

ส่งคําตอบไปยังคําขอการดูหลังจากประมวลผล โดยใช้บริบท Exchange ที่ให้ไว้ในตัวบ่งชี้

รายละเอียด
พารามิเตอร์
[in] aResponseCtx
ตัวชี้ไปยังบริบทของ Exchange ที่ได้รับคําขอ
[in] aStatus
การอ้างอิงไปยังออบเจ็กต์ StatusReport ที่มีข้อมูลเกี่ยวกับสถานะของคําขอ ในกรณีที่ประสบความสําเร็จ ผู้ขอจะคาดหวังรายการข้อมูลที่มีข้อมูลที่สนใจ
[in] aDataList
ตัวชี้ไปยังออบเจ็กต์ ReferencedTLVData ที่ไม่บังคับซึ่งมีรายการข้อมูลที่เข้ารหัสแบบ TLV ซึ่งมีข้อมูลที่สนใจและเส้นทางที่แสดงถึงการกําจัดข้อมูลดังกล่าว โปรดทราบว่าพารามิเตอร์นี้จะเป็น Null ในกรณีที่สถานะที่ระบุไว้ในพารามิเตอร์ก่อนหน้าไม่ประสบความสําเร็จ
แสดงผลค่า
WEAVE_NO_ERROR
สําเร็จแล้ว ไม่เช่นนั้น จะแสดงผล WEhave_ERROR ซึ่งแสดงความล้มเหลวในการส่งข้อความตอบกลับ
WEAVE_ERROR_INVALID_ARGUMENT
หากพารามิเตอร์ที่ระบุไม่ตรงกัน
WEAVE_ERROR_NO_MEMORY
หากจัดสรรบัฟเฟอร์ Inet ไม่ได้

ผู้เผยแพร่โฆษณา DM

virtual  ~DMPublisher(
  void
)

ตัวทําลายสําหรับออบเจ็กต์ DMPublisher

ล้างสถานะภายในทั้งหมดและนํา Listener ออกจากตัวจัดการ Exchange หากมี