From bc4c15d17c6f49b243a1e24b5fd93e2546db3b32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn-Michael=20Miehe?= <40151420+ldericher@users.noreply.github.com> Date: Fri, 27 Jun 2025 08:34:13 +0000 Subject: [PATCH] consolidate `sharry` module --- src/cli.rs | 2 +- src/impl_ureq.rs | 6 ++--- src/sharry/client.rs | 33 ------------------------ src/sharry/{api => }/ids.rs | 0 src/sharry/{api/mod.rs => json.rs} | 6 ----- src/sharry/mod.rs | 40 +++++++++++++++++++++++++----- src/sharry/{api => }/uri.rs | 0 7 files changed, 38 insertions(+), 49 deletions(-) delete mode 100644 src/sharry/client.rs rename src/sharry/{api => }/ids.rs (100%) rename src/sharry/{api/mod.rs => json.rs} (91%) rename src/sharry/{api => }/uri.rs (100%) diff --git a/src/cli.rs b/src/cli.rs index 5b5f3c8..b6dc9ca 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -11,7 +11,7 @@ use log::LevelFilter; use crate::{ file::{Checked, FileTrait}, - sharry::{AliasID, NewShareRequest, Uri}, + sharry::{AliasID, Uri, json::NewShareRequest}, }; #[derive(Parser)] diff --git a/src/impl_ureq.rs b/src/impl_ureq.rs index ff07e48..a0b1cc5 100644 --- a/src/impl_ureq.rs +++ b/src/impl_ureq.rs @@ -50,7 +50,7 @@ impl sharry::Client for ureq::Agent { &self, uri: &Uri, alias_id: &AliasID, - data: sharry::NewShareRequest, + data: sharry::json::NewShareRequest, ) -> crate::Result { let res = { let endpoint = uri.share_create(); @@ -65,7 +65,7 @@ impl sharry::Client for ureq::Agent { crate::Error::res_status_check(res.status(), ureq::http::StatusCode::OK)?; res.body_mut() - .read_json::() + .read_json::() .map_err(crate::Error::response)? }; @@ -94,7 +94,7 @@ impl sharry::Client for ureq::Agent { crate::Error::res_status_check(res.status(), ureq::http::StatusCode::OK)?; res.body_mut() - .read_json::() + .read_json::() .map_err(crate::Error::response)? }; diff --git a/src/sharry/client.rs b/src/sharry/client.rs deleted file mode 100644 index 9d71d43..0000000 --- a/src/sharry/client.rs +++ /dev/null @@ -1,33 +0,0 @@ -use crate::file; - -use super::{ - AliasID, ShareID, - api::{FileID, NewShareRequest, Uri}, -}; - -pub trait Client { - fn share_create( - &self, - uri: &Uri, - alias_id: &AliasID, - data: NewShareRequest, - ) -> crate::Result; - - fn share_notify(&self, uri: &Uri, alias_id: &AliasID, share_id: &ShareID) -> crate::Result<()>; - - fn file_create( - &self, - uri: &Uri, - alias_id: &AliasID, - share_id: &ShareID, - file: &file::Checked, - ) -> crate::Result; - - fn file_patch( - &self, - uri: &Uri, - alias_id: &AliasID, - share_id: &ShareID, - chunk: &file::Chunk, - ) -> crate::Result<()>; -} diff --git a/src/sharry/api/ids.rs b/src/sharry/ids.rs similarity index 100% rename from src/sharry/api/ids.rs rename to src/sharry/ids.rs diff --git a/src/sharry/api/mod.rs b/src/sharry/json.rs similarity index 91% rename from src/sharry/api/mod.rs rename to src/sharry/json.rs index 5c084ea..2f6f680 100644 --- a/src/sharry/api/mod.rs +++ b/src/sharry/json.rs @@ -1,11 +1,5 @@ -mod ids; -mod uri; - use serde::{Deserialize, Serialize}; -pub use ids::{AliasID, FileID, ShareID}; -pub use uri::Uri; - #[derive(Serialize, Debug)] #[allow(non_snake_case)] pub struct NewShareRequest { diff --git a/src/sharry/mod.rs b/src/sharry/mod.rs index 8b53aca..ddf0716 100644 --- a/src/sharry/mod.rs +++ b/src/sharry/mod.rs @@ -1,7 +1,35 @@ -mod api; -mod client; +mod ids; +pub mod json; +mod uri; -pub use api::{ - AliasID, FileID, NewShareRequest, NewShareResponse, NotifyShareResponse, ShareID, Uri, -}; -pub use client::Client; +pub use ids::{AliasID, FileID, ShareID}; +pub use uri::Uri; + +use crate::file; + +pub trait Client { + fn share_create( + &self, + uri: &Uri, + alias_id: &AliasID, + data: json::NewShareRequest, + ) -> crate::Result; + + fn share_notify(&self, uri: &Uri, alias_id: &AliasID, share_id: &ShareID) -> crate::Result<()>; + + fn file_create( + &self, + uri: &Uri, + alias_id: &AliasID, + share_id: &ShareID, + file: &file::Checked, + ) -> crate::Result; + + fn file_patch( + &self, + uri: &Uri, + alias_id: &AliasID, + share_id: &ShareID, + chunk: &file::Chunk, + ) -> crate::Result<()>; +} diff --git a/src/sharry/api/uri.rs b/src/sharry/uri.rs similarity index 100% rename from src/sharry/api/uri.rs rename to src/sharry/uri.rs