// Copyright 2017 rust-ipfs-api Developers // // Licensed under the Apache License, Version 2.0, or the MIT license , at your option. This file may not be // copied, modified, or distributed except according to those terms. // use crate::request::ApiRequest; use crate::serde::Serialize; #[derive(Serialize, Default)] pub struct FilesCp<'a> { #[serde(rename = "arg")] pub path: &'a str, #[serde(rename = "arg")] pub dest: &'a str, pub flush: Option, } impl<'a> ApiRequest for FilesCp<'a> { const PATH: &'static str = "/files/cp"; } #[derive(Serialize)] pub struct FilesFlush<'a> { #[serde(rename = "arg")] pub path: Option<&'a str>, } impl<'a> ApiRequest for FilesFlush<'a> { const PATH: &'static str = "/files/flush"; } #[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>, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub long: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] #[serde(rename = "U")] pub unsorted: Option, } impl<'a> ApiRequest for FilesLs<'a> { const PATH: &'static str = "/files/ls"; } #[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, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub parents: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub hash: Option<&'a str>, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub cid_version: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub flush: Option, } impl<'a> ApiRequest for FilesMkdir<'a> { const PATH: &'static str = "/files/mkdir"; } #[derive(Serialize, Default)] pub struct FilesMv<'a> { #[serde(rename = "arg")] pub path: &'a str, #[serde(rename = "arg")] pub dest: &'a str, pub flush: Option, } impl<'a> ApiRequest for FilesMv<'a> { const PATH: &'static str = "/files/mv"; } #[cfg_attr(feature = "builder", derive(TypedBuilder))] #[derive(Serialize, Default)] pub struct FilesRead<'a> { #[serde(rename = "arg")] pub path: &'a str, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub offset: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub count: Option, } impl<'a> ApiRequest for FilesRead<'a> { const PATH: &'static str = "/files/read"; } #[cfg_attr(feature = "builder", derive(TypedBuilder))] #[derive(Serialize, Default)] pub struct FilesRm<'a> { #[serde(rename = "arg")] pub path: &'a str, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub recursive: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub flush: Option, } impl<'a> ApiRequest for FilesRm<'a> { const PATH: &'static str = "/files/rm"; } #[derive(Serialize, Default)] #[serde(rename_all = "kebab-case")] pub struct FilesStat<'a> { #[serde(rename = "arg")] pub path: &'a str, pub with_local: Option, } impl<'a> ApiRequest for FilesStat<'a> { const PATH: &'static str = "/files/stat"; } #[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, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub create: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub truncate: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub parents: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub offset: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub count: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub raw_leaves: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub hash: Option<&'a str>, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub cid_version: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub flush: Option, } impl<'a> ApiRequest for FilesWrite<'a> { const PATH: &'static str = "/files/write"; } #[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: Option<&'a str>, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub hash: Option<&'a str>, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub cid_version: Option, #[cfg_attr(feature = "builder", builder(default, setter(strip_option)))] pub flush: Option, } impl<'a> ApiRequest for FilesChcid<'a> { const PATH: &'static str = "/files/chcid"; }