Skip to main content

InfallibleAxon

Type Alias InfallibleAxon 

Source
pub type InfallibleAxon<In, Out, Res = ()> = Axon<In, Out, Never, Res>;
Expand description

Axon with Never error — for pipelines that cannot fail.

Uses ranvier_core::Never instead of std::convert::Infallible because Never satisfies the Serialize + DeserializeOwned bounds required by Axon.

Aliased Type§

pub struct InfallibleAxon<In, Out, Res = ()> {
    pub schematic: Schematic,
    pub execution_mode: ExecutionMode,
    pub persistence_store: Option<Arc<dyn PersistenceStore>>,
    pub audit_sink: Option<Arc<dyn AuditSink>>,
    pub dlq_sink: Option<Arc<dyn DlqSink>>,
    pub dlq_policy: DlqPolicy,
    pub dynamic_dlq_policy: Option<DynamicPolicy<DlqPolicy>>,
    pub saga_policy: SagaPolicy,
    pub dynamic_saga_policy: Option<DynamicPolicy<SagaPolicy>>,
    pub saga_compensation_registry: Arc<RwLock<SagaCompensationRegistry<Never, Res>>>,
    pub iam_handle: Option<IamHandle>,
    /* private fields */
}

Fields§

§schematic: Schematic

The static structure (for visualization/analysis)

§execution_mode: ExecutionMode

How this Axon is executed across the cluster

§persistence_store: Option<Arc<dyn PersistenceStore>>

Optional persistence store for state inspection

§audit_sink: Option<Arc<dyn AuditSink>>

Optional audit sink for tamper-evident logging of interventions

§dlq_sink: Option<Arc<dyn DlqSink>>

Optional dead-letter queue sink for storing failed events

§dlq_policy: DlqPolicy

Policy for handling event failures

§dynamic_dlq_policy: Option<DynamicPolicy<DlqPolicy>>

Optional dynamic (hot-reloadable) DLQ policy — takes precedence over static dlq_policy

§saga_policy: SagaPolicy

Policy for automated saga compensation

§dynamic_saga_policy: Option<DynamicPolicy<SagaPolicy>>

Optional dynamic (hot-reloadable) Saga policy — takes precedence over static saga_policy

§saga_compensation_registry: Arc<RwLock<SagaCompensationRegistry<Never, Res>>>

Registry for Saga compensation handlers

§iam_handle: Option<IamHandle>

Optional IAM handle for identity verification at the Schematic boundary