[][src]Trait ubiquity::propagate::PropagationOptions

pub trait PropagationOptions {
    fn should_remove(&self, _: &Path) -> bool;
fn remove_file(&self, _: &Path) -> Result<(), SyncError>;
fn remove_dir_all(&self, _: &Path) -> Result<(), SyncError>; }

PropagationOptions allow the client to customize how files are transferred/deleted.

Required methods

fn should_remove(&self, _: &Path) -> bool

return false to cancel deleting a directory

fn remove_file(&self, _: &Path) -> Result<(), SyncError>

return SyncError::Cancelled to cancel deleting the file, otherwise delete the file/move it to the trash. This must return an error if the file was not removed successfully.

fn remove_dir_all(&self, _: &Path) -> Result<(), SyncError>

Delete the directory and its contents This must return an error if the directory was not removed successfully. Ignoring errors will mean that writes to the archive files when the replicas are still out of sync, resulting in an inconsistent state.

Loading content...

Implementors

impl PropagationOptions for DefaultPropagationOptions[src]

Loading content...