ParallelSagaCoordinator

Parallel saga coordinator for executing multiple sagas concurrently.

Useful for scenarios where multiple independent sagas need to run in parallel, such as processing a batch of orders.

Example:

val coordinator = ParallelSagaCoordinator()

val results = coordinator.executeAll(
orders.map { order ->
saga {
step("Process", { processOrder(order) }, { cancelOrder(it) })
}
}
)

Constructors

Link copied to clipboard
constructor()

Functions

Link copied to clipboard
suspend fun <T> executeAll(sagas: List<Saga<T>>): List<SagaResult<T>>

Executes multiple sagas in parallel.

Link copied to clipboard
suspend fun <T> executeWithStats(sagas: List<Saga<T>>): ParallelSagaResult<T>

Executes multiple sagas in parallel and collects statistics.