interceptor

fun interceptor(interceptor: SagaInterceptor<C, R, Unit>): SagaBuilder<C, R>

Register an interceptor to observe and potentially veto saga step execution.

Interceptors are invoked before and after each step (StepPhase.Before → StepPhase.After, LIFO for After), and after each compensation action (StepPhase.Compensation). An interceptor returning InterceptorOutcome.Veto from a StepPhase.Before phase prevents the step from executing and initiates compensation of prior completed steps.

Registration order matters — see SagaInterceptor for ordering semantics.

Return

This builder for method chaining

Parameters

interceptor

The interceptor to register


fun interceptor(handler: suspend (StepPhase<C, R, Unit>) -> InterceptorOutcome): SagaBuilder<C, R>

Register an interceptor using a lambda.

Convenience method for creating an interceptor from a suspend lambda.

Return

This builder for method chaining

Parameters

handler

Suspend function that intercepts step phases