summaryrefslogtreecommitdiff
path: root/src/cmds/converter/workspace_operation_error.rs
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-03-14 18:32:47 +0800
committer魏曹先生 <1992414357@qq.com>2026-03-14 18:32:47 +0800
commit707a1f7c747a08e2ce77df88edc1e72eae9cbebc (patch)
tree53a64b10b788b57219ff2387322e50698d32198a /src/cmds/converter/workspace_operation_error.rs
parent521b7a7b08eebd30db215d84b55626fe8bf7533a (diff)
Add workspace commands and supporting types
Diffstat (limited to 'src/cmds/converter/workspace_operation_error.rs')
-rw-r--r--src/cmds/converter/workspace_operation_error.rs31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/cmds/converter/workspace_operation_error.rs b/src/cmds/converter/workspace_operation_error.rs
new file mode 100644
index 0000000..f5f9d17
--- /dev/null
+++ b/src/cmds/converter/workspace_operation_error.rs
@@ -0,0 +1,31 @@
+use crate::systems::cmd::errors::CmdExecuteError;
+use just_enough_vcs::system::workspace::workspace::error::WorkspaceOperationError;
+
+pub struct JVWorkspaceOperationErrorConverter;
+
+impl JVWorkspaceOperationErrorConverter {
+ pub fn to_exec_error(err: WorkspaceOperationError) -> CmdExecuteError {
+ match err {
+ WorkspaceOperationError::Io(error) => CmdExecuteError::Io(error),
+ WorkspaceOperationError::Other(msg) => CmdExecuteError::Error(msg),
+ WorkspaceOperationError::ConfigNotFound => {
+ CmdExecuteError::Error("Config not found".to_string())
+ }
+ WorkspaceOperationError::WorkspaceNotFound => {
+ CmdExecuteError::Error("Workspace not found".to_string())
+ }
+ WorkspaceOperationError::HandleLock(handle_lock_error) => {
+ CmdExecuteError::Error(format!("Handle lock error: {}", handle_lock_error))
+ }
+ WorkspaceOperationError::DataRead(data_read_error) => {
+ CmdExecuteError::Error(format!("Data read error: {}", data_read_error))
+ }
+ WorkspaceOperationError::DataWrite(data_write_error) => {
+ CmdExecuteError::Error(format!("Data write error: {}", data_write_error))
+ }
+ WorkspaceOperationError::DataApply(data_apply_error) => {
+ CmdExecuteError::Error(format!("Data apply error: {}", data_apply_error))
+ }
+ }
+ }
+}