1use super::{configuration, ContentType, Error};
12use crate::{apis::ResponseContent, models};
13use reqwest;
14use serde::{de::Error as _, Deserialize, Serialize};
15
16#[derive(Debug, Clone, Serialize, Deserialize)]
18#[serde(untagged)]
19pub enum AddConfigurationParameterOverridesError {
20 DefaultResponse(models::FabricError),
21 UnknownValue(serde_json::Value),
22}
23
24#[derive(Debug, Clone, Serialize, Deserialize)]
26#[serde(untagged)]
27pub enum AddNodeTagsError {
28 DefaultResponse(models::FabricError),
29 UnknownValue(serde_json::Value),
30}
31
32#[derive(Debug, Clone, Serialize, Deserialize)]
34#[serde(untagged)]
35pub enum DisableNodeError {
36 DefaultResponse(models::FabricError),
37 UnknownValue(serde_json::Value),
38}
39
40#[derive(Debug, Clone, Serialize, Deserialize)]
42#[serde(untagged)]
43pub enum EnableNodeError {
44 DefaultResponse(models::FabricError),
45 UnknownValue(serde_json::Value),
46}
47
48#[derive(Debug, Clone, Serialize, Deserialize)]
50#[serde(untagged)]
51pub enum GetConfigurationOverridesError {
52 DefaultResponse(models::FabricError),
53 UnknownValue(serde_json::Value),
54}
55
56#[derive(Debug, Clone, Serialize, Deserialize)]
58#[serde(untagged)]
59pub enum GetNodeHealthError {
60 DefaultResponse(models::FabricError),
61 UnknownValue(serde_json::Value),
62}
63
64#[derive(Debug, Clone, Serialize, Deserialize)]
66#[serde(untagged)]
67pub enum GetNodeHealthUsingPolicyError {
68 DefaultResponse(models::FabricError),
69 UnknownValue(serde_json::Value),
70}
71
72#[derive(Debug, Clone, Serialize, Deserialize)]
74#[serde(untagged)]
75pub enum GetNodeInfoError {
76 DefaultResponse(models::FabricError),
77 UnknownValue(serde_json::Value),
78}
79
80#[derive(Debug, Clone, Serialize, Deserialize)]
82#[serde(untagged)]
83pub enum GetNodeInfoListError {
84 DefaultResponse(models::FabricError),
85 UnknownValue(serde_json::Value),
86}
87
88#[derive(Debug, Clone, Serialize, Deserialize)]
90#[serde(untagged)]
91pub enum GetNodeLoadInfoError {
92 DefaultResponse(models::FabricError),
93 UnknownValue(serde_json::Value),
94}
95
96#[derive(Debug, Clone, Serialize, Deserialize)]
98#[serde(untagged)]
99pub enum RemoveConfigurationOverridesError {
100 DefaultResponse(models::FabricError),
101 UnknownValue(serde_json::Value),
102}
103
104#[derive(Debug, Clone, Serialize, Deserialize)]
106#[serde(untagged)]
107pub enum RemoveNodeStateError {
108 DefaultResponse(models::FabricError),
109 UnknownValue(serde_json::Value),
110}
111
112#[derive(Debug, Clone, Serialize, Deserialize)]
114#[serde(untagged)]
115pub enum RemoveNodeTagsError {
116 DefaultResponse(models::FabricError),
117 UnknownValue(serde_json::Value),
118}
119
120#[derive(Debug, Clone, Serialize, Deserialize)]
122#[serde(untagged)]
123pub enum ReportNodeHealthError {
124 DefaultResponse(models::FabricError),
125 UnknownValue(serde_json::Value),
126}
127
128#[derive(Debug, Clone, Serialize, Deserialize)]
130#[serde(untagged)]
131pub enum RestartNodeError {
132 DefaultResponse(models::FabricError),
133 UnknownValue(serde_json::Value),
134}
135
136pub async fn add_configuration_parameter_overrides(
138 configuration: &configuration::Configuration,
139 api_version: &str,
140 node_name: &str,
141 config_parameter_override_list: Vec<models::ConfigParameterOverride>,
142 force: Option<bool>,
143 timeout: Option<i64>,
144) -> Result<(), Error<AddConfigurationParameterOverridesError>> {
145 let p_query_api_version = api_version;
147 let p_path_node_name = node_name;
148 let p_body_config_parameter_override_list = config_parameter_override_list;
149 let p_query_force = force;
150 let p_query_timeout = timeout;
151
152 let uri_str = format!(
153 "{}/Nodes/{nodeName}/$/AddConfigurationParameterOverrides",
154 configuration.base_path,
155 nodeName = crate::apis::urlencode(p_path_node_name)
156 );
157 let mut req_builder = configuration
158 .client
159 .request(reqwest::Method::POST, &uri_str);
160
161 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
162 if let Some(ref param_value) = p_query_force {
163 req_builder = req_builder.query(&[("Force", ¶m_value.to_string())]);
164 }
165 if let Some(ref param_value) = p_query_timeout {
166 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
167 }
168 if let Some(ref user_agent) = configuration.user_agent {
169 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
170 }
171 req_builder = req_builder.json(&p_body_config_parameter_override_list);
172
173 let req = req_builder.build()?;
174 let resp = configuration.client.execute(req).await?;
175
176 let status = resp.status();
177
178 if !status.is_client_error() && !status.is_server_error() {
179 Ok(())
180 } else {
181 let content = resp.text().await?;
182 let entity: Option<AddConfigurationParameterOverridesError> =
183 serde_json::from_str(&content).ok();
184 Err(Error::ResponseError(ResponseContent {
185 status,
186 content,
187 entity,
188 }))
189 }
190}
191
192pub async fn add_node_tags(
194 configuration: &configuration::Configuration,
195 api_version: &str,
196 node_name: &str,
197 node_tags: Vec<String>,
198) -> Result<(), Error<AddNodeTagsError>> {
199 let p_query_api_version = api_version;
201 let p_path_node_name = node_name;
202 let p_body_node_tags = node_tags;
203
204 let uri_str = format!(
205 "{}/Nodes/{nodeName}/$/AddNodeTags",
206 configuration.base_path,
207 nodeName = crate::apis::urlencode(p_path_node_name)
208 );
209 let mut req_builder = configuration
210 .client
211 .request(reqwest::Method::POST, &uri_str);
212
213 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
214 if let Some(ref user_agent) = configuration.user_agent {
215 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
216 }
217 req_builder = req_builder.json(&p_body_node_tags);
218
219 let req = req_builder.build()?;
220 let resp = configuration.client.execute(req).await?;
221
222 let status = resp.status();
223
224 if !status.is_client_error() && !status.is_server_error() {
225 Ok(())
226 } else {
227 let content = resp.text().await?;
228 let entity: Option<AddNodeTagsError> = serde_json::from_str(&content).ok();
229 Err(Error::ResponseError(ResponseContent {
230 status,
231 content,
232 entity,
233 }))
234 }
235}
236
237pub async fn disable_node(
239 configuration: &configuration::Configuration,
240 api_version: &str,
241 node_name: &str,
242 deactivation_intent_description: models::DeactivationIntentDescription,
243 timeout: Option<i64>,
244) -> Result<(), Error<DisableNodeError>> {
245 let p_query_api_version = api_version;
247 let p_path_node_name = node_name;
248 let p_body_deactivation_intent_description = deactivation_intent_description;
249 let p_query_timeout = timeout;
250
251 let uri_str = format!(
252 "{}/Nodes/{nodeName}/$/Deactivate",
253 configuration.base_path,
254 nodeName = crate::apis::urlencode(p_path_node_name)
255 );
256 let mut req_builder = configuration
257 .client
258 .request(reqwest::Method::POST, &uri_str);
259
260 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
261 if let Some(ref param_value) = p_query_timeout {
262 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
263 }
264 if let Some(ref user_agent) = configuration.user_agent {
265 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
266 }
267 req_builder = req_builder.json(&p_body_deactivation_intent_description);
268
269 let req = req_builder.build()?;
270 let resp = configuration.client.execute(req).await?;
271
272 let status = resp.status();
273
274 if !status.is_client_error() && !status.is_server_error() {
275 Ok(())
276 } else {
277 let content = resp.text().await?;
278 let entity: Option<DisableNodeError> = serde_json::from_str(&content).ok();
279 Err(Error::ResponseError(ResponseContent {
280 status,
281 content,
282 entity,
283 }))
284 }
285}
286
287pub async fn enable_node(
289 configuration: &configuration::Configuration,
290 api_version: &str,
291 node_name: &str,
292 timeout: Option<i64>,
293) -> Result<(), Error<EnableNodeError>> {
294 let p_query_api_version = api_version;
296 let p_path_node_name = node_name;
297 let p_query_timeout = timeout;
298
299 let uri_str = format!(
300 "{}/Nodes/{nodeName}/$/Activate",
301 configuration.base_path,
302 nodeName = crate::apis::urlencode(p_path_node_name)
303 );
304 let mut req_builder = configuration
305 .client
306 .request(reqwest::Method::POST, &uri_str);
307
308 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
309 if let Some(ref param_value) = p_query_timeout {
310 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
311 }
312 if let Some(ref user_agent) = configuration.user_agent {
313 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
314 }
315
316 let req = req_builder.build()?;
317 let resp = configuration.client.execute(req).await?;
318
319 let status = resp.status();
320
321 if !status.is_client_error() && !status.is_server_error() {
322 Ok(())
323 } else {
324 let content = resp.text().await?;
325 let entity: Option<EnableNodeError> = serde_json::from_str(&content).ok();
326 Err(Error::ResponseError(ResponseContent {
327 status,
328 content,
329 entity,
330 }))
331 }
332}
333
334pub async fn get_configuration_overrides(
336 configuration: &configuration::Configuration,
337 api_version: &str,
338 node_name: &str,
339 timeout: Option<i64>,
340) -> Result<Vec<models::ConfigParameterOverride>, Error<GetConfigurationOverridesError>> {
341 let p_query_api_version = api_version;
343 let p_path_node_name = node_name;
344 let p_query_timeout = timeout;
345
346 let uri_str = format!(
347 "{}/Nodes/{nodeName}/$/GetConfigurationOverrides",
348 configuration.base_path,
349 nodeName = crate::apis::urlencode(p_path_node_name)
350 );
351 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
352
353 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
354 if let Some(ref param_value) = p_query_timeout {
355 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
356 }
357 if let Some(ref user_agent) = configuration.user_agent {
358 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
359 }
360
361 let req = req_builder.build()?;
362 let resp = configuration.client.execute(req).await?;
363
364 let status = resp.status();
365 let content_type = resp
366 .headers()
367 .get("content-type")
368 .and_then(|v| v.to_str().ok())
369 .unwrap_or("application/octet-stream");
370 let content_type = super::ContentType::from(content_type);
371
372 if !status.is_client_error() && !status.is_server_error() {
373 let content = resp.text().await?;
374 match content_type {
375 ContentType::Json => serde_json::from_str(&content).map_err(Error::from),
376 ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `Vec<models::ConfigParameterOverride>`"))),
377 ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `Vec<models::ConfigParameterOverride>`")))),
378 }
379 } else {
380 let content = resp.text().await?;
381 let entity: Option<GetConfigurationOverridesError> = serde_json::from_str(&content).ok();
382 Err(Error::ResponseError(ResponseContent {
383 status,
384 content,
385 entity,
386 }))
387 }
388}
389
390pub async fn get_node_health(
392 configuration: &configuration::Configuration,
393 api_version: &str,
394 node_name: &str,
395 events_health_state_filter: Option<i32>,
396 timeout: Option<i64>,
397) -> Result<models::NodeHealth, Error<GetNodeHealthError>> {
398 let p_query_api_version = api_version;
400 let p_path_node_name = node_name;
401 let p_query_events_health_state_filter = events_health_state_filter;
402 let p_query_timeout = timeout;
403
404 let uri_str = format!(
405 "{}/Nodes/{nodeName}/$/GetHealth",
406 configuration.base_path,
407 nodeName = crate::apis::urlencode(p_path_node_name)
408 );
409 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
410
411 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
412 if let Some(ref param_value) = p_query_events_health_state_filter {
413 req_builder = req_builder.query(&[("EventsHealthStateFilter", ¶m_value.to_string())]);
414 }
415 if let Some(ref param_value) = p_query_timeout {
416 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
417 }
418 if let Some(ref user_agent) = configuration.user_agent {
419 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
420 }
421
422 let req = req_builder.build()?;
423 let resp = configuration.client.execute(req).await?;
424
425 let status = resp.status();
426 let content_type = resp
427 .headers()
428 .get("content-type")
429 .and_then(|v| v.to_str().ok())
430 .unwrap_or("application/octet-stream");
431 let content_type = super::ContentType::from(content_type);
432
433 if !status.is_client_error() && !status.is_server_error() {
434 let content = resp.text().await?;
435 match content_type {
436 ContentType::Json => serde_json::from_str(&content).map_err(Error::from),
437 ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `models::NodeHealth`"))),
438 ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `models::NodeHealth`")))),
439 }
440 } else {
441 let content = resp.text().await?;
442 let entity: Option<GetNodeHealthError> = serde_json::from_str(&content).ok();
443 Err(Error::ResponseError(ResponseContent {
444 status,
445 content,
446 entity,
447 }))
448 }
449}
450
451pub async fn get_node_health_using_policy(
453 configuration: &configuration::Configuration,
454 api_version: &str,
455 node_name: &str,
456 events_health_state_filter: Option<i32>,
457 timeout: Option<i64>,
458 cluster_health_policy: Option<models::ClusterHealthPolicy>,
459) -> Result<models::NodeHealth, Error<GetNodeHealthUsingPolicyError>> {
460 let p_query_api_version = api_version;
462 let p_path_node_name = node_name;
463 let p_query_events_health_state_filter = events_health_state_filter;
464 let p_query_timeout = timeout;
465 let p_body_cluster_health_policy = cluster_health_policy;
466
467 let uri_str = format!(
468 "{}/Nodes/{nodeName}/$/GetHealth",
469 configuration.base_path,
470 nodeName = crate::apis::urlencode(p_path_node_name)
471 );
472 let mut req_builder = configuration
473 .client
474 .request(reqwest::Method::POST, &uri_str);
475
476 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
477 if let Some(ref param_value) = p_query_events_health_state_filter {
478 req_builder = req_builder.query(&[("EventsHealthStateFilter", ¶m_value.to_string())]);
479 }
480 if let Some(ref param_value) = p_query_timeout {
481 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
482 }
483 if let Some(ref user_agent) = configuration.user_agent {
484 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
485 }
486 req_builder = req_builder.json(&p_body_cluster_health_policy);
487
488 let req = req_builder.build()?;
489 let resp = configuration.client.execute(req).await?;
490
491 let status = resp.status();
492 let content_type = resp
493 .headers()
494 .get("content-type")
495 .and_then(|v| v.to_str().ok())
496 .unwrap_or("application/octet-stream");
497 let content_type = super::ContentType::from(content_type);
498
499 if !status.is_client_error() && !status.is_server_error() {
500 let content = resp.text().await?;
501 match content_type {
502 ContentType::Json => serde_json::from_str(&content).map_err(Error::from),
503 ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `models::NodeHealth`"))),
504 ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `models::NodeHealth`")))),
505 }
506 } else {
507 let content = resp.text().await?;
508 let entity: Option<GetNodeHealthUsingPolicyError> = serde_json::from_str(&content).ok();
509 Err(Error::ResponseError(ResponseContent {
510 status,
511 content,
512 entity,
513 }))
514 }
515}
516
517pub async fn get_node_info(
519 configuration: &configuration::Configuration,
520 api_version: &str,
521 node_name: &str,
522 timeout: Option<i64>,
523) -> Result<models::NodeInfo, Error<GetNodeInfoError>> {
524 let p_query_api_version = api_version;
526 let p_path_node_name = node_name;
527 let p_query_timeout = timeout;
528
529 let uri_str = format!(
530 "{}/Nodes/{nodeName}",
531 configuration.base_path,
532 nodeName = crate::apis::urlencode(p_path_node_name)
533 );
534 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
535
536 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
537 if let Some(ref param_value) = p_query_timeout {
538 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
539 }
540 if let Some(ref user_agent) = configuration.user_agent {
541 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
542 }
543
544 let req = req_builder.build()?;
545 let resp = configuration.client.execute(req).await?;
546
547 let status = resp.status();
548 let content_type = resp
549 .headers()
550 .get("content-type")
551 .and_then(|v| v.to_str().ok())
552 .unwrap_or("application/octet-stream");
553 let content_type = super::ContentType::from(content_type);
554
555 if !status.is_client_error() && !status.is_server_error() {
556 let content = resp.text().await?;
557 match content_type {
558 ContentType::Json => serde_json::from_str(&content).map_err(Error::from),
559 ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `models::NodeInfo`"))),
560 ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `models::NodeInfo`")))),
561 }
562 } else {
563 let content = resp.text().await?;
564 let entity: Option<GetNodeInfoError> = serde_json::from_str(&content).ok();
565 Err(Error::ResponseError(ResponseContent {
566 status,
567 content,
568 entity,
569 }))
570 }
571}
572
573pub async fn get_node_info_list(
575 configuration: &configuration::Configuration,
576 api_version: &str,
577 continuation_token: Option<&str>,
578 node_status_filter: Option<&str>,
579 max_results: Option<i64>,
580 timeout: Option<i64>,
581) -> Result<models::PagedNodeInfoList, Error<GetNodeInfoListError>> {
582 let p_query_api_version = api_version;
584 let p_query_continuation_token = continuation_token;
585 let p_query_node_status_filter = node_status_filter;
586 let p_query_max_results = max_results;
587 let p_query_timeout = timeout;
588
589 let uri_str = format!("{}/Nodes", configuration.base_path);
590 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
591
592 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
593 if let Some(ref param_value) = p_query_continuation_token {
594 req_builder = req_builder.query(&[("ContinuationToken", ¶m_value.to_string())]);
595 }
596 if let Some(ref param_value) = p_query_node_status_filter {
597 req_builder = req_builder.query(&[("NodeStatusFilter", ¶m_value.to_string())]);
598 }
599 if let Some(ref param_value) = p_query_max_results {
600 req_builder = req_builder.query(&[("MaxResults", ¶m_value.to_string())]);
601 }
602 if let Some(ref param_value) = p_query_timeout {
603 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
604 }
605 if let Some(ref user_agent) = configuration.user_agent {
606 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
607 }
608
609 let req = req_builder.build()?;
610 let resp = configuration.client.execute(req).await?;
611
612 let status = resp.status();
613 let content_type = resp
614 .headers()
615 .get("content-type")
616 .and_then(|v| v.to_str().ok())
617 .unwrap_or("application/octet-stream");
618 let content_type = super::ContentType::from(content_type);
619
620 if !status.is_client_error() && !status.is_server_error() {
621 let content = resp.text().await?;
622 match content_type {
623 ContentType::Json => serde_json::from_str(&content).map_err(Error::from),
624 ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `models::PagedNodeInfoList`"))),
625 ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `models::PagedNodeInfoList`")))),
626 }
627 } else {
628 let content = resp.text().await?;
629 let entity: Option<GetNodeInfoListError> = serde_json::from_str(&content).ok();
630 Err(Error::ResponseError(ResponseContent {
631 status,
632 content,
633 entity,
634 }))
635 }
636}
637
638pub async fn get_node_load_info(
640 configuration: &configuration::Configuration,
641 api_version: &str,
642 node_name: &str,
643 timeout: Option<i64>,
644) -> Result<models::NodeLoadInfo, Error<GetNodeLoadInfoError>> {
645 let p_query_api_version = api_version;
647 let p_path_node_name = node_name;
648 let p_query_timeout = timeout;
649
650 let uri_str = format!(
651 "{}/Nodes/{nodeName}/$/GetLoadInformation",
652 configuration.base_path,
653 nodeName = crate::apis::urlencode(p_path_node_name)
654 );
655 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
656
657 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
658 if let Some(ref param_value) = p_query_timeout {
659 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
660 }
661 if let Some(ref user_agent) = configuration.user_agent {
662 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
663 }
664
665 let req = req_builder.build()?;
666 let resp = configuration.client.execute(req).await?;
667
668 let status = resp.status();
669 let content_type = resp
670 .headers()
671 .get("content-type")
672 .and_then(|v| v.to_str().ok())
673 .unwrap_or("application/octet-stream");
674 let content_type = super::ContentType::from(content_type);
675
676 if !status.is_client_error() && !status.is_server_error() {
677 let content = resp.text().await?;
678 match content_type {
679 ContentType::Json => serde_json::from_str(&content).map_err(Error::from),
680 ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `models::NodeLoadInfo`"))),
681 ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `models::NodeLoadInfo`")))),
682 }
683 } else {
684 let content = resp.text().await?;
685 let entity: Option<GetNodeLoadInfoError> = serde_json::from_str(&content).ok();
686 Err(Error::ResponseError(ResponseContent {
687 status,
688 content,
689 entity,
690 }))
691 }
692}
693
694pub async fn remove_configuration_overrides(
696 configuration: &configuration::Configuration,
697 api_version: &str,
698 node_name: &str,
699 timeout: Option<i64>,
700) -> Result<(), Error<RemoveConfigurationOverridesError>> {
701 let p_query_api_version = api_version;
703 let p_path_node_name = node_name;
704 let p_query_timeout = timeout;
705
706 let uri_str = format!(
707 "{}/Nodes/{nodeName}/$/RemoveConfigurationOverrides",
708 configuration.base_path,
709 nodeName = crate::apis::urlencode(p_path_node_name)
710 );
711 let mut req_builder = configuration
712 .client
713 .request(reqwest::Method::DELETE, &uri_str);
714
715 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
716 if let Some(ref param_value) = p_query_timeout {
717 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
718 }
719 if let Some(ref user_agent) = configuration.user_agent {
720 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
721 }
722
723 let req = req_builder.build()?;
724 let resp = configuration.client.execute(req).await?;
725
726 let status = resp.status();
727
728 if !status.is_client_error() && !status.is_server_error() {
729 Ok(())
730 } else {
731 let content = resp.text().await?;
732 let entity: Option<RemoveConfigurationOverridesError> = serde_json::from_str(&content).ok();
733 Err(Error::ResponseError(ResponseContent {
734 status,
735 content,
736 entity,
737 }))
738 }
739}
740
741pub async fn remove_node_state(
743 configuration: &configuration::Configuration,
744 api_version: &str,
745 node_name: &str,
746 timeout: Option<i64>,
747) -> Result<(), Error<RemoveNodeStateError>> {
748 let p_query_api_version = api_version;
750 let p_path_node_name = node_name;
751 let p_query_timeout = timeout;
752
753 let uri_str = format!(
754 "{}/Nodes/{nodeName}/$/RemoveNodeState",
755 configuration.base_path,
756 nodeName = crate::apis::urlencode(p_path_node_name)
757 );
758 let mut req_builder = configuration
759 .client
760 .request(reqwest::Method::POST, &uri_str);
761
762 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
763 if let Some(ref param_value) = p_query_timeout {
764 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
765 }
766 if let Some(ref user_agent) = configuration.user_agent {
767 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
768 }
769
770 let req = req_builder.build()?;
771 let resp = configuration.client.execute(req).await?;
772
773 let status = resp.status();
774
775 if !status.is_client_error() && !status.is_server_error() {
776 Ok(())
777 } else {
778 let content = resp.text().await?;
779 let entity: Option<RemoveNodeStateError> = serde_json::from_str(&content).ok();
780 Err(Error::ResponseError(ResponseContent {
781 status,
782 content,
783 entity,
784 }))
785 }
786}
787
788pub async fn remove_node_tags(
790 configuration: &configuration::Configuration,
791 api_version: &str,
792 node_name: &str,
793 node_tags: Vec<String>,
794) -> Result<(), Error<RemoveNodeTagsError>> {
795 let p_query_api_version = api_version;
797 let p_path_node_name = node_name;
798 let p_body_node_tags = node_tags;
799
800 let uri_str = format!(
801 "{}/Nodes/{nodeName}/$/RemoveNodeTags",
802 configuration.base_path,
803 nodeName = crate::apis::urlencode(p_path_node_name)
804 );
805 let mut req_builder = configuration
806 .client
807 .request(reqwest::Method::POST, &uri_str);
808
809 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
810 if let Some(ref user_agent) = configuration.user_agent {
811 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
812 }
813 req_builder = req_builder.json(&p_body_node_tags);
814
815 let req = req_builder.build()?;
816 let resp = configuration.client.execute(req).await?;
817
818 let status = resp.status();
819
820 if !status.is_client_error() && !status.is_server_error() {
821 Ok(())
822 } else {
823 let content = resp.text().await?;
824 let entity: Option<RemoveNodeTagsError> = serde_json::from_str(&content).ok();
825 Err(Error::ResponseError(ResponseContent {
826 status,
827 content,
828 entity,
829 }))
830 }
831}
832
833pub async fn report_node_health(
835 configuration: &configuration::Configuration,
836 api_version: &str,
837 node_name: &str,
838 health_information: models::HealthInformation,
839 immediate: Option<bool>,
840 timeout: Option<i64>,
841) -> Result<(), Error<ReportNodeHealthError>> {
842 let p_query_api_version = api_version;
844 let p_path_node_name = node_name;
845 let p_body_health_information = health_information;
846 let p_query_immediate = immediate;
847 let p_query_timeout = timeout;
848
849 let uri_str = format!(
850 "{}/Nodes/{nodeName}/$/ReportHealth",
851 configuration.base_path,
852 nodeName = crate::apis::urlencode(p_path_node_name)
853 );
854 let mut req_builder = configuration
855 .client
856 .request(reqwest::Method::POST, &uri_str);
857
858 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
859 if let Some(ref param_value) = p_query_immediate {
860 req_builder = req_builder.query(&[("Immediate", ¶m_value.to_string())]);
861 }
862 if let Some(ref param_value) = p_query_timeout {
863 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
864 }
865 if let Some(ref user_agent) = configuration.user_agent {
866 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
867 }
868 req_builder = req_builder.json(&p_body_health_information);
869
870 let req = req_builder.build()?;
871 let resp = configuration.client.execute(req).await?;
872
873 let status = resp.status();
874
875 if !status.is_client_error() && !status.is_server_error() {
876 Ok(())
877 } else {
878 let content = resp.text().await?;
879 let entity: Option<ReportNodeHealthError> = serde_json::from_str(&content).ok();
880 Err(Error::ResponseError(ResponseContent {
881 status,
882 content,
883 entity,
884 }))
885 }
886}
887
888pub async fn restart_node(
890 configuration: &configuration::Configuration,
891 api_version: &str,
892 node_name: &str,
893 restart_node_description: models::RestartNodeDescription,
894 timeout: Option<i64>,
895) -> Result<(), Error<RestartNodeError>> {
896 let p_query_api_version = api_version;
898 let p_path_node_name = node_name;
899 let p_body_restart_node_description = restart_node_description;
900 let p_query_timeout = timeout;
901
902 let uri_str = format!(
903 "{}/Nodes/{nodeName}/$/Restart",
904 configuration.base_path,
905 nodeName = crate::apis::urlencode(p_path_node_name)
906 );
907 let mut req_builder = configuration
908 .client
909 .request(reqwest::Method::POST, &uri_str);
910
911 req_builder = req_builder.query(&[("api-version", &p_query_api_version.to_string())]);
912 if let Some(ref param_value) = p_query_timeout {
913 req_builder = req_builder.query(&[("timeout", ¶m_value.to_string())]);
914 }
915 if let Some(ref user_agent) = configuration.user_agent {
916 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
917 }
918 req_builder = req_builder.json(&p_body_restart_node_description);
919
920 let req = req_builder.build()?;
921 let resp = configuration.client.execute(req).await?;
922
923 let status = resp.status();
924
925 if !status.is_client_error() && !status.is_server_error() {
926 Ok(())
927 } else {
928 let content = resp.text().await?;
929 let entity: Option<RestartNodeError> = serde_json::from_str(&content).ok();
930 Err(Error::ResponseError(ResponseContent {
931 status,
932 content,
933 entity,
934 }))
935 }
936}