Skip to main content

atomr_persistence_azure/
lib.rs

1//! atomr-persistence-azure.
2//!
3//! Default backend is Azure Table Storage (feature `tables`), implemented
4//! with a thin REST client so the crate stays compatible with both real
5//! Azure and the Azurite emulator. A `cosmos` feature placeholder is
6//! reserved for the Cosmos SQL API implementation.
7
8mod auth;
9mod config;
10mod entities;
11mod journal;
12mod rest;
13mod snapshot;
14
15pub use auth::SharedKeySigner;
16pub use config::AzureConfig;
17pub use entities::{EventEntity, SnapshotEntity};
18pub use journal::AzureJournal;
19pub use snapshot::AzureSnapshotStore;
20
21#[cfg(feature = "cosmos")]
22pub mod cosmos {
23    //! Placeholder for the Cosmos SQL API provider. Uses the same
24    //! `Journal` + `SnapshotStore` shape as the Tables impl but with
25    //! Cosmos-specific partitioning semantics.
26    pub struct CosmosJournal;
27    pub struct CosmosSnapshotStore;
28}