use std::path::PathBuf;
pub const DEFAULT_MAX_BACKUP_SIZE: usize = 500 * 2_usize.pow(20);
pub const DEFAULT_BACKUP_FILE_COUNT: Option<usize> = None;
#[derive(Debug, Clone)]
pub struct DiskBackupPolicy {
pub backups_dir: Option<PathBuf>,
pub max_backup_file_size: usize,
pub rolling_file_policy: RollingFilePolicy,
pub retain_backups: bool,
}
impl Default for DiskBackupPolicy {
fn default() -> Self {
Self {
backups_dir: Default::default(),
max_backup_file_size: DEFAULT_MAX_BACKUP_SIZE,
rolling_file_policy: Default::default(),
retain_backups: false,
}
}
}
#[derive(Debug, Clone)]
pub struct RollingFilePolicy {
pub max_file_count: Option<usize>,
}
impl Default for RollingFilePolicy {
fn default() -> Self {
Self {
max_file_count: DEFAULT_BACKUP_FILE_COUNT,
}
}
}