class
Matter::Transport::ExchangeManager
- Matter::Transport::ExchangeManager
- Reference
- Object
Overview
Manages multiple exchanges
Defined in:
matter/transport/exchange.crConstructors
Instance Method Summary
-
#active_count : Int32
Get count of active exchanges
-
#cleanup_stale_exchanges : Nil
Clean up timed out exchanges
-
#close_exchange(exchange_id : UInt16) : Nil
Close and remove exchange
-
#create_exchange(protocol_id : UInt16, session_id : UInt16, peer_address : Socket::IPAddress, peer_node_id : DataType::NodeId | Nil = nil) : Exchange
Create new exchange as initiator
-
#get_exchange(exchange_id : UInt16) : Exchange | Nil
Get exchange by ID
-
#get_or_create_exchange(exchange_id : UInt16, protocol_id : UInt16, session_id : UInt16, peer_address : Socket::IPAddress, peer_node_id : DataType::NodeId | Nil = nil, initiator : Bool = false) : Exchange
Get or create exchange for received message
-
#get_retransmit_candidates : Array(Tuple(UInt16, Codec::MessageCodec::Message))
Get all exchanges that need retransmission
Constructor Detail
Instance Method Detail
def create_exchange(protocol_id : UInt16, session_id : UInt16, peer_address : Socket::IPAddress, peer_node_id : DataType::NodeId | Nil = nil) : Exchange
#
Create new exchange as initiator
def get_or_create_exchange(exchange_id : UInt16, protocol_id : UInt16, session_id : UInt16, peer_address : Socket::IPAddress, peer_node_id : DataType::NodeId | Nil = nil, initiator : Bool = false) : Exchange
#
Get or create exchange for received message
def get_retransmit_candidates : Array(Tuple(UInt16, Codec::MessageCodec::Message))
#
Get all exchanges that need retransmission