atlassian_rust_api/jira/endpoints/permissions/
get_all_permissions.rs1use std::sync::Arc;
2
3use crate::{Jira, Result, rest_client::RestClient, web::Endpoint};
4
5#[derive(Debug, Clone)]
6pub struct GetAllPermissionsBuilder {
7 client: Arc<RestClient>,
8 request: GetAllPermissionsRequest,
9}
10
11#[derive(Debug, Clone, Default)]
12struct GetAllPermissionsRequest;
13
14impl Endpoint for GetAllPermissionsRequest {
15 fn endpoint(&self) -> std::borrow::Cow<'static, str> {
16 "permissions".into()
17 }
18}
19
20impl GetAllPermissionsBuilder {
21 fn new(client: Arc<RestClient>) -> GetAllPermissionsBuilder {
22 GetAllPermissionsBuilder { client, request: GetAllPermissionsRequest::default() }
23 }
24
25 pub async fn send(self) -> Result<serde_json::Value> {
26 self.client.get(self.request).await
27 }
28}
29
30impl Jira {
31 pub fn get_all_permissions(&self) -> GetAllPermissionsBuilder {
33 GetAllPermissionsBuilder::new(Arc::clone(&self.client))
34 }
35}