ConnectionManager class

Manages the lifecycle of connections

Implemented types

Constructors

ConnectionManager({Duration idleTimeout = const Duration(minutes: 5), Duration shutdownTimeout = const Duration(seconds: 30)})
Creates a new connection manager

Properties

activeConnections → int
no setter
hashCode → int
The hash code for this object.
no setterinherited
idleTimeout → Duration
Duration after which an idle connection is considered stale
final
notifiee → Notifiee
Returns an implementation that can be called back to inform of opened and closed connections.
no setteroverride
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
shutdownTimeout → Duration
Duration to wait for graceful shutdown before forcing closure
final

Methods

checkLimit(GetConnLimiter limiter) → String?
Will return an error if the connection manager's internal connection limit exceeds the provided system limit.
override
close() → Future<void>
Closes the connection manager and stops background processes.
override
closeAll() → Future<void>
Closes all managed connections
closeConnection(TransportConn connection) → Future<void>
Initiates graceful shutdown of a connection
override
dispose() → Future<void>
Disposes of the connection manager and releases all resources
override
getState(TransportConn connection) → ConnectionState?
Gets the current state of a connection
override
getStateStream(TransportConn connection) → Stream<ConnectionStateChange>?
Gets the stream of state changes for a connection
override
getTagInfo(PeerId peerId) → TagInfo?
Returns the metadata associated with the peer, or null if no metadata has been recorded for the peer.
override
isPeerProtected(PeerId peerId) → bool
Check if a peer is protected (by PeerId directly) Used by Swarm to check protection before closing connections
isProtected(PeerId peerId, String tag) → bool
Returns true if the peer is protected for some tag; if the tag is the empty string then it will return true if the peer is protected for any tag
override
isProtectedConnection(TransportConn conn) → bool
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
protect(PeerId peerId, String tag) → void
Protects a peer from having its connection(s) pruned.
override
recordActivity(TransportConn connection) → void
Records activity on a connection
override
registerConnection(TransportConn connection) → void
Registers a new connection with the manager
override
tagPeer(PeerId peerId, String tag, int value) → void
Tags a peer with a string, associating a weight with the tag.
override
toString() → String
A string representation of this object.
inherited
trimOpenConns() → Future<void>
Terminates open connections based on an implementation-defined heuristic.
override
unprotect(PeerId peerId, String tag) → bool
Removes a protection that may have been placed on a peer, under the specified tag.
override
untagPeer(PeerId peerId, String tag) → void
Removes the tagged value from the peer.
override
updateState(TransportConn connection, ConnectionState newState, {Object? error}) → void
Updates the state of a connection
override
upsertTag(PeerId peerId, String tag, int upsert(int)) → void
Updates an existing tag or inserts a new one.
override

Operators

operator ==(Object other) → bool
The equality operator.
inherited