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.