nl:: Weave:: Profiles:: DataManagement_Current:: NotificationEngine:: NotifyRequestBuilder
#include <src/lib/profiles/data-management/Current/NotificationEngine.h>
這可提供輔助類別,以便組合通知,並去除訊息的建構和結構。
摘要
這是 MessageDef.cpp 中所提供之類似類別的精簡版本,旨在敏感裝置的閃光燈和 RAM。
公用函式 |
|
---|---|
Checkpoint(TLV::TLVWriter & aPoint)
|
將要求狀態檢查至 TLVWriter。
|
EndDataList()
|
結束資料清單陣列的建構。
|
EndEventList()
|
結束事件清單的建立作業。
|
EndNotifyRequest()
|
結束通知的建構。
|
GetWriter(void)
|
|
Init(PacketBuffer *aBuf, TLV::TLVWriter *aWriter, SubscriptionHandler *aSubHandler, uint32_t aMaxPayloadSize)
|
初始化建構工具。
|
MoveToState(NotifyRequestBuilderState aDesiredState)
|
主要狀態轉換函式。
|
Rollback(TLV::TLVWriter & aPoint)
|
將要求狀態復原至檢查點 TLVWriter。
|
StartDataList(void)
|
開始建構資料清單陣列。
|
StartEventList()
|
開始建立事件清單。
|
StartNotifyRequest()
|
開始建構通知。
|
WriteDataElement(TraitDataHandle aTraitDataHandle, PropertyPathHandle aPropertyPathHandle, SchemaVersion aSchemaVersion, PropertyPathHandle *aMergeDataHandleSet, uint32_t aNumMergeDataHandles, PropertyPathHandle *aDeleteHandleSet, uint32_t aNumDeleteHandles)
|
針對特徵路徑,寫出與該路徑相關聯的資料元素。
|
公用函式
Checkpoint
WEAVE_ERROR Checkpoint( TLV::TLVWriter & aPoint )
EndDataList
WEAVE_ERROR EndDataList()
結束資料清單陣列的建構。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
傳回值 |
|
EndEventList
WEAVE_ERROR EndEventList()
結束事件清單的建立作業。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
傳回值 |
|
EndNotifyRequest
WEAVE_ERROR EndNotifyRequest()
結束通知的建構。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
傳回值 |
|
GetWriter
TLV::TLVWriter * GetWriter( void )
Init
WEAVE_ERROR Init( PacketBuffer *aBuf, TLV::TLVWriter *aWriter, SubscriptionHandler *aSubHandler, uint32_t aMaxPayloadSize )
初始化建構工具。
只能呼叫一次。
詳細說明 | |||||
---|---|---|---|---|---|
傳回值 |
|
MoveToState
WEAVE_ERROR MoveToState( NotifyRequestBuilderState aDesiredState )
主要狀態轉換函式。
這個函式會採用所需狀態 (也就是我們想連線的通知要求建構工具階段),然後將要求轉換為該狀態。如果所需狀態與目前狀態相同,函式就不會執行任何動作。否則,系統會分配 PacketBuffer (如有需要)。該函式會先將要求轉換為頂層通知要求 (視需要開啟通知要求 TLV 結構,或視需要關閉目前的 TLV 資料容器),然後開啟適當的 TLV 資料容器或關閉整體 Notification 要求,藉此轉換 Notification 要求。
詳細說明 | |||||||||
---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||
傳回值 |
|
復原
WEAVE_ERROR Rollback( TLV::TLVWriter & aPoint )
將要求狀態復原至檢查點 TLVWriter。
詳細說明 | |||
---|---|---|---|
參數 |
|
||
傳回值 |
|
StartDataList
WEAVE_ERROR StartDataList( void )
開始建構資料清單陣列。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
傳回值 |
|
StartEventList
WEAVE_ERROR StartEventList()
開始建立事件清單。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
傳回值 |
|
StartNotifyRequest
WEAVE_ERROR StartNotifyRequest()
開始建構通知。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
傳回值 |
|
WriteDataElement
WEAVE_ERROR WriteDataElement( TraitDataHandle aTraitDataHandle, PropertyPathHandle aPropertyPathHandle, SchemaVersion aSchemaVersion, PropertyPathHandle *aMergeDataHandleSet, uint32_t aNumMergeDataHandles, PropertyPathHandle *aDeleteHandleSet, uint32_t aNumDeleteHandles )
針對特徵路徑,寫出與該路徑相關聯的資料元素。
呼叫端也可視需要傳入控制代碼集,藉此利用父項屬性路徑控點中一組較窄的直接子項節點,執行合併作業。
詳細說明 | |||||
---|---|---|---|---|---|
傳回值 |
|