123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176 |
- use flowy_net::{config::HEADER_TOKEN, errors::ServerError, request::HttpRequestBuilder};
- use flowy_workspace_infra::entities::prelude::*;
- pub(crate) fn request_builder() -> HttpRequestBuilder {
- HttpRequestBuilder::new().middleware(super::middleware::BACKEND_API_MIDDLEWARE.clone())
- }
- pub async fn create_workspace_request(
- token: &str,
- params: CreateWorkspaceParams,
- url: &str,
- ) -> Result<Workspace, ServerError> {
- let workspace = request_builder()
- .post(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .response()
- .await?;
- Ok(workspace)
- }
- pub async fn read_workspaces_request(
- token: &str,
- params: WorkspaceIdentifier,
- url: &str,
- ) -> Result<RepeatedWorkspace, ServerError> {
- let repeated_workspace = request_builder()
- .get(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .response::<RepeatedWorkspace>()
- .await?;
- Ok(repeated_workspace)
- }
- pub async fn update_workspace_request(
- token: &str,
- params: UpdateWorkspaceParams,
- url: &str,
- ) -> Result<(), ServerError> {
- let _ = request_builder()
- .patch(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .send()
- .await?;
- Ok(())
- }
- pub async fn delete_workspace_request(
- token: &str,
- params: DeleteWorkspaceParams,
- url: &str,
- ) -> Result<(), ServerError> {
- let _ = request_builder()
- .delete(url)
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .send()
- .await?;
- Ok(())
- }
- // App
- pub async fn create_app_request(token: &str, params: CreateAppParams, url: &str) -> Result<App, ServerError> {
- let app = request_builder()
- .post(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .response()
- .await?;
- Ok(app)
- }
- pub async fn read_app_request(token: &str, params: AppIdentifier, url: &str) -> Result<Option<App>, ServerError> {
- let app = request_builder()
- .get(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .option_response()
- .await?;
- Ok(app)
- }
- pub async fn update_app_request(token: &str, params: UpdateAppParams, url: &str) -> Result<(), ServerError> {
- let _ = request_builder()
- .patch(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .send()
- .await?;
- Ok(())
- }
- pub async fn delete_app_request(token: &str, params: AppIdentifier, url: &str) -> Result<(), ServerError> {
- let _ = request_builder()
- .delete(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .send()
- .await?;
- Ok(())
- }
- // View
- pub async fn create_view_request(token: &str, params: CreateViewParams, url: &str) -> Result<View, ServerError> {
- let view = request_builder()
- .post(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .response()
- .await?;
- Ok(view)
- }
- pub async fn read_view_request(token: &str, params: ViewIdentifier, url: &str) -> Result<Option<View>, ServerError> {
- let view = request_builder()
- .get(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .option_response()
- .await?;
- Ok(view)
- }
- pub async fn update_view_request(token: &str, params: UpdateViewParams, url: &str) -> Result<(), ServerError> {
- let _ = request_builder()
- .patch(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .send()
- .await?;
- Ok(())
- }
- pub async fn delete_view_request(token: &str, params: ViewIdentifiers, url: &str) -> Result<(), ServerError> {
- let _ = request_builder()
- .delete(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .send()
- .await?;
- Ok(())
- }
- pub async fn create_trash_request(token: &str, params: TrashIdentifiers, url: &str) -> Result<(), ServerError> {
- let _ = request_builder()
- .post(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .send()
- .await?;
- Ok(())
- }
- pub async fn delete_trash_request(token: &str, params: TrashIdentifiers, url: &str) -> Result<(), ServerError> {
- let _ = request_builder()
- .delete(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .protobuf(params)?
- .send()
- .await?;
- Ok(())
- }
- pub async fn read_trash_request(token: &str, url: &str) -> Result<RepeatedTrash, ServerError> {
- let repeated_trash = request_builder()
- .get(&url.to_owned())
- .header(HEADER_TOKEN, token)
- .response::<RepeatedTrash>()
- .await?;
- Ok(repeated_trash)
- }
|