ITransportConfig class abstract interface

Interface for all transport configurations.

A config knows how to build its own transport. That is deliberately a method here rather than a global transport registry: a registry would need every transport to register itself at library-initialisation time, which makes each one reachable from the core barrel and therefore un-tree-shakable — so an app using only LSL would still compile in the WebSocket transport and its dependencies. With this shape the only reference to a transport class is from its own config, which nothing reaches unless the application names it.

(If CoordinationConfig.fromMap is ever implemented, deserialisation will need a registry keyed by a transportKind discriminator. Put it in the deserialiser alone, so only callers who ask for it pay for it.)

Implemented types
Implementers

Properties

description → String?
Returns a description of the identity.
no setterinherited
hashCode → int
The hash code for this object.
no setterinherited
id → String
Returns a unique identifier for the identity.
no setterinherited
name → String
Returns a human-readable name for the identity.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

copyWith() → IConfig
Creates a copy with modified values
inherited
createTransport() → ITransport<ITransportConfig>
Builds a transport from this configuration.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toMap() → Map<String, dynamic>
Converts the object to a map representation for serialization.
inherited
toString() → String
A string representation of this object.
inherited
validate({bool throwOnError = false}) → bool
Validates the configuration
inherited

Operators

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