chain library

Classes

Chain<Initial, Final>
A type-safe implementation of Chain of Responsibility pattern that transforms data through a sequence of processing steps.
ChainContext
Shared execution context for chain steps that provides metadata storage and execution control capabilities.
ChainStep<Input, Output>
Base class for all chain processing steps that defines type-safe data transformation and error handling behavior.
StepListener
Listener for step execution events that allows tracking chain progress.
StepMetrics
Immutable metrics data for a single step execution
StepState<Input, Output>
Immutable state of a single step execution that holds all execution details.

Enums

StepStatus
Status of step execution that represents current state of processing.

Mixins

ConditionalStep<Input, Output>
Adds conditional execution capability to a chain step.
MetricsStep<Input, Output>
Adds metrics collection capability to a chain step.
VerboseStep<Input, Output>
Mixin that adds logging and execution control capabilities to steps.

Exceptions / Errors

ChainAbortedException
Thrown when chain execution is aborted
ChainRollbackException
Thrown when rollback fails