NL::編織::編織交換管理器
#include <src/lib/core/WeaveExchangeMgr.h>
此類用於管理與其他 Weave 節點的 ExchangeContext。
概括
它代表更高層工作,創建 ExchangeContexts 並處理未經請求的消息處理程序的註冊/取消註冊。
構造函數和析構函數 | |
---|---|
WeaveExchangeManager (void) 構造函數WeaveExchangeManager類。 |
公共類型 | |
---|---|
State { | 枚舉 |
公共屬性 | |
---|---|
FabricState | [只讀] 關聯的 FabricState 對象。 |
MessageLayer | [READ ONLY]關聯WeaveMessageLayer對象。 |
State | uint8_t [READ ONLY]所述的狀態WeaveExchangeManager對象。 |
公共職能 | |
---|---|
AllowUnsolicitedMessages ( WeaveConnection *con) | void 允許在指定的連接上接收未經請求的消息。 |
ClearMsgCounterSyncReq (uint64_t peerNodeId) | void 清除發送給該對等方的所有待處理消息的 MsgCounterSyncReq 標誌。 |
FindContext (uint64_t peerNodeId, WeaveConnection *con, void *appState, bool isInitiator) | 找到ExchangeContext從匹配一組給定的參數池。 |
Init ( WeaveMessageLayer *msgLayer) | 初始化WeaveExchangeManager對象。 |
NewBinding (Binding::EventCallback eventCallback, void *appState) | Binding * 分配一個新的綁定與提供的參數。 |
NewContext (const uint64_t & peerNodeId, void *appState) | 創建一個新的ExchangeContext與由對等節點標識符所指定的給定對等編織節點。 |
NewContext (const uint64_t & peerNodeId, const IPAddress & peerAddr, void *appState) | 創建一個新的ExchangeContext與由對等節點標識符和對端IP地址所指定的給定對等編織節點。 |
NewContext (const uint64_t & peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId sendIntfId, void *appState) | 創建一個新的ExchangeContext與由對等節點標識符,對端IP地址,並且在指定接口上的目的端口指定給定對等編織節點。 |
NewContext ( WeaveConnection *con, void *appState) | 創建一個新的ExchangeContext超過規定的給定對等節點織WeaveConnection 。 |
RegisterUnsolicitedMessageHandler (uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, void *appState) | 為給定的配置文件標識符註冊一個未經請求的消息處理程序。 |
RegisterUnsolicitedMessageHandler (uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState) | 為給定的配置文件標識符註冊一個未經請求的消息處理程序。 |
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, void *appState) | 為給定的配置文件標識符和消息類型註冊一個未經請求的消息處理程序。 |
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState) | 為給定的配置文件標識符和消息類型註冊一個未經請求的消息處理程序。 |
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, void *appState) | 為指定的 Weave 連接上的給定配置文件標識符、消息類型註冊未經請求的消息處理程序。 |
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState) | 在指定的 Weave 連接上為給定的配置文件標識符、消息類型註冊未經請求的消息處理程序。 |
Shutdown (void) | |
UnregisterUnsolicitedMessageHandler (uint32_t profileId) | 為給定的配置文件標識符取消註冊未經請求的消息處理程序。 |
UnregisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType) | 為給定的配置文件標識符和消息類型取消註冊未經請求的消息處理程序。 |
UnregisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con) | 為給定的配置文件標識符、消息類型和 Weave 連接取消註冊未經請求的消息處理程序。 |
公共類型
狀態
State
特性 | |
---|---|
kState_Initialized | 用於指示WeaveExchangeManager被初始化。 |
kState_NotInitialized | 用於指示WeaveExchangeManager未初始化。 |
公共屬性
公共職能
允許不請自來的消息
void AllowUnsolicitedMessages( WeaveConnection *con )
允許在指定的連接上接收未經請求的消息。
此方法在給定的 Weave 連接上設置消息接收處理程序。
細節 | |||
---|---|---|---|
參數 |
|
清除消息計數器同步請求
void ClearMsgCounterSyncReq( uint64_t peerNodeId )
清除發送給該對等方的所有待處理消息的 MsgCounterSyncReq 標誌。
細節 | |||
---|---|---|---|
參數 |
|
查找上下文
ExchangeContext * FindContext( uint64_t peerNodeId, WeaveConnection *con, void *appState, bool isInitiator )
找到ExchangeContext從匹配一組給定的參數池。
細節 | |||||||||
---|---|---|---|---|---|---|---|---|---|
參數 |
| ||||||||
退貨 | 的指針ExchangeContext對象相匹配的所提供的參數成功時,NULL上不匹配。 |
在裡面
WEAVE_ERROR Init( WeaveMessageLayer *msgLayer )
初始化WeaveExchangeManager對象。
在此實例的生命週期內,此方法在對象構造後調用一次,直到調用 Shutdown 以終止實例。
細節 | |||||
---|---|---|---|---|---|
參數 |
| ||||
返回值 |
|
新綁定
Binding * NewBinding( Binding::EventCallback eventCallback, void *appState )
新建上下文
ExchangeContext * NewContext( const uint64_t & peerNodeId, void *appState )
創建一個新的ExchangeContext與由對等節點標識符所指定的給定對等編織節點。
細節 | |||||
---|---|---|---|---|---|
參數 |
| ||||
退貨 | 的指針創建ExchangeContext對象上的成功。否則,如果沒有對象可以分配或可用,則為 NULL。 |
新建上下文
ExchangeContext * NewContext( const uint64_t & peerNodeId, const IPAddress & peerAddr, void *appState )
創建一個新的ExchangeContext與由對等節點標識符和對端IP地址所指定的給定對等編織節點。
細節 | |||||||
---|---|---|---|---|---|---|---|
參數 |
| ||||||
退貨 | 的指針創建ExchangeContext對象上的成功。否則,如果沒有對象可以分配或可用,則為 NULL。 |
新建上下文
ExchangeContext * NewContext( const uint64_t & peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId sendIntfId, void *appState )
創建一個新的ExchangeContext與由對等節點標識符,對端IP地址,並且在指定接口上的目的端口指定給定對等編織節點。
細節 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
| ||||||||||
退貨 | 的指針創建ExchangeContext對象上的成功。否則,如果沒有對象可以分配或可用,則為 NULL。 |
新建上下文
ExchangeContext * NewContext( WeaveConnection *con, void *appState )
創建一個新的ExchangeContext超過規定的給定對等節點織WeaveConnection 。
細節 | |||||
---|---|---|---|---|---|
參數 |
| ||||
退貨 | 的指針創建ExchangeContext對象上的成功。否則,如果沒有對象可以分配或可用,則為 NULL。 |
註冊UnsolicitedMessageHandler
WEAVE_ERROR RegisterUnsolicitedMessageHandler( uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, void *appState )
為給定的配置文件標識符註冊一個未經請求的消息處理程序。
將為給定配置文件的所有消息調用此處理程序。
細節 | |||||||
---|---|---|---|---|---|---|---|
參數 |
| ||||||
返回值 |
|
註冊UnsolicitedMessageHandler
WEAVE_ERROR RegisterUnsolicitedMessageHandler( uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState )
為給定的配置文件標識符註冊一個未經請求的消息處理程序。
將為給定配置文件的所有消息調用此處理程序。
細節 | |||||||||
---|---|---|---|---|---|---|---|---|---|
參數 |
| ||||||||
返回值 |
|
註冊UnsolicitedMessageHandler
WEAVE_ERROR RegisterUnsolicitedMessageHandler( uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, void *appState )
為給定的配置文件標識符和消息類型註冊一個未經請求的消息處理程序。
細節 | |||||||||
---|---|---|---|---|---|---|---|---|---|
參數 |
| ||||||||
返回值 |
|
註冊UnsolicitedMessageHandler
WEAVE_ERROR RegisterUnsolicitedMessageHandler( uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState )
為給定的配置文件標識符和消息類型註冊一個未經請求的消息處理程序。
細節 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
| ||||||||||
返回值 |
|
註冊UnsolicitedMessageHandler
WEAVE_ERROR RegisterUnsolicitedMessageHandler( uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, void *appState )
在指定的 Weave 連接上為給定的配置文件標識符、消息類型註冊未經請求的消息處理程序。
細節 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
| ||||||||||
返回值 |
|
註冊UnsolicitedMessageHandler
WEAVE_ERROR RegisterUnsolicitedMessageHandler( uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState )
在指定的 Weave 連接上為給定的配置文件標識符、消息類型註冊未經請求的消息處理程序。
細節 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
| ||||||||||||
返回值 |
|
取消註冊UnsolicitedMessageHandler
WEAVE_ERROR UnregisterUnsolicitedMessageHandler( uint32_t profileId )
為給定的配置文件標識符取消註冊未經請求的消息處理程序。
細節 | |||||
---|---|---|---|---|---|
參數 |
| ||||
返回值 |
|
取消註冊UnsolicitedMessageHandler
WEAVE_ERROR UnregisterUnsolicitedMessageHandler( uint32_t profileId, uint8_t msgType )
為給定的配置文件標識符和消息類型取消註冊未經請求的消息處理程序。
細節 | |||||
---|---|---|---|---|---|
參數 |
| ||||
返回值 |
|
取消註冊UnsolicitedMessageHandler
WEAVE_ERROR UnregisterUnsolicitedMessageHandler( uint32_t profileId, uint8_t msgType, WeaveConnection *con )
為給定的配置文件標識符、消息類型和 Weave 連接取消註冊未經請求的消息處理程序。
細節 | |||||||
---|---|---|---|---|---|---|---|
參數 |
| ||||||
返回值 |
|