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. null means 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 feature is 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.