ProjectionManager class
Manages multiple projections using Akka Persistence-style streaming.
The ProjectionManager is responsible for:
- Registering and managing projections
- Subscribing projections to event streams
- Coordinating projection catch-up and rebuild operations
- Monitoring projection health and performance
- Automatic checkpoint persistence (when Isar is provided)
This follows the Akka Persistence Query pattern where projections subscribe to event streams rather than receiving manually routed events.
Constructors
- ProjectionManager(EventStream _eventStream, {Isar? isar, int checkpointBatchSize = 100})
- Create a ProjectionManager with optional Isar for checkpoint persistence
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
getProjectionInfo(
String projectionId) → Future< ProjectionInfo?> - Get information about a specific projection
-
getProjectionInfos(
) → List< ProjectionInfo> - Get information about all registered projections
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
pauseProjection(
String projectionId) → Future< void> - Pause a projection (cancels its event stream subscription)
-
rebuildProjection(
String projectionId) → Future< void> - Rebuild a projection from scratch
-
registerProjection<
TReadModel> (Projection< TReadModel> projection) → Future<void> - Register a projection with the manager
-
resumeProjection(
String projectionId) → Future< void> - Resume a projection (resubscribes to event stream)
-
start(
) → Future< void> - Start the projection manager and begin streaming events
-
stop(
) → Future< void> - Stop the projection manager
-
toString(
) → String -
A string representation of this object.
inherited
-
unregisterProjection(
String projectionId) → Future< void> - Unregister a projection
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited