ไม่มี:: สาน:: โปรไฟล์:: DataManagement_Legacy:: ProtocolEngine

นี่คือคลาสนามธรรม

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

คลาสเอ็นจิ้นโปรโตคอล WDM

สรุป

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

มรดก

คลาสย่อยที่รู้จักโดยตรง:
  nl::Weave::Profiles::DataManagement_Legacy::DMClient
  nl::Weave::Profiles::DataManagement_Legacy::DMPublisher

ตัวสร้างและตัวทำลาย

ProtocolEngine (void)
~ProtocolEngine (void)

คุณสมบัติที่ได้รับการป้องกัน

mBindingTable [kBindingTableSize]
ProtocolEngine มีตารางผูกพันว่าถ้าเครื่องยนต์จะเป็นผู้รับผิดชอบในการอะไรมากกว่าแค่การรับการแจ้งเตือนการออกอากาศอาจจะต้องมีอย่างน้อยหนึ่งรายการ
mExchangeMgr
mResponseTimeout
uint32_t
mTransactionTable [kTransactionTableSize]

งานสาธารณะ

BindConfirm ( Binding *aBinding)
virtual WEAVE_ERROR
จัดการการยืนยันว่าคำขอผูกเสร็จสมบูรณ์แล้ว
BindConfirm ( Binding *aBinding, StatusReport & aReport)
virtual WEAVE_ERROR
จัดการการยืนยันว่าคำขอผูกล้มเหลว
BindRequest (const uint64_t & aPeerNodeId, uint8_t aTransport)
ขอการเชื่อมโยงโดยใช้เพียร์โหนด ID ที่รู้จักและตัวระบุการขนส่ง
BindRequest (const uint64_t & aPeerNodeId)
ผูกกับเพียร์ที่รู้จักโดยใช้การส่งข้อมูลเริ่มต้น
BindRequest ( nl::Weave::Profiles::ServiceDirectory::WeaveServiceManager *aServiceMgr, WeaveAuthMode aAuthMode)
BindRequest ( WeaveConnection *aConnection)
ขอการผูกโดยใช้การเชื่อมต่อ Weave ที่ใช้งานอยู่
IncompleteIndication ( Binding *aBinding, StatusReport & aReport)
virtual void
จัดการข้อบ่งชี้ว่าการผูกล้มเหลว
IncompleteIndication (const uint64_t & aPeerNodeId, StatusReport & aReport)=0
virtual void
จัดการกับข้อบ่งชี้ว่าการผูกมัดไม่สมบูรณ์
Init ( WeaveExchangeManager *aExchangeMgr)
virtual WEAVE_ERROR
Init ( WeaveExchangeManager *aExchangeMgr, uint32_t aResponseTimeout)
virtual WEAVE_ERROR
UnbindRequest (const uint64_t & aPeerNodeId)
void
ขอให้ยกเลิกการผูกและลบออกจากตารางการผูก
UnbindRequest (const uint64_t & aPeerNodeId, WEAVE_ERROR aErr)
void
ขอให้ยกเลิกการผูกและลบออกจากตารางการผูก

ฟังก์ชันที่ได้รับการป้องกัน

Clear (void)
void
ClearBindingTable (void)
void
ClearTransactionTable (void)
void
DequeueTransaction ( DMTransaction *aTransaction)
void
EnqueueTransaction ( DMTransaction *aTransaction, Binding *aBinding)
EnqueueTransaction ( DMTransaction *aTransaction)
FailTransactions ( Binding *aBinding, StatusReport & aReport)
bool
Finalize (void)
virtual void
FinalizeBindingTable (void)
void
FinalizeTransactionTable (void)
void
FinalizeTransactions ( Binding *aBinding)
void
FromExchangeCtx ( ExchangeContext *aExchangeCtx)
GetBinding (const uint64_t & aPeerNodeId)
NewBinding (void)
StartTransaction ( DMTransaction *aTransaction, Binding *aBinding)
StartTransaction ( DMTransaction *aTransaction)
StatusResponse ( ExchangeContext *aExchangeCtx, StatusReport & aStatus)

ชั้นเรียน

NL :: สาน :: โปรไฟล์ :: DataManagement_Legacy :: ProtocolEngine :: DMTransaction

คุณสมบัติที่ได้รับการป้องกัน

mBindingTable

Binding mBindingTable[kBindingTableSize]

ProtocolEngine มีตารางผูกพันว่าถ้าเครื่องยนต์จะเป็นผู้รับผิดชอบในการอะไรมากกว่าแค่การรับการแจ้งเตือนการออกอากาศอาจจะต้องมีอย่างน้อยหนึ่งรายการ

โดยทั่วไปการโยงจะถูกสร้างดัชนีโดย ID โหนด สิ่งนี้หมายความว่าแต่ละเอ็นจิ้นสามารถผูกกับจุดปลายบริการที่กำหนดได้เพียงจุดเดียว

ข้อกำหนด WDM มีแนวคิดของ "การรวมค่าเริ่มต้น" ซึ่งเป็นข้อความที่ส่งไปหากไม่มีการระบุปลายทางที่ชัดเจน ส่วนใหญ่จะใช้ในอุปกรณ์ธรรมดาๆ ที่มีการผูกมัดเดียวหรือการผูกจำนวนน้อย และเพื่อวัตถุประสงค์อื่น จะเป็นเพียงการผูกครั้งแรกที่เกิดขึ้น

mExchangeMgr

WeaveExchangeManager * mExchangeMgr

mResponseTimeout

uint32_t mResponseTimeout

mTransactionTable

TransactionTableEntry mTransactionTable[kTransactionTableSize]

งานสาธารณะ

BindConfirm

virtual WEAVE_ERROR BindConfirm(
  Binding *aBinding
)

จัดการการยืนยันว่าคำขอผูกเสร็จสมบูรณ์แล้ว

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

รายละเอียด
พารามิเตอร์
[in] aBinding
ตัวชี้ไปยังการผูกที่เสร็จสมบูรณ์
คืนสินค้า
WEAVE_NO_ERROR ประสบความสำเร็จใน มิฉะนั้นกลับ WEAVE_ERROR สะท้อนให้เห็นถึงการไร้ความสามารถที่จะเริ่มต้นการทำธุรกรรม

BindConfirm

virtual WEAVE_ERROR BindConfirm(
  Binding *aBinding,
  StatusReport & aReport
)

จัดการการยืนยันว่าคำขอผูกล้มเหลว

เมื่อคำขอผูกล้มเหลว กลไกจัดการโปรโตคอลต้องผ่านตารางธุรกรรมและล้มเหลวในการทำธุรกรรมใดๆ ขึ้นอยู่กับการผูก

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

BindRequest

WEAVE_ERROR BindRequest(
  const uint64_t & aPeerNodeId,
  uint8_t aTransport
)

ขอการเชื่อมโยงโดยใช้เพียร์โหนด ID ที่รู้จักและตัวระบุการขนส่ง

ระบุเพียร์โหนด ID และข้อกำหนดการขนส่ง คำขอนี้ตั้งค่าการเชื่อมโยงไปยังเพียร์นั้น การประมูลจะต้องดำเนินการให้เสร็จสิ้นเพิ่มเติมก็ต่อเมื่อการขนส่งเป็น TCP หากมีการเชื่อมโยงไปยังเพียร์อยู่แล้ว จะถูกนำมาใช้ใหม่

รายละเอียด
พารามิเตอร์
[in] aPeerNodeId
การอ้างอิงถึง ID โหนด 64 บิตของเอนทิตีเพียร์ที่เป็นเป้าหมายการโยง
[in] aTransport
การขนส่งไปใช้.
คืนสินค้า
WEAVE_NO_ERROR กับความสำเร็จหรือ WEAVE_ERROR_NO_MEMORY ถ้าตารางผูกพันที่เต็มไปด้วย มิฉะนั้นกลับ WEAVE_ERROR สะท้อนให้เห็นถึงความล้มเหลวในการเริ่มต้นผูกพัน
ดูสิ่งนี้ด้วย:
WeaveTransportOption

BindRequest

WEAVE_ERROR BindRequest(
  const uint64_t & aPeerNodeId
)

ผูกกับเพียร์ที่รู้จักโดยใช้การส่งข้อมูลเริ่มต้น

รายละเอียด
พารามิเตอร์
[in] aPeerNodeId
การอ้างอิงถึง ID โหนด 64 บิตของเอนทิตีเพียร์ที่เป็นเป้าหมายการโยง
คืนสินค้า
WEAVE_NO_ERROR ประสบความสำเร็จใน มิฉะนั้นกลับ WEAVE_ERROR สะท้อนให้เห็นถึงความล้มเหลวของการดำเนินการผูก

BindRequest

WEAVE_ERROR BindRequest(
  nl::Weave::Profiles::ServiceDirectory::WeaveServiceManager *aServiceMgr,
  WeaveAuthMode aAuthMode
)

BindRequest

WEAVE_ERROR BindRequest(
  WeaveConnection *aConnection
)

ขอการผูกโดยใช้การเชื่อมต่อ Weave ที่ใช้งานอยู่

การผูกมัดอาจถูกสร้างขึ้นโดยใช้การเชื่อมต่อที่มีอยู่และเปิดอยู่ โปรดทราบว่าการผูกที่สร้างขึ้นในลักษณะนี้ไม่จำเป็นต้องเสร็จสิ้นเพิ่มเติม

รายละเอียด
พารามิเตอร์
[in] aConnection
ตัวชี้ไปยังการเชื่อมต่อแบบสานที่จะใช้โดยการผูก
คืนสินค้า
WEAVE_NO_ERROR กับความสำเร็จหรือ WEAVE_ERROR_NO_MEMORY ถ้าตารางผูกพันที่เต็มไปด้วย มิฉะนั้น ส่งคืนข้อผิดพลาดที่แสดงถึงความล้มเหลวในการเริ่มต้นการผูก

IncompleteIndication

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

จัดการข้อบ่งชี้ว่าการผูกล้มเหลว

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

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

IncompleteIndication

virtual void IncompleteIndication(
  const uint64_t & aPeerNodeId,
  StatusReport & aReport
)=0

จัดการกับข้อบ่งชี้ว่าการผูกมัดไม่สมบูรณ์

เลเยอร์ที่สูงกว่าที่ต้องการรับแจ้งความล้มเหลวในการผูกควรใช้วิธีนี้ ซึ่งเพียงแค่ส่งรหัสเพียร์ไปพร้อมกับรายงานสถานะ ในความเป็นจริงเนื่องจากวิธีนี้เป็นเสมือนโมฆะใด ๆ DMClient หรือ DMPublisher subclass ต้องจัดให้มีการดำเนินงาน

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

ในนั้น

virtual WEAVE_ERROR Init(
  WeaveExchangeManager *aExchangeMgr
)

ในนั้น

virtual WEAVE_ERROR Init(
  WeaveExchangeManager *aExchangeMgr,
  uint32_t aResponseTimeout
)

ProtocolEngine

 ProtocolEngine(
  void
)

ยกเลิกการผูกคำขอ

void UnbindRequest(
  const uint64_t & aPeerNodeId
)

ขอให้ยกเลิกการผูกและลบออกจากตารางการผูก

เมื่อการผูกมัดเป็น "ไม่ผูกมัด" ธุรกรรมใด ๆ ที่ขึ้นอยู่กับปัจจุบันควรถูกลบออกเช่นกัน วิธีนี้จะสรุปธุรกรรมทั้งหมดที่มีการผูกมัดนี้โดยอัตโนมัติ

รายละเอียด
พารามิเตอร์
[in] aPeerNodeId
การอ้างอิงถึง ID โหนด 64 บิตหรือจุดสิ้นสุดของบริการที่ระบุการเชื่อมโยง
ดูสิ่งนี้ด้วย:
UnbindRequest (const uint64_t, WEAVE_ERROR)

ยกเลิกการผูกคำขอ

void UnbindRequest(
  const uint64_t & aPeerNodeId,
  WEAVE_ERROR aErr
)

ขอให้ยกเลิกการผูกและลบออกจากตารางการผูก

เมื่อการผูกมัดเป็น "ไม่ผูกมัด" ธุรกรรมใด ๆ ที่ขึ้นอยู่กับปัจจุบันควรถูกลบออกเช่นกัน วิธีนี้จะสรุปธุรกรรมทั้งหมดที่มีการผูกมัดนี้โดยอัตโนมัติ

รายละเอียด
พารามิเตอร์
[in] aPeerNodeId
การอ้างอิงถึง ID โหนด 64 บิตหรือจุดสิ้นสุดของบริการที่ระบุการเชื่อมโยง
[in] aErr
WEAVE_NO_ERROR หากไม่มีเหตุผลเฉพาะสำหรับคำขอยกเลิกการเชื่อมโยงนี้ มิฉะนั้น สาเหตุของข้อผิดพลาดจะถูกส่งต่อ
ดูสิ่งนี้ด้วย:
UnbindRequest (const uint64_t)

~ProtocolEngine

virtual  ~ProtocolEngine(
  void
)

ฟังก์ชันที่ได้รับการป้องกัน

ชัดเจน

void Clear(
  void
)

ClearBindingTable

void ClearBindingTable(
  void
)

ClearTransactionTable

void ClearTransactionTable(
  void
)

Dequeueธุรกรรม

void DequeueTransaction(
  DMTransaction *aTransaction
)

เข้าคิวธุรกรรม

WEAVE_ERROR EnqueueTransaction(
  DMTransaction *aTransaction,
  Binding *aBinding
)

เข้าคิวธุรกรรม

WEAVE_ERROR EnqueueTransaction(
  DMTransaction *aTransaction
)

ธุรกรรมที่ล้มเหลว

bool FailTransactions(
  Binding *aBinding,
  StatusReport & aReport
)

จบ

virtual void Finalize(
  void
)

FinalizeBindingTable

void FinalizeBindingTable(
  void
)

FinalizeTransactionTable

void FinalizeTransactionTable(
  void
)

จบธุรกรรม

void FinalizeTransactions(
  Binding *aBinding
)

จากExchangeCtx

Binding * FromExchangeCtx(
  ExchangeContext *aExchangeCtx
)

รับผูก

Binding * GetBinding(
  const uint64_t & aPeerNodeId
)

ผูกใหม่

Binding * NewBinding(
  void
)

เริ่มการทำธุรกรรม

WEAVE_ERROR StartTransaction(
  DMTransaction *aTransaction,
  Binding *aBinding
)

เริ่มการทำธุรกรรม

WEAVE_ERROR StartTransaction(
  DMTransaction *aTransaction
)

StatusResponse

WEAVE_ERROR StatusResponse(
  ExchangeContext *aExchangeCtx,
  StatusReport & aStatus
)