Skip to content

Commit 41088db

Browse files
authored
rust: Move API resources into separate files (#1558)
… to prepare for these being replaced by generated files.
2 parents ff0ccbc + 5fe6735 commit 41088db

12 files changed

+1530
-1498
lines changed

rust/src/api.rs

Lines changed: 0 additions & 1498 deletions
This file was deleted.

rust/src/api/application.rs

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
use super::PostOptions;
2+
use crate::{apis::application_api, error::Result, models::*, Configuration};
3+
4+
#[derive(Default)]
5+
pub struct ApplicationListOptions {
6+
pub iterator: Option<String>,
7+
pub limit: Option<i32>,
8+
pub order: Option<Ordering>,
9+
}
10+
11+
pub struct Application<'a> {
12+
cfg: &'a Configuration,
13+
}
14+
15+
impl<'a> Application<'a> {
16+
pub(super) fn new(cfg: &'a Configuration) -> Self {
17+
Self { cfg }
18+
}
19+
20+
pub async fn list(
21+
&self,
22+
options: Option<ApplicationListOptions>,
23+
) -> Result<ListResponseApplicationOut> {
24+
let ApplicationListOptions {
25+
iterator,
26+
limit,
27+
order,
28+
} = options.unwrap_or_default();
29+
application_api::v1_period_application_period_list(
30+
self.cfg,
31+
application_api::V1PeriodApplicationPeriodListParams {
32+
iterator,
33+
limit,
34+
order,
35+
},
36+
)
37+
.await
38+
}
39+
40+
pub async fn create(
41+
&self,
42+
application_in: ApplicationIn,
43+
options: Option<PostOptions>,
44+
) -> Result<ApplicationOut> {
45+
let PostOptions { idempotency_key } = options.unwrap_or_default();
46+
application_api::v1_period_application_period_create(
47+
self.cfg,
48+
application_api::V1PeriodApplicationPeriodCreateParams {
49+
application_in,
50+
idempotency_key,
51+
get_if_exists: None,
52+
},
53+
)
54+
.await
55+
}
56+
57+
pub async fn get_or_create(
58+
&self,
59+
application_in: ApplicationIn,
60+
options: Option<PostOptions>,
61+
) -> Result<ApplicationOut> {
62+
let PostOptions { idempotency_key } = options.unwrap_or_default();
63+
application_api::v1_period_application_period_create(
64+
self.cfg,
65+
application_api::V1PeriodApplicationPeriodCreateParams {
66+
application_in,
67+
idempotency_key,
68+
get_if_exists: Some(true),
69+
},
70+
)
71+
.await
72+
}
73+
74+
pub async fn get(&self, app_id: String) -> Result<ApplicationOut> {
75+
application_api::v1_period_application_period_get(
76+
self.cfg,
77+
application_api::V1PeriodApplicationPeriodGetParams { app_id },
78+
)
79+
.await
80+
}
81+
82+
pub async fn update(
83+
&self,
84+
app_id: String,
85+
application_in: ApplicationIn,
86+
) -> Result<ApplicationOut> {
87+
application_api::v1_period_application_period_update(
88+
self.cfg,
89+
application_api::V1PeriodApplicationPeriodUpdateParams {
90+
app_id,
91+
application_in,
92+
},
93+
)
94+
.await
95+
}
96+
97+
pub async fn patch(
98+
&self,
99+
app_id: String,
100+
application_patch: ApplicationPatch,
101+
) -> Result<ApplicationOut> {
102+
application_api::v1_period_application_period_patch(
103+
self.cfg,
104+
application_api::V1PeriodApplicationPeriodPatchParams {
105+
app_id,
106+
application_patch,
107+
},
108+
)
109+
.await
110+
}
111+
112+
pub async fn delete(&self, app_id: String) -> Result<()> {
113+
application_api::v1_period_application_period_delete(
114+
self.cfg,
115+
application_api::V1PeriodApplicationPeriodDeleteParams { app_id },
116+
)
117+
.await
118+
}
119+
}

rust/src/api/authentication.rs

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
use super::PostOptions;
2+
use crate::{apis::authentication_api, error::Result, models::*, Configuration};
3+
pub struct Authentication<'a> {
4+
cfg: &'a Configuration,
5+
}
6+
7+
impl<'a> Authentication<'a> {
8+
pub(super) fn new(cfg: &'a Configuration) -> Self {
9+
Self { cfg }
10+
}
11+
12+
pub async fn dashboard_access(
13+
&self,
14+
app_id: String,
15+
options: Option<PostOptions>,
16+
) -> Result<DashboardAccessOut> {
17+
let options = options.unwrap_or_default();
18+
authentication_api::v1_period_authentication_period_dashboard_access(
19+
self.cfg,
20+
authentication_api::V1PeriodAuthenticationPeriodDashboardAccessParams {
21+
app_id,
22+
idempotency_key: options.idempotency_key,
23+
},
24+
)
25+
.await
26+
}
27+
28+
pub async fn app_portal_access(
29+
&self,
30+
app_id: String,
31+
app_portal_access_in: AppPortalAccessIn,
32+
options: Option<PostOptions>,
33+
) -> Result<AppPortalAccessOut> {
34+
let options = options.unwrap_or_default();
35+
authentication_api::v1_period_authentication_period_app_portal_access(
36+
self.cfg,
37+
authentication_api::V1PeriodAuthenticationPeriodAppPortalAccessParams {
38+
app_id,
39+
app_portal_access_in,
40+
idempotency_key: options.idempotency_key,
41+
},
42+
)
43+
.await
44+
}
45+
46+
pub async fn logout(&self, options: Option<PostOptions>) -> Result<()> {
47+
let PostOptions { idempotency_key } = options.unwrap_or_default();
48+
authentication_api::v1_period_authentication_period_logout(
49+
self.cfg,
50+
authentication_api::V1PeriodAuthenticationPeriodLogoutParams { idempotency_key },
51+
)
52+
.await
53+
}
54+
}

rust/src/api/background_task.rs

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
use crate::{apis::background_tasks_api, error::Result, models::*, Configuration};
2+
3+
#[derive(Default)]
4+
pub struct BackgroundTaskListOptions {
5+
pub iterator: Option<String>,
6+
pub limit: Option<i32>,
7+
pub order: Option<Ordering>,
8+
pub status: Option<BackgroundTaskStatus>,
9+
pub task: Option<BackgroundTaskType>,
10+
}
11+
12+
pub struct BackgroundTask<'a> {
13+
cfg: &'a Configuration,
14+
}
15+
16+
impl<'a> BackgroundTask<'a> {
17+
pub(super) fn new(cfg: &'a Configuration) -> Self {
18+
Self { cfg }
19+
}
20+
21+
pub async fn list(
22+
&self,
23+
options: Option<BackgroundTaskListOptions>,
24+
) -> Result<ListResponseBackgroundTaskOut> {
25+
let BackgroundTaskListOptions {
26+
iterator,
27+
limit,
28+
order,
29+
status,
30+
task,
31+
} = options.unwrap_or_default();
32+
background_tasks_api::list_background_tasks(
33+
self.cfg,
34+
background_tasks_api::ListBackgroundTasksParams {
35+
status,
36+
task,
37+
limit,
38+
iterator,
39+
order,
40+
},
41+
)
42+
.await
43+
}
44+
45+
pub async fn get(&self, task_id: String) -> Result<BackgroundTaskOut> {
46+
background_tasks_api::get_background_task(
47+
self.cfg,
48+
background_tasks_api::GetBackgroundTaskParams { task_id },
49+
)
50+
.await
51+
}
52+
}

0 commit comments

Comments
 (0)