Subsystem class abstract

Base class for all managed subsystems.

Subsystems are singletons managed within a SubsystemTypeDesc scope by SubsystemInstanceRegistry.

Lifecycle progression:

  1. Construction: beginConstruct -> postConstruct (synchronous)
  2. Initialization: initialize -> postInitialize (asynchronous)
  3. Teardown: dispose -> finalDispose (asynchronous, idempotent)

Constructors

Subsystem({required SubsystemClassDesc classDesc, List<SubsystemRequirement> requirements = const []})

Properties

classDesc → SubsystemClassDesc
final
hashCode → int
The hash code for this object.
no setterinherited
isConstructed → bool
Indicates whether construction hooks have completed.
no setter
isDisposed → bool
Indicates whether the subsystem has been disposed.
no setter
isInitialized → bool
Indicates whether asynchronous initialization has completed successfully.
no setter
requirements → List<SubsystemRequirement>
Requirements and incompatibilities specific to this instance, checked before registration.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

assertNotDisposed() → void
Throws a StateError if this subsystem has already been disposed.
beginConstruct(BuildServiceParameters params) → void
Synchronous preparation immediately after instantiation.
dispose() → Future<void>
Primary teardown hook for releasing allocated resources and listeners.
finalDispose() → Future<void>
Final teardown hook executed after dispose, guaranteed even if dispose throws.
initialize(BuildServiceParameters params) → Future<void>
Asynchronous initialization hook for loading resources, services, or data.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
postConstruct(BuildServiceParameters params) → void
Synchronous post-instantiation hook.
postInitialize(BuildServiceParameters params) → Future<void>
Asynchronous post-initialization hook called after all batch subsystems are initialized.
toString() → String
A string representation of this object.
inherited

Operators

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