summaryrefslogtreecommitdiffstats
path: root/src/io
diff options
context:
space:
mode:
authorJeff Zhao <jeff.no.zhao@gmail.com>2021-04-16 11:25:27 -0400
committerJeff Zhao <jeff.no.zhao@gmail.com>2021-04-16 13:46:30 -0400
commita98af4f70d1b58ae7b2ece410c22d247240a2b1e (patch)
treece110859292c798779d32fb9a8d4bd318b37cece /src/io
parentec6138539b8102dd44736199ce9f3f0ecba92b40 (diff)
code cleanup
Diffstat (limited to 'src/io')
-rw-r--r--src/io/io_observer.rs10
-rw-r--r--src/io/io_worker.rs42
-rw-r--r--src/io/mod.rs6
-rw-r--r--src/io/name_resolution.rs15
4 files changed, 28 insertions, 45 deletions
diff --git a/src/io/io_observer.rs b/src/io/io_observer.rs
index 532b6f5..eb7a829 100644
--- a/src/io/io_observer.rs
+++ b/src/io/io_observer.rs
@@ -1,19 +1,19 @@
use std::path;
use std::thread;
-use crate::io::{FileOp, IOWorkerProgress};
+use crate::io::{FileOp, IoWorkerProgress};
use crate::util::format;
#[derive(Debug)]
-pub struct IOWorkerObserver {
+pub struct IoWorkerObserver {
pub handle: thread::JoinHandle<()>,
- pub progress: Option<IOWorkerProgress>,
+ pub progress: Option<IoWorkerProgress>,
msg: String,
src: path::PathBuf,
dest: path::PathBuf,
}
-impl IOWorkerObserver {
+impl IoWorkerObserver {
pub fn new(handle: thread::JoinHandle<()>, src: path::PathBuf, dest: path::PathBuf) -> Self {
Self {
handle,
@@ -27,7 +27,7 @@ impl IOWorkerObserver {
pub fn join(self) -> bool {
matches!(self.handle.join(), Ok(_))
}
- pub fn set_progress(&mut self, progress: IOWorkerProgress) {
+ pub fn set_progress(&mut self, progress: IoWorkerProgress) {
self.progress = Some(progress);
}
pub fn update_msg(&mut self) {
diff --git a/src/io/io_worker.rs b/src/io/io_worker.rs
index 97af52a..58cf1d1 100644
--- a/src/io/io_worker.rs
+++ b/src/io/io_worker.rs
@@ -2,7 +2,7 @@ use std::fs;
use std::path;
use std::sync::mpsc;
-use super::rename_filename_conflict;
+use crate::util::name_resolution::rename_filename_conflict;
#[derive(Clone, Copy, Debug)]
pub enum FileOp {
@@ -11,12 +11,12 @@ pub enum FileOp {
}
#[derive(Clone, Debug)]
-pub struct IOWorkerOptions {
+pub struct IoWorkerOptions {
pub overwrite: bool,
pub skip_exist: bool,
}
-impl std::default::Default for IOWorkerOptions {
+impl std::default::Default for IoWorkerOptions {
fn default() -> Self {
Self {
overwrite: false,
@@ -25,7 +25,7 @@ impl std::default::Default for IOWorkerOptions {
}
}
-impl std::fmt::Display for IOWorkerOptions {
+impl std::fmt::Display for IoWorkerOptions {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
write!(
f,
@@ -36,14 +36,14 @@ impl std::fmt::Display for IOWorkerOptions {
}
#[derive(Clone, Debug)]
-pub struct IOWorkerProgress {
+pub struct IoWorkerProgress {
_kind: FileOp,
_index: usize,
_len: usize,
_processed: u64,
}
-impl IOWorkerProgress {
+impl IoWorkerProgress {
pub fn new(_kind: FileOp, _index: usize, _len: usize, _processed: u64) -> Self {
Self {
_kind,
@@ -79,19 +79,19 @@ impl IOWorkerProgress {
}
#[derive(Debug)]
-pub struct IOWorkerThread {
+pub struct IoWorkerThread {
_kind: FileOp,
- pub options: IOWorkerOptions,
+ pub options: IoWorkerOptions,
pub paths: Vec<path::PathBuf>,
pub dest: path::PathBuf,
}
-impl IOWorkerThread {
+impl IoWorkerThread {
pub fn new(
_kind: FileOp,
paths: Vec<path::PathBuf>,
dest: path::PathBuf,
- options: IOWorkerOptions,
+ options: IoWorkerOptions,
) -> Self {
Self {
_kind,
@@ -105,15 +105,15 @@ impl IOWorkerThread {
self._kind
}
- pub fn start(&self, tx: mpsc::Sender<IOWorkerProgress>) -> std::io::Result<IOWorkerProgress> {
+ pub fn start(&self, tx: mpsc::Sender<IoWorkerProgress>) -> std::io::Result<IoWorkerProgress> {
match self.kind() {
FileOp::Cut => self.paste_cut(tx),
FileOp::Copy => self.paste_copy(tx),
}
}
- fn paste_copy(&self, tx: mpsc::Sender<IOWorkerProgress>) -> std::io::Result<IOWorkerProgress> {
- let mut progress = IOWorkerProgress::new(self.kind(), 0, self.paths.len(), 0);
+ fn paste_copy(&self, tx: mpsc::Sender<IoWorkerProgress>) -> std::io::Result<IoWorkerProgress> {
+ let mut progress = IoWorkerProgress::new(self.kind(), 0, self.paths.len(), 0);
for (i, path) in self.paths.iter().enumerate() {
progress.set_index(i);
let _ = tx.send(progress.clone());
@@ -124,7 +124,7 @@ impl IOWorkerThread {
&mut progress,
)?;
}
- Ok(IOWorkerProgress::new(
+ Ok(IoWorkerProgress::new(
self.kind(),
self.paths.len(),
self.paths.len(),
@@ -132,8 +132,8 @@ impl IOWorkerThread {
))
}
- fn paste_cut(&self, tx: mpsc::Sender<IOWorkerProgress>) -> std::io::Result<IOWorkerProgress> {
- let mut progress = IOWorkerProgress::new(self.kind(), 0, self.paths.len(), 0);
+ fn paste_cut(&self, tx: mpsc::Sender<IoWorkerProgress>) -> std::io::Result<IoWorkerProgress> {
+ let mut progress = IoWorkerProgress::new(self.kind(), 0, self.paths.len(), 0);
for (i, path) in self.paths.iter().enumerate() {
progress.set_index(i);
let _ = tx.send(progress.clone());
@@ -144,7 +144,7 @@ impl IOWorkerThread {
&mut progress,
)?;
}
- Ok(IOWorkerProgress::new(
+ Ok(IoWorkerProgress::new(
self.kind(),
self.paths.len(),
self.paths.len(),
@@ -156,8 +156,8 @@ impl IOWorkerThread {
pub fn recursive_copy(
src: &path::Path,
dest: &path::Path,
- tx: mpsc::Sender<IOWorkerProgress>,
- progress: &mut IOWorkerProgress,
+ tx: mpsc::Sender<IoWorkerProgress>,
+ progress: &mut IoWorkerProgress,
) -> std::io::Result<()> {
let mut dest_buf = dest.to_path_buf();
if let Some(s) = src.file_name() {
@@ -195,8 +195,8 @@ pub fn recursive_copy(
pub fn recursive_cut(
src: &path::Path,
dest: &path::Path,
- tx: mpsc::Sender<IOWorkerProgress>,
- progress: &mut IOWorkerProgress,
+ tx: mpsc::Sender<IoWorkerProgress>,
+ progress: &mut IoWorkerProgress,
) -> std::io::Result<()> {
let mut dest_buf = dest.to_path_buf();
if let Some(s) = src.file_name() {
diff --git a/src/io/mod.rs b/src/io/mod.rs
index f360d19..f577cc6 100644
--- a/src/io/mod.rs
+++ b/src/io/mod.rs
@@ -1,7 +1,5 @@
mod io_observer;
mod io_worker;
-mod name_resolution;
-pub use io_observer::IOWorkerObserver;
-pub use io_worker::{FileOp, IOWorkerOptions, IOWorkerProgress, IOWorkerThread};
-pub use name_resolution::rename_filename_conflict;
+pub use io_observer::IoWorkerObserver;
+pub use io_worker::{FileOp, IoWorkerOptions, IoWorkerProgress, IoWorkerThread};
diff --git a/src/io/name_resolution.rs b/src/io/name_resolution.rs
deleted file mode 100644
index a8e520b..0000000
--- a/src/io/name_resolution.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-use std::path;
-
-pub fn rename_filename_conflict(path: &mut path::PathBuf) {
- let file_name = path.file_name().unwrap().to_os_string();
- for i in 0.. {
- if !path.exists() {
- break;
- }
- path.pop();
-
- let mut file_name = file_name.clone();
- file_name.push(&format!("_{}", i));
- path.push(file_name);
- }
-}