From de9232750ed7d44571372c8cc10e6ce6a5bbca0d Mon Sep 17 00:00:00 2001 From: Kirill Date: Mon, 2 Mar 2026 13:45:35 +0300 Subject: [PATCH] feat(rclone.exe): added Setters, Getters, and Intialization Constructor --- src/rcloneInstall.rs | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/src/rcloneInstall.rs b/src/rcloneInstall.rs index 6884c8e..5fefd96 100644 --- a/src/rcloneInstall.rs +++ b/src/rcloneInstall.rs @@ -47,7 +47,33 @@ impl RcloneApp { Self::install_latest_rclone().await } - fn check_system_rclone() -> Option { + // Публичный конструктор для тестов и создания экземпляра с заданными параметрами + pub fn new_with_path(rclone_path: PathBuf, using_system_rclone: bool) -> Self { + Self { + rclone_path, + using_system_rclone, + } + } + + // Геттеры + pub fn get_rclone_path(&self) -> &PathBuf { + &self.rclone_path + } + + pub fn is_using_system_rclone(&self) -> bool { + self.using_system_rclone + } + + // Сеттеры + pub fn set_rclone_path(&mut self, path: PathBuf) { + self.rclone_path = path; + } + + pub fn set_using_system_rclone(&mut self, value: bool) { + self.using_system_rclone = value; + } + + pub fn check_system_rclone() -> Option { if let Ok(path) = which::which("rclone") { return Some(path); }