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 typeA: action typeARM: action-result metadata typeAM: action metadata type
- Implemented types
-
- SagaContract<
AR, A> - ActionPublisher<
A, ARM, AM>
- SagaContract<
Properties
Methods
-
computeNewActions(
AR actionResult) → Stream< A> -
Computes actions for
actionResultwithout 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
actionResultwithmetadata. -
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
actionspaired with action-result metadata.inherited -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited