SagaManager<AR, A, ARM, AM> class abstract interface

Coordinates saga reactions and action publishing.

A saga manager computes actions from action results, then delegates publishing to an ActionPublisher. Metadata-aware methods preserve metadata across that boundary.

  • AR: action result type
  • A: action type
  • ARM: action-result metadata type
  • AM: action metadata type
Implemented types

Properties

hashCode int
The hash code for this object.
no setterinherited
react React<AR, A>
Emits follow-up actions for an action result.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

computeNewActions(AR actionResult) Stream<A>
Computes actions for actionResult without publishing them.
handle(AR actionResult) Stream<A>
Computes and publishes actions for actionResult.
handleAll(Stream<AR> actionResults) Stream<A>
Computes and publishes actions for all actionResults.
handleAllWithMetadata(Stream<(AR, ARM)> actionResults) Stream<(A, AM)>
Computes and publishes actions for all metadata-bearing actionResults.
handleWithMetadata(AR actionResult, ARM metadata) Stream<(A, AM)>
Computes and publishes actions for actionResult with metadata.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
publish(Stream<A> actions) Stream<A>
Publishes actions.
inherited
publishWithMetadata(Stream<(A, ARM)> actions) Stream<(A, AM)>
Publishes actions paired with action-result metadata.
inherited
toString() String
A string representation of this object.
inherited

Operators

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