create folder method
This commit is contained in:
28
src/services/create_folder.rs
Normal file
28
src/services/create_folder.rs
Normal file
@@ -0,0 +1,28 @@
|
||||
use crate::services::api::{ApiBuilder, ApiError};
|
||||
use reqwest::{Method, IntoUrl, Response, Error};
|
||||
|
||||
pub struct CreateFolder {
|
||||
api_builder: ApiBuilder,
|
||||
}
|
||||
|
||||
impl CreateFolder {
|
||||
pub fn new<U: IntoUrl>(url: U) -> Self {
|
||||
ListFolders {
|
||||
api_builder: ApiBuilder::new()
|
||||
.set_request(Method::from_bytes(b"MKCOL").unwrap(), url),
|
||||
}
|
||||
}
|
||||
|
||||
pub async fn send(&mut self) -> Result<Response, Error> {
|
||||
self.api_builder.send().await
|
||||
}
|
||||
|
||||
pub async fn send_with_err(mut self) -> Result<(), ApiError> {
|
||||
let res = self.send().await.map_err(ApiError::RequestError)?;
|
||||
if res.status().is_success() {
|
||||
Ok()
|
||||
} else {
|
||||
Err(ApiError::IncorrectRequest(res))
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user