scufflecloud_core/services/
organizations.rs

1use crate::operations::Operation;
2use crate::services::CoreSvc;
3
4#[async_trait::async_trait]
5impl<G: core_traits::Global> pb::scufflecloud::core::v1::organizations_service_server::OrganizationsService for CoreSvc<G> {
6    async fn create_organization(
7        &self,
8        req: tonic::Request<pb::scufflecloud::core::v1::CreateOrganizationRequest>,
9    ) -> Result<tonic::Response<pb::scufflecloud::core::v1::Organization>, tonic::Status> {
10        Operation::<G>::run(req).await.map(tonic::Response::new)
11    }
12
13    async fn get_organization(
14        &self,
15        req: tonic::Request<pb::scufflecloud::core::v1::GetOrganizationRequest>,
16    ) -> Result<tonic::Response<pb::scufflecloud::core::v1::Organization>, tonic::Status> {
17        Operation::<G>::run(req).await.map(tonic::Response::new)
18    }
19
20    async fn update_organization(
21        &self,
22        req: tonic::Request<pb::scufflecloud::core::v1::UpdateOrganizationRequest>,
23    ) -> Result<tonic::Response<pb::scufflecloud::core::v1::Organization>, tonic::Status> {
24        Operation::<G>::run(req).await.map(tonic::Response::new)
25    }
26
27    async fn list_organization_members(
28        &self,
29        req: tonic::Request<pb::scufflecloud::core::v1::ListOrganizationMembersRequest>,
30    ) -> Result<tonic::Response<pb::scufflecloud::core::v1::OrganizationMembersList>, tonic::Status> {
31        Operation::<G>::run(req).await.map(tonic::Response::new)
32    }
33
34    async fn list_organizations_by_user(
35        &self,
36        req: tonic::Request<pb::scufflecloud::core::v1::ListOrganizationsByUserRequest>,
37    ) -> Result<tonic::Response<pb::scufflecloud::core::v1::OrganizationsList>, tonic::Status> {
38        Operation::<G>::run(req).await.map(tonic::Response::new)
39    }
40
41    async fn create_project(
42        &self,
43        req: tonic::Request<pb::scufflecloud::core::v1::CreateProjectRequest>,
44    ) -> Result<tonic::Response<pb::scufflecloud::core::v1::Project>, tonic::Status> {
45        Operation::<G>::run(req).await.map(tonic::Response::new)
46    }
47
48    async fn list_projects(
49        &self,
50        req: tonic::Request<pb::scufflecloud::core::v1::ListProjectsRequest>,
51    ) -> Result<tonic::Response<pb::scufflecloud::core::v1::ProjectsList>, tonic::Status> {
52        Operation::<G>::run(req).await.map(tonic::Response::new)
53    }
54}