NodeCapabilities class
What a node can do, advertised to the Hub after registration and relayed to clients during discovery.
- Annotations
-
- @immutable
Constructors
-
NodeCapabilities({required List<
String> shells, required List<String> features, required int maxSessions, String? directEndpoint}) -
Creates node capabilities.
const
-
NodeCapabilities.defaults({List<
String> ? shells}) -
A conservative default: a single login shell, exec + interactive support,
file transfer and OmnyDrive mounts, tunnel-only, modest session cap.
factory
Properties
- directEndpoint → String?
-
Optional directly-reachable endpoint (
host:port) for the direct-resolution connection strategy.nullmeans the node is only reachable via the Hub tunnel.final -
features
→ List<
String> -
Named features the node supports (e.g.
exec,shell,resize,signals).final - hashCode → int
-
The hash code for this object.
no setterinherited
- maxSessions → int
-
Maximum number of concurrent sessions the node will accept.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
shells
→ List<
String> -
Shells the node can launch (e.g.
bash,sh,pwsh).final
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
supports(
String feature) → bool -
Whether the named
featureis supported. -
toJson(
) → Map< String, dynamic> - Serializes to a JSON map.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
fromJson(
Map< String, dynamic> json) → NodeCapabilities - Decodes from a JSON map.