canic_backup/persistence/
mod.rs1mod artifact_commit;
8mod command_lifetime_lock;
9mod error;
10mod file_lock;
11mod integrity;
12mod journal_lock;
13mod json;
14mod layout;
15
16pub(crate) use artifact_commit::commit_artifact_directory;
17#[cfg(all(
18 test,
19 any(target_os = "linux", target_os = "android", target_vendor = "apple")
20))]
21pub(crate) use artifact_commit::{ArtifactCommitBarrier, commit_artifact_directory_at_barriers};
22pub use command_lifetime_lock::CommandLifetimeHandle;
23pub(crate) use command_lifetime_lock::{CommandLifetimeLock, CommandLifetimeLockError};
24pub use error::PersistenceError;
25pub(crate) use integrity::verify_durable_artifact;
26pub use integrity::{
27 ArtifactIntegrityReport, BackupExecutionIntegrityReport, BackupIntegrityReport,
28 resolve_backup_artifact_path,
29};
30pub(crate) use journal_lock::{JournalLock, JournalLockError};
31#[cfg(test)]
32pub(crate) use json::{
33 DurableWriteBarrier, create_json_durable_at_barriers, write_json_durable_at_barriers,
34};
35pub(crate) use json::{create_json_durable, read_json, write_json_durable};
36pub use layout::BackupLayout;
37
38#[cfg(test)]
39mod tests;