diff options
Diffstat (limited to 'ipfs-api/src/request/files.rs')
-rw-r--r-- | ipfs-api/src/request/files.rs | 90 |
1 files changed, 57 insertions, 33 deletions
diff --git a/ipfs-api/src/request/files.rs b/ipfs-api/src/request/files.rs index 109f107..2a7b996 100644 --- a/ipfs-api/src/request/files.rs +++ b/ipfs-api/src/request/files.rs @@ -34,35 +34,43 @@ impl<'a> ApiRequest for FilesFlush<'a> { const PATH: &'static str = "/files/flush"; } -#[derive(Serialize)] +#[cfg_attr(feature = "builder", derive(TypedBuilder))] +#[derive(Serialize, Default)] pub struct FilesLs<'a> { #[serde(rename = "arg")] + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub path: Option<&'a str>, - pub long: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub long: Option<bool>, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] #[serde(rename = "U")] - pub unsorted: bool, + pub unsorted: Option<bool>, } impl<'a> ApiRequest for FilesLs<'a> { const PATH: &'static str = "/files/ls"; } -#[derive(Serialize)] +#[cfg_attr(feature = "builder", derive(TypedBuilder))] +#[derive(Serialize, Default)] +#[serde(rename_all = "kebab-case")] pub struct FilesMkdir<'a> { #[serde(rename = "arg")] pub path: &'a str, - pub parents: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub parents: Option<bool>, - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub hash: Option<&'a str>, - #[serde(rename = "cid-version")] - pub cid_version: i32, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub cid_version: Option<i32>, - pub flush: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub flush: Option<bool>, } impl<'a> ApiRequest for FilesMkdir<'a> { @@ -84,14 +92,16 @@ impl<'a> ApiRequest for FilesMv<'a> { const PATH: &'static str = "/files/mv"; } -#[derive(Serialize)] +#[cfg_attr(feature = "builder", derive(TypedBuilder))] +#[derive(Serialize, Default)] pub struct FilesRead<'a> { #[serde(rename = "arg")] pub path: &'a str, - pub offset: i64, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub offset: Option<i64>, - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub count: Option<i64>, } @@ -99,14 +109,17 @@ impl<'a> ApiRequest for FilesRead<'a> { const PATH: &'static str = "/files/read"; } -#[derive(Serialize)] +#[cfg_attr(feature = "builder", derive(TypedBuilder))] +#[derive(Serialize, Default)] pub struct FilesRm<'a> { #[serde(rename = "arg")] pub path: &'a str, - pub recursive: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub recursive: Option<bool>, - pub flush: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub flush: Option<bool>, } impl<'a> ApiRequest for FilesRm<'a> { @@ -126,50 +139,61 @@ impl<'a> ApiRequest for FilesStat<'a> { const PATH: &'static str = "/files/stat"; } -#[derive(Serialize)] +#[cfg_attr(feature = "builder", derive(TypedBuilder))] +#[derive(Serialize, Default)] +#[serde(rename_all = "kebab-case")] pub struct FilesWrite<'a> { #[serde(rename = "arg")] pub path: &'a str, - pub create: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub create: Option<bool>, - pub truncate: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub truncate: Option<bool>, - pub parents: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub parents: Option<bool>, - pub offset: i64, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub offset: Option<i64>, - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub count: Option<i64>, - #[serde(rename = "raw-leaves")] - pub raw_leaves: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub raw_leaves: Option<bool>, - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub hash: Option<&'a str>, - #[serde(rename = "cid-version")] - pub cid_version: i32, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub cid_version: Option<i32>, - pub flush: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub flush: Option<bool>, } impl<'a> ApiRequest for FilesWrite<'a> { const PATH: &'static str = "/files/write"; } -#[derive(Serialize)] +#[cfg_attr(feature = "builder", derive(TypedBuilder))] +#[derive(Serialize, Default)] +#[serde(rename_all = "kebab-case")] pub struct FilesChcid<'a> { + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] #[serde(rename = "arg")] - pub path: &'a str, + pub path: Option<&'a str>, - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub hash: Option<&'a str>, - #[serde(rename = "cid-version")] - pub cid_version: i32, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub cid_version: Option<i32>, - pub flush: bool, + #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] + pub flush: Option<bool>, } impl<'a> ApiRequest for FilesChcid<'a> { |