pulsar_admin_sdk/apis/
resourcegroups_api.rs1use reqwest;
13
14use crate::{apis::ResponseContent, models};
15use super::{Error, configuration};
16
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum ResourceGroupsCreateOrUpdateResourceGroupError {
22 Status403(),
23 Status404(),
24 UnknownValue(serde_json::Value),
25}
26
27#[derive(Debug, Clone, Serialize, Deserialize)]
29#[serde(untagged)]
30pub enum ResourceGroupsDeleteResourceGroupError {
31 Status403(),
32 Status404(),
33 Status409(),
34 UnknownValue(serde_json::Value),
35}
36
37#[derive(Debug, Clone, Serialize, Deserialize)]
39#[serde(untagged)]
40pub enum ResourceGroupsGetResourceGroupError {
41 Status403(),
42 Status404(),
43 UnknownValue(serde_json::Value),
44}
45
46#[derive(Debug, Clone, Serialize, Deserialize)]
48#[serde(untagged)]
49pub enum ResourceGroupsGetResourceGroupsError {
50 Status403(),
51 UnknownValue(serde_json::Value),
52}
53
54
55pub async fn resource_groups_create_or_update_resource_group(configuration: &configuration::Configuration, resourcegroup: &str, body: Option<models::ResourceGroup>) -> Result<(), Error<ResourceGroupsCreateOrUpdateResourceGroupError>> {
56 let local_var_configuration = configuration;
57
58 let local_var_client = &local_var_configuration.client;
59
60 let local_var_uri_str = format!("{}/resourcegroups/{resourcegroup}", local_var_configuration.base_path, resourcegroup=crate::apis::urlencode(resourcegroup));
61 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
62
63 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
64 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
65 }
66 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
67 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
68 };
69 local_var_req_builder = local_var_req_builder.json(&body);
70
71 let local_var_req = local_var_req_builder.build()?;
72 let local_var_resp = local_var_client.execute(local_var_req).await?;
73
74 let local_var_status = local_var_resp.status();
75 let local_var_content = local_var_resp.text().await?;
76
77 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
78 Ok(())
79 } else {
80 let local_var_entity: Option<ResourceGroupsCreateOrUpdateResourceGroupError> = serde_json::from_str(&local_var_content).ok();
81 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
82 Err(Error::ResponseError(local_var_error))
83 }
84}
85
86pub async fn resource_groups_delete_resource_group(configuration: &configuration::Configuration, resourcegroup: &str) -> Result<(), Error<ResourceGroupsDeleteResourceGroupError>> {
87 let local_var_configuration = configuration;
88
89 let local_var_client = &local_var_configuration.client;
90
91 let local_var_uri_str = format!("{}/resourcegroups/{resourcegroup}", local_var_configuration.base_path, resourcegroup=crate::apis::urlencode(resourcegroup));
92 let mut local_var_req_builder = local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
93
94 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
95 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
96 }
97 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
98 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
99 };
100
101 let local_var_req = local_var_req_builder.build()?;
102 let local_var_resp = local_var_client.execute(local_var_req).await?;
103
104 let local_var_status = local_var_resp.status();
105 let local_var_content = local_var_resp.text().await?;
106
107 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
108 Ok(())
109 } else {
110 let local_var_entity: Option<ResourceGroupsDeleteResourceGroupError> = serde_json::from_str(&local_var_content).ok();
111 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
112 Err(Error::ResponseError(local_var_error))
113 }
114}
115
116pub async fn resource_groups_get_resource_group(configuration: &configuration::Configuration, resourcegroup: &str) -> Result<models::ResourceGroup, Error<ResourceGroupsGetResourceGroupError>> {
117 let local_var_configuration = configuration;
118
119 let local_var_client = &local_var_configuration.client;
120
121 let local_var_uri_str = format!("{}/resourcegroups/{resourcegroup}", local_var_configuration.base_path, resourcegroup=crate::apis::urlencode(resourcegroup));
122 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
123
124 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
125 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
126 }
127 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
128 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
129 };
130
131 let local_var_req = local_var_req_builder.build()?;
132 let local_var_resp = local_var_client.execute(local_var_req).await?;
133
134 let local_var_status = local_var_resp.status();
135 let local_var_content = local_var_resp.text().await?;
136
137 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
138 serde_json::from_str(&local_var_content).map_err(Error::from)
139 } else {
140 let local_var_entity: Option<ResourceGroupsGetResourceGroupError> = serde_json::from_str(&local_var_content).ok();
141 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
142 Err(Error::ResponseError(local_var_error))
143 }
144}
145
146pub async fn resource_groups_get_resource_groups(configuration: &configuration::Configuration, ) -> Result<Vec<String>, Error<ResourceGroupsGetResourceGroupsError>> {
147 let local_var_configuration = configuration;
148
149 let local_var_client = &local_var_configuration.client;
150
151 let local_var_uri_str = format!("{}/resourcegroups", local_var_configuration.base_path);
152 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
153
154 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
155 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
156 }
157 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
158 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
159 };
160
161 let local_var_req = local_var_req_builder.build()?;
162 let local_var_resp = local_var_client.execute(local_var_req).await?;
163
164 let local_var_status = local_var_resp.status();
165 let local_var_content = local_var_resp.text().await?;
166
167 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
168 serde_json::from_str(&local_var_content).map_err(Error::from)
169 } else {
170 let local_var_entity: Option<ResourceGroupsGetResourceGroupsError> = serde_json::from_str(&local_var_content).ok();
171 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
172 Err(Error::ResponseError(local_var_error))
173 }
174}
175