Skip to main content

ranvier_runtime/
lib.rs

1#![allow(deprecated)]
2
3pub mod axon;
4pub mod persistence;
5pub mod replay;
6pub mod testkit;
7pub mod distributed;
8
9pub mod prelude {
10    pub use crate::axon::{Axon, SchematicExportRequest};
11    pub use crate::persistence::{
12        CompensationAutoTrigger, CompensationContext, CompensationHandle, CompensationHook,
13        CompensationIdempotencyHandle, CompensationIdempotencyStore, CompensationRetryPolicy,
14        CompletionState, InMemoryCompensationIdempotencyStore, InMemoryPersistenceStore,
15        PersistedTrace, PersistenceAutoComplete, PersistenceEnvelope, PersistenceHandle,
16        PersistenceStore, PersistenceTraceId, ResumeCursor,
17    };
18    #[cfg(feature = "persistence-postgres")]
19    pub use crate::persistence::{PostgresCompensationIdempotencyStore, PostgresPersistenceStore};
20    #[cfg(feature = "persistence-redis")]
21    pub use crate::persistence::{RedisCompensationIdempotencyStore, RedisPersistenceStore};
22    pub use crate::replay::ReplayEngine;
23    pub use crate::testkit::AxonTestKit;
24    pub use crate::distributed::{
25        DistributedError, DistributedLock, DistributedStore, Guard, LockOptions,
26    };
27}
28
29pub use axon::{Axon, SchematicExportRequest};
30pub use persistence::{
31    CompensationAutoTrigger, CompensationContext, CompensationHandle, CompensationHook,
32    CompensationIdempotencyHandle, CompensationIdempotencyStore, CompensationRetryPolicy,
33    CompletionState, InMemoryCompensationIdempotencyStore, InMemoryPersistenceStore,
34    PersistedTrace, PersistenceAutoComplete, PersistenceEnvelope, PersistenceHandle,
35    PersistenceStore, PersistenceTraceId, ResumeCursor,
36};
37#[cfg(feature = "persistence-postgres")]
38pub use persistence::{PostgresCompensationIdempotencyStore, PostgresPersistenceStore};
39#[cfg(feature = "persistence-redis")]
40pub use persistence::{RedisCompensationIdempotencyStore, RedisPersistenceStore};
41pub use replay::ReplayEngine;
42pub use testkit::AxonTestKit;
43pub use distributed::{
44    DistributedError, DistributedLock, DistributedStore, Guard, LockOptions,
45};