SubsystemClassDesc class

Description of a subsystem class implementation.

Enables instantiation, lookup, and configuration overrides for subsystems managed by SubsystemInstanceRegistry.

Identifies one concrete implementation (serviceClassId) behind a SubsystemTypeDesc category. Callers that only know the SubsystemTypeDesc (e.g. a shared package) never need to reference a SubsystemClassDesc directly; it's the consuming app's job to register the right one — see example/example.dart.

Constructors

SubsystemClassDesc({required SubsystemTypeDesc serviceType, SubsystemBuilder<Subsystem>? defaultBuilder, required String displayName, required String description, required String serviceClassId, List<SubsystemRequirement> requirements = const []})

Properties

defaultBuilder → SubsystemBuilder<Subsystem>?
Default builder function to instantiate the subsystem.
final
description → String
final
displayName → String
final
hashCode → int
The hash code for this object.
no setterinherited
requirements → List<SubsystemRequirement>
Requirements and incompatibilities checked before this class is built.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
serviceClassId → String
Unique identifier of this implementation within its serviceType.
final
serviceType → SubsystemTypeDesc
The service type category this class belongs to.
final

Methods

getInstance<TSubsystem extends Subsystem>() → TSubsystem?
Retrieves the registered instance of this subsystem.
isValid() → bool
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
override

Operators

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