use crate::context::EnkryptitContext;
use crate::diagnostic::EnkryptitOutput;
use crate::diagnostic::output::snippet::Snippet;
use crate::errors::EnkryptitError;
use crate::parameters::params::load_params;
use crate::treatment::object_treatment::treat_object;
pub fn treat_object_with_path(
path_str: &str,
cli_password: Option<String>,
) -> Result<EnkryptitOutput, EnkryptitError> {
let parameters = load_params()?;
let mut context =
EnkryptitContext::new(cli_password, parameters.compression, parameters.parallelism);
Ok(treat_object(¶meters, path_str, &mut context)
.with_snippet(Snippet::cli_invocation("eck", path_str)))
}
pub fn treat_objects_with_multiple_paths(
paths: &Vec<String>,
cli_password: Option<String>,
) -> Result<(), EnkryptitError> {
let parameters = load_params()?;
let mut context =
EnkryptitContext::new(cli_password, parameters.compression, parameters.parallelism);
for path in paths {
treat_object(¶meters, path, &mut context)
.with_snippet(Snippet::cli_invocation("eck", path))
.display();
}
Ok(())
}