podman_autogen_api/apis/
pods_api.rs

1/*
2 * supports a RESTful API for the Libpod library
3 *
4 * This documentation describes the Podman v2.x+ RESTful API. It consists of a Docker-compatible API and a Libpod API providing support for Podman’s unique features such as pods.  To start the service and keep it running for 5,000 seconds (-t 0 runs forever):  podman system service -t 5000 &  You can then use cURL on the socket using requests documented below.  NOTE: if you install the package podman-docker, it will create a symbolic link for /run/docker.sock to /run/podman/podman.sock  NOTE: Some fields in the API response JSON are encoded as omitempty, which means that if said field has a zero value, they will not be encoded in the API response. This is a feature to help reduce the size of the JSON responses returned via the API.  NOTE: Due to the limitations of [go-swagger](https://github.com/go-swagger/go-swagger), some field values that have a complex type show up as null in the docs as well as in the API responses. This is because the zero value for the field type is null. The field description in the docs will state what type the field is expected to be for such cases.  See podman-system-service(1) for more information.  Quick Examples:  'podman info'  curl --unix-socket /run/podman/podman.sock http://d/v5.0.0/libpod/info  'podman pull quay.io/containers/podman'  curl -XPOST --unix-socket /run/podman/podman.sock -v 'http://d/v5.0.0/images/create?fromImage=quay.io%2Fcontainers%2Fpodman'  'podman list images'  curl --unix-socket /run/podman/podman.sock -v 'http://d/v5.0.0/libpod/images/json' | jq
5 *
6 * The version of the OpenAPI document: 5.0.0
7 * Contact: podman@lists.podman.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use std::borrow::Borrow;
12#[allow(unused_imports)]
13use std::option::Option;
14use std::pin::Pin;
15use std::sync::Arc;
16
17use futures::Future;
18use hyper;
19use hyper_util::client::legacy::connect::Connect;
20
21use super::request as __internal_request;
22use super::{configuration, Error};
23use crate::models;
24
25pub struct PodsApiClient<C: Connect>
26where
27    C: Clone + std::marker::Send + Sync + 'static,
28{
29    configuration: Arc<configuration::Configuration<C>>,
30}
31
32impl<C: Connect> PodsApiClient<C>
33where
34    C: Clone + std::marker::Send + Sync,
35{
36    pub fn new(configuration: Arc<configuration::Configuration<C>>) -> PodsApiClient<C> {
37        PodsApiClient { configuration }
38    }
39}
40
41pub trait PodsApi: Send + Sync {
42    fn generate_kube_libpod(
43        &self,
44        names: Vec<String>,
45        service: Option<bool>,
46        r#type: Option<&str>,
47        replicas: Option<i32>,
48        no_trunc: Option<bool>,
49        podman_only: Option<bool>,
50    ) -> Pin<Box<dyn Future<Output = Result<std::path::PathBuf, Error>> + Send>>;
51    fn generate_systemd_libpod(
52        &self,
53        name: &str,
54        use_name: Option<bool>,
55        new: Option<bool>,
56        no_header: Option<bool>,
57        start_timeout: Option<i32>,
58        stop_timeout: Option<i32>,
59        restart_policy: Option<&str>,
60        container_prefix: Option<&str>,
61        pod_prefix: Option<&str>,
62        separator: Option<&str>,
63        restart_sec: Option<i32>,
64        wants: Option<Vec<String>>,
65        after: Option<Vec<String>>,
66        requires: Option<Vec<String>>,
67        additional_env_variables: Option<Vec<String>>,
68    ) -> Pin<
69        Box<dyn Future<Output = Result<std::collections::HashMap<String, String>, Error>> + Send>,
70    >;
71    fn kube_apply_libpod(
72        &self,
73        ca_cert_file: Option<&str>,
74        kube_config: Option<&str>,
75        namespace: Option<&str>,
76        service: Option<bool>,
77        file: Option<&str>,
78        request: Option<&str>,
79    ) -> Pin<Box<dyn Future<Output = Result<std::path::PathBuf, Error>> + Send>>;
80    fn play_kube_down_libpod(
81        &self,
82        force: Option<bool>,
83    ) -> Pin<Box<dyn Future<Output = Result<models::PlayKubeReport, Error>> + Send>>;
84    fn play_kube_libpod(
85        &self,
86        annotations: Option<&str>,
87        log_driver: Option<&str>,
88        log_options: Option<Vec<String>>,
89        network: Option<Vec<String>>,
90        no_hosts: Option<bool>,
91        no_trunc: Option<bool>,
92        publish_ports: Option<Vec<String>>,
93        publish_all_ports: Option<bool>,
94        replace: Option<bool>,
95        service_container: Option<bool>,
96        start: Option<bool>,
97        static_ips: Option<Vec<String>>,
98        static_macs: Option<Vec<String>>,
99        tls_verify: Option<bool>,
100        userns: Option<&str>,
101        wait: Option<bool>,
102        request: Option<&str>,
103    ) -> Pin<Box<dyn Future<Output = Result<models::PlayKubeReport, Error>> + Send>>;
104    fn pod_create_libpod(
105        &self,
106        create: Option<models::PodSpecGenerator>,
107    ) -> Pin<Box<dyn Future<Output = Result<models::IdResponse, Error>> + Send>>;
108    fn pod_delete_libpod(
109        &self,
110        name: &str,
111        force: Option<bool>,
112    ) -> Pin<Box<dyn Future<Output = Result<models::PodRmReport, Error>> + Send>>;
113    fn pod_exists_libpod(
114        &self,
115        name: &str,
116    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send>>;
117    fn pod_inspect_libpod(
118        &self,
119        name: &str,
120    ) -> Pin<Box<dyn Future<Output = Result<models::InspectPodData, Error>> + Send>>;
121    fn pod_kill_libpod(
122        &self,
123        name: &str,
124        signal: Option<&str>,
125    ) -> Pin<Box<dyn Future<Output = Result<models::PodKillReport, Error>> + Send>>;
126    fn pod_list_libpod(
127        &self,
128        filters: Option<&str>,
129    ) -> Pin<Box<dyn Future<Output = Result<Vec<models::ListPodsReport>, Error>> + Send>>;
130    fn pod_pause_libpod(
131        &self,
132        name: &str,
133    ) -> Pin<Box<dyn Future<Output = Result<models::PodPauseReport, Error>> + Send>>;
134    fn pod_prune_libpod(
135        &self,
136    ) -> Pin<Box<dyn Future<Output = Result<models::PodPruneReport, Error>> + Send>>;
137    fn pod_restart_libpod(
138        &self,
139        name: &str,
140    ) -> Pin<Box<dyn Future<Output = Result<models::PodRestartReport, Error>> + Send>>;
141    fn pod_start_libpod(
142        &self,
143        name: &str,
144    ) -> Pin<Box<dyn Future<Output = Result<models::PodStartReport, Error>> + Send>>;
145    fn pod_stats_all_libpod(
146        &self,
147        all: Option<bool>,
148        names_or_ids: Option<Vec<String>>,
149    ) -> Pin<Box<dyn Future<Output = Result<Vec<models::PodStatsReport>, Error>> + Send>>;
150    fn pod_stop_libpod(
151        &self,
152        name: &str,
153        t: Option<i32>,
154    ) -> Pin<Box<dyn Future<Output = Result<models::PodStopReport, Error>> + Send>>;
155    fn pod_top_libpod(
156        &self,
157        name: &str,
158        stream: Option<bool>,
159        delay: Option<i32>,
160        ps_args: Option<&str>,
161    ) -> Pin<Box<dyn Future<Output = Result<models::PodTopOkBody, Error>> + Send>>;
162    fn pod_unpause_libpod(
163        &self,
164        name: &str,
165    ) -> Pin<Box<dyn Future<Output = Result<models::PodUnpauseReport, Error>> + Send>>;
166}
167
168impl<C: Connect> PodsApi for PodsApiClient<C>
169where
170    C: Clone + std::marker::Send + Sync,
171{
172    #[allow(unused_mut)]
173    fn generate_kube_libpod(
174        &self,
175        names: Vec<String>,
176        service: Option<bool>,
177        r#type: Option<&str>,
178        replicas: Option<i32>,
179        no_trunc: Option<bool>,
180        podman_only: Option<bool>,
181    ) -> Pin<Box<dyn Future<Output = Result<std::path::PathBuf, Error>> + Send>> {
182        let mut req = __internal_request::Request::new(
183            hyper::Method::GET,
184            "/libpod/generate/kube".to_string(),
185        );
186        req = req.with_query_param("names".to_string(), names.join(",").to_string());
187        if let Some(ref s) = service {
188            let query_value = s.to_string();
189            req = req.with_query_param("service".to_string(), query_value);
190        }
191        if let Some(ref s) = r#type {
192            let query_value = s.to_string();
193            req = req.with_query_param("type".to_string(), query_value);
194        }
195        if let Some(ref s) = replicas {
196            let query_value = s.to_string();
197            req = req.with_query_param("replicas".to_string(), query_value);
198        }
199        if let Some(ref s) = no_trunc {
200            let query_value = s.to_string();
201            req = req.with_query_param("noTrunc".to_string(), query_value);
202        }
203        if let Some(ref s) = podman_only {
204            let query_value = s.to_string();
205            req = req.with_query_param("podmanOnly".to_string(), query_value);
206        }
207
208        req.execute(self.configuration.borrow())
209    }
210
211    #[allow(unused_mut)]
212    fn generate_systemd_libpod(
213        &self,
214        name: &str,
215        use_name: Option<bool>,
216        new: Option<bool>,
217        no_header: Option<bool>,
218        start_timeout: Option<i32>,
219        stop_timeout: Option<i32>,
220        restart_policy: Option<&str>,
221        container_prefix: Option<&str>,
222        pod_prefix: Option<&str>,
223        separator: Option<&str>,
224        restart_sec: Option<i32>,
225        wants: Option<Vec<String>>,
226        after: Option<Vec<String>>,
227        requires: Option<Vec<String>>,
228        additional_env_variables: Option<Vec<String>>,
229    ) -> Pin<
230        Box<dyn Future<Output = Result<std::collections::HashMap<String, String>, Error>> + Send>,
231    > {
232        let mut req = __internal_request::Request::new(
233            hyper::Method::GET,
234            "/libpod/generate/{name}/systemd".to_string(),
235        );
236        if let Some(ref s) = use_name {
237            let query_value = s.to_string();
238            req = req.with_query_param("useName".to_string(), query_value);
239        }
240        if let Some(ref s) = new {
241            let query_value = s.to_string();
242            req = req.with_query_param("new".to_string(), query_value);
243        }
244        if let Some(ref s) = no_header {
245            let query_value = s.to_string();
246            req = req.with_query_param("noHeader".to_string(), query_value);
247        }
248        if let Some(ref s) = start_timeout {
249            let query_value = s.to_string();
250            req = req.with_query_param("startTimeout".to_string(), query_value);
251        }
252        if let Some(ref s) = stop_timeout {
253            let query_value = s.to_string();
254            req = req.with_query_param("stopTimeout".to_string(), query_value);
255        }
256        if let Some(ref s) = restart_policy {
257            let query_value = s.to_string();
258            req = req.with_query_param("restartPolicy".to_string(), query_value);
259        }
260        if let Some(ref s) = container_prefix {
261            let query_value = s.to_string();
262            req = req.with_query_param("containerPrefix".to_string(), query_value);
263        }
264        if let Some(ref s) = pod_prefix {
265            let query_value = s.to_string();
266            req = req.with_query_param("podPrefix".to_string(), query_value);
267        }
268        if let Some(ref s) = separator {
269            let query_value = s.to_string();
270            req = req.with_query_param("separator".to_string(), query_value);
271        }
272        if let Some(ref s) = restart_sec {
273            let query_value = s.to_string();
274            req = req.with_query_param("restartSec".to_string(), query_value);
275        }
276        if let Some(ref s) = wants {
277            let query_value = s
278                .iter()
279                .map(|s| s.to_string())
280                .collect::<Vec<String>>()
281                .join(",");
282            req = req.with_query_param("wants".to_string(), query_value);
283        }
284        if let Some(ref s) = after {
285            let query_value = s
286                .iter()
287                .map(|s| s.to_string())
288                .collect::<Vec<String>>()
289                .join(",");
290            req = req.with_query_param("after".to_string(), query_value);
291        }
292        if let Some(ref s) = requires {
293            let query_value = s
294                .iter()
295                .map(|s| s.to_string())
296                .collect::<Vec<String>>()
297                .join(",");
298            req = req.with_query_param("requires".to_string(), query_value);
299        }
300        if let Some(ref s) = additional_env_variables {
301            let query_value = s
302                .iter()
303                .map(|s| s.to_string())
304                .collect::<Vec<String>>()
305                .join(",");
306            req = req.with_query_param("additionalEnvVariables".to_string(), query_value);
307        }
308        req = req.with_path_param("name".to_string(), name.to_string());
309
310        req.execute(self.configuration.borrow())
311    }
312
313    #[allow(unused_mut)]
314    fn kube_apply_libpod(
315        &self,
316        ca_cert_file: Option<&str>,
317        kube_config: Option<&str>,
318        namespace: Option<&str>,
319        service: Option<bool>,
320        file: Option<&str>,
321        request: Option<&str>,
322    ) -> Pin<Box<dyn Future<Output = Result<std::path::PathBuf, Error>> + Send>> {
323        let mut req =
324            __internal_request::Request::new(hyper::Method::POST, "/libpod/kube/apply".to_string());
325        if let Some(ref s) = ca_cert_file {
326            let query_value = s.to_string();
327            req = req.with_query_param("caCertFile".to_string(), query_value);
328        }
329        if let Some(ref s) = kube_config {
330            let query_value = s.to_string();
331            req = req.with_query_param("kubeConfig".to_string(), query_value);
332        }
333        if let Some(ref s) = namespace {
334            let query_value = s.to_string();
335            req = req.with_query_param("namespace".to_string(), query_value);
336        }
337        if let Some(ref s) = service {
338            let query_value = s.to_string();
339            req = req.with_query_param("service".to_string(), query_value);
340        }
341        if let Some(ref s) = file {
342            let query_value = s.to_string();
343            req = req.with_query_param("file".to_string(), query_value);
344        }
345        req = req.with_body_param(request);
346
347        req.execute(self.configuration.borrow())
348    }
349
350    #[allow(unused_mut)]
351    fn play_kube_down_libpod(
352        &self,
353        force: Option<bool>,
354    ) -> Pin<Box<dyn Future<Output = Result<models::PlayKubeReport, Error>> + Send>> {
355        let mut req = __internal_request::Request::new(
356            hyper::Method::DELETE,
357            "/libpod/play/kube".to_string(),
358        );
359        if let Some(ref s) = force {
360            let query_value = s.to_string();
361            req = req.with_query_param("force".to_string(), query_value);
362        }
363
364        req.execute(self.configuration.borrow())
365    }
366
367    #[allow(unused_mut)]
368    fn play_kube_libpod(
369        &self,
370        annotations: Option<&str>,
371        log_driver: Option<&str>,
372        log_options: Option<Vec<String>>,
373        network: Option<Vec<String>>,
374        no_hosts: Option<bool>,
375        no_trunc: Option<bool>,
376        publish_ports: Option<Vec<String>>,
377        publish_all_ports: Option<bool>,
378        replace: Option<bool>,
379        service_container: Option<bool>,
380        start: Option<bool>,
381        static_ips: Option<Vec<String>>,
382        static_macs: Option<Vec<String>>,
383        tls_verify: Option<bool>,
384        userns: Option<&str>,
385        wait: Option<bool>,
386        request: Option<&str>,
387    ) -> Pin<Box<dyn Future<Output = Result<models::PlayKubeReport, Error>> + Send>> {
388        let mut req =
389            __internal_request::Request::new(hyper::Method::POST, "/libpod/play/kube".to_string());
390        if let Some(ref s) = annotations {
391            let query_value = s.to_string();
392            req = req.with_query_param("annotations".to_string(), query_value);
393        }
394        if let Some(ref s) = log_driver {
395            let query_value = s.to_string();
396            req = req.with_query_param("logDriver".to_string(), query_value);
397        }
398        if let Some(ref s) = log_options {
399            let query_value = s
400                .iter()
401                .map(|s| s.to_string())
402                .collect::<Vec<String>>()
403                .join(",");
404            req = req.with_query_param("logOptions".to_string(), query_value);
405        }
406        if let Some(ref s) = network {
407            let query_value = s
408                .iter()
409                .map(|s| s.to_string())
410                .collect::<Vec<String>>()
411                .join(",");
412            req = req.with_query_param("network".to_string(), query_value);
413        }
414        if let Some(ref s) = no_hosts {
415            let query_value = s.to_string();
416            req = req.with_query_param("noHosts".to_string(), query_value);
417        }
418        if let Some(ref s) = no_trunc {
419            let query_value = s.to_string();
420            req = req.with_query_param("noTrunc".to_string(), query_value);
421        }
422        if let Some(ref s) = publish_ports {
423            let query_value = s
424                .iter()
425                .map(|s| s.to_string())
426                .collect::<Vec<String>>()
427                .join(",");
428            req = req.with_query_param("publishPorts".to_string(), query_value);
429        }
430        if let Some(ref s) = publish_all_ports {
431            let query_value = s.to_string();
432            req = req.with_query_param("publishAllPorts".to_string(), query_value);
433        }
434        if let Some(ref s) = replace {
435            let query_value = s.to_string();
436            req = req.with_query_param("replace".to_string(), query_value);
437        }
438        if let Some(ref s) = service_container {
439            let query_value = s.to_string();
440            req = req.with_query_param("serviceContainer".to_string(), query_value);
441        }
442        if let Some(ref s) = start {
443            let query_value = s.to_string();
444            req = req.with_query_param("start".to_string(), query_value);
445        }
446        if let Some(ref s) = static_ips {
447            let query_value = s
448                .iter()
449                .map(|s| s.to_string())
450                .collect::<Vec<String>>()
451                .join(",");
452            req = req.with_query_param("staticIPs".to_string(), query_value);
453        }
454        if let Some(ref s) = static_macs {
455            let query_value = s
456                .iter()
457                .map(|s| s.to_string())
458                .collect::<Vec<String>>()
459                .join(",");
460            req = req.with_query_param("staticMACs".to_string(), query_value);
461        }
462        if let Some(ref s) = tls_verify {
463            let query_value = s.to_string();
464            req = req.with_query_param("tlsVerify".to_string(), query_value);
465        }
466        if let Some(ref s) = userns {
467            let query_value = s.to_string();
468            req = req.with_query_param("userns".to_string(), query_value);
469        }
470        if let Some(ref s) = wait {
471            let query_value = s.to_string();
472            req = req.with_query_param("wait".to_string(), query_value);
473        }
474        req = req.with_body_param(request);
475
476        req.execute(self.configuration.borrow())
477    }
478
479    #[allow(unused_mut)]
480    fn pod_create_libpod(
481        &self,
482        create: Option<models::PodSpecGenerator>,
483    ) -> Pin<Box<dyn Future<Output = Result<models::IdResponse, Error>> + Send>> {
484        let mut req = __internal_request::Request::new(
485            hyper::Method::POST,
486            "/libpod/pods/create".to_string(),
487        );
488        req = req.with_body_param(create);
489
490        req.execute(self.configuration.borrow())
491    }
492
493    #[allow(unused_mut)]
494    fn pod_delete_libpod(
495        &self,
496        name: &str,
497        force: Option<bool>,
498    ) -> Pin<Box<dyn Future<Output = Result<models::PodRmReport, Error>> + Send>> {
499        let mut req = __internal_request::Request::new(
500            hyper::Method::DELETE,
501            "/libpod/pods/{name}".to_string(),
502        );
503        if let Some(ref s) = force {
504            let query_value = s.to_string();
505            req = req.with_query_param("force".to_string(), query_value);
506        }
507        req = req.with_path_param("name".to_string(), name.to_string());
508
509        req.execute(self.configuration.borrow())
510    }
511
512    #[allow(unused_mut)]
513    fn pod_exists_libpod(
514        &self,
515        name: &str,
516    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send>> {
517        let mut req = __internal_request::Request::new(
518            hyper::Method::GET,
519            "/libpod/pods/{name}/exists".to_string(),
520        );
521        req = req.with_path_param("name".to_string(), name.to_string());
522        req = req.returns_nothing();
523
524        req.execute(self.configuration.borrow())
525    }
526
527    #[allow(unused_mut)]
528    fn pod_inspect_libpod(
529        &self,
530        name: &str,
531    ) -> Pin<Box<dyn Future<Output = Result<models::InspectPodData, Error>> + Send>> {
532        let mut req = __internal_request::Request::new(
533            hyper::Method::GET,
534            "/libpod/pods/{name}/json".to_string(),
535        );
536        req = req.with_path_param("name".to_string(), name.to_string());
537
538        req.execute(self.configuration.borrow())
539    }
540
541    #[allow(unused_mut)]
542    fn pod_kill_libpod(
543        &self,
544        name: &str,
545        signal: Option<&str>,
546    ) -> Pin<Box<dyn Future<Output = Result<models::PodKillReport, Error>> + Send>> {
547        let mut req = __internal_request::Request::new(
548            hyper::Method::POST,
549            "/libpod/pods/{name}/kill".to_string(),
550        );
551        if let Some(ref s) = signal {
552            let query_value = s.to_string();
553            req = req.with_query_param("signal".to_string(), query_value);
554        }
555        req = req.with_path_param("name".to_string(), name.to_string());
556
557        req.execute(self.configuration.borrow())
558    }
559
560    #[allow(unused_mut)]
561    fn pod_list_libpod(
562        &self,
563        filters: Option<&str>,
564    ) -> Pin<Box<dyn Future<Output = Result<Vec<models::ListPodsReport>, Error>> + Send>> {
565        let mut req =
566            __internal_request::Request::new(hyper::Method::GET, "/libpod/pods/json".to_string());
567        if let Some(ref s) = filters {
568            let query_value = s.to_string();
569            req = req.with_query_param("filters".to_string(), query_value);
570        }
571
572        req.execute(self.configuration.borrow())
573    }
574
575    #[allow(unused_mut)]
576    fn pod_pause_libpod(
577        &self,
578        name: &str,
579    ) -> Pin<Box<dyn Future<Output = Result<models::PodPauseReport, Error>> + Send>> {
580        let mut req = __internal_request::Request::new(
581            hyper::Method::POST,
582            "/libpod/pods/{name}/pause".to_string(),
583        );
584        req = req.with_path_param("name".to_string(), name.to_string());
585
586        req.execute(self.configuration.borrow())
587    }
588
589    #[allow(unused_mut)]
590    fn pod_prune_libpod(
591        &self,
592    ) -> Pin<Box<dyn Future<Output = Result<models::PodPruneReport, Error>> + Send>> {
593        let mut req =
594            __internal_request::Request::new(hyper::Method::POST, "/libpod/pods/prune".to_string());
595
596        req.execute(self.configuration.borrow())
597    }
598
599    #[allow(unused_mut)]
600    fn pod_restart_libpod(
601        &self,
602        name: &str,
603    ) -> Pin<Box<dyn Future<Output = Result<models::PodRestartReport, Error>> + Send>> {
604        let mut req = __internal_request::Request::new(
605            hyper::Method::POST,
606            "/libpod/pods/{name}/restart".to_string(),
607        );
608        req = req.with_path_param("name".to_string(), name.to_string());
609
610        req.execute(self.configuration.borrow())
611    }
612
613    #[allow(unused_mut)]
614    fn pod_start_libpod(
615        &self,
616        name: &str,
617    ) -> Pin<Box<dyn Future<Output = Result<models::PodStartReport, Error>> + Send>> {
618        let mut req = __internal_request::Request::new(
619            hyper::Method::POST,
620            "/libpod/pods/{name}/start".to_string(),
621        );
622        req = req.with_path_param("name".to_string(), name.to_string());
623
624        req.execute(self.configuration.borrow())
625    }
626
627    #[allow(unused_mut)]
628    fn pod_stats_all_libpod(
629        &self,
630        all: Option<bool>,
631        names_or_ids: Option<Vec<String>>,
632    ) -> Pin<Box<dyn Future<Output = Result<Vec<models::PodStatsReport>, Error>> + Send>> {
633        let mut req =
634            __internal_request::Request::new(hyper::Method::GET, "/libpod/pods/stats".to_string());
635        if let Some(ref s) = all {
636            let query_value = s.to_string();
637            req = req.with_query_param("all".to_string(), query_value);
638        }
639        if let Some(ref s) = names_or_ids {
640            let query_value = s
641                .iter()
642                .map(|s| s.to_string())
643                .collect::<Vec<String>>()
644                .join(",");
645            req = req.with_query_param("namesOrIDs".to_string(), query_value);
646        }
647
648        req.execute(self.configuration.borrow())
649    }
650
651    #[allow(unused_mut)]
652    fn pod_stop_libpod(
653        &self,
654        name: &str,
655        t: Option<i32>,
656    ) -> Pin<Box<dyn Future<Output = Result<models::PodStopReport, Error>> + Send>> {
657        let mut req = __internal_request::Request::new(
658            hyper::Method::POST,
659            "/libpod/pods/{name}/stop".to_string(),
660        );
661        if let Some(ref s) = t {
662            let query_value = s.to_string();
663            req = req.with_query_param("t".to_string(), query_value);
664        }
665        req = req.with_path_param("name".to_string(), name.to_string());
666
667        req.execute(self.configuration.borrow())
668    }
669
670    #[allow(unused_mut)]
671    fn pod_top_libpod(
672        &self,
673        name: &str,
674        stream: Option<bool>,
675        delay: Option<i32>,
676        ps_args: Option<&str>,
677    ) -> Pin<Box<dyn Future<Output = Result<models::PodTopOkBody, Error>> + Send>> {
678        let mut req = __internal_request::Request::new(
679            hyper::Method::GET,
680            "/libpod/pods/{name}/top".to_string(),
681        );
682        if let Some(ref s) = stream {
683            let query_value = s.to_string();
684            req = req.with_query_param("stream".to_string(), query_value);
685        }
686        if let Some(ref s) = delay {
687            let query_value = s.to_string();
688            req = req.with_query_param("delay".to_string(), query_value);
689        }
690        if let Some(ref s) = ps_args {
691            let query_value = s.to_string();
692            req = req.with_query_param("ps_args".to_string(), query_value);
693        }
694        req = req.with_path_param("name".to_string(), name.to_string());
695
696        req.execute(self.configuration.borrow())
697    }
698
699    #[allow(unused_mut)]
700    fn pod_unpause_libpod(
701        &self,
702        name: &str,
703    ) -> Pin<Box<dyn Future<Output = Result<models::PodUnpauseReport, Error>> + Send>> {
704        let mut req = __internal_request::Request::new(
705            hyper::Method::POST,
706            "/libpod/pods/{name}/unpause".to_string(),
707        );
708        req = req.with_path_param("name".to_string(), name.to_string());
709
710        req.execute(self.configuration.borrow())
711    }
712}