podman_autogen_api/apis/
client.rs1use std::sync::Arc;
2
3use super::configuration::Configuration;
4use hyper;
5use hyper_util::client::legacy::connect::Connect;
6
7pub struct APIClient {
8 containers_api: Box<dyn crate::apis::ContainersApi>,
9 containers_compat_api: Box<dyn crate::apis::ContainersCompatApi>,
10 exec_api: Box<dyn crate::apis::ExecApi>,
11 exec_compat_api: Box<dyn crate::apis::ExecCompatApi>,
12 images_api: Box<dyn crate::apis::ImagesApi>,
13 images_compat_api: Box<dyn crate::apis::ImagesCompatApi>,
14 manifests_api: Box<dyn crate::apis::ManifestsApi>,
15 networks_api: Box<dyn crate::apis::NetworksApi>,
16 networks_compat_api: Box<dyn crate::apis::NetworksCompatApi>,
17 pods_api: Box<dyn crate::apis::PodsApi>,
18 secrets_api: Box<dyn crate::apis::SecretsApi>,
19 secrets_compat_api: Box<dyn crate::apis::SecretsCompatApi>,
20 system_api: Box<dyn crate::apis::SystemApi>,
21 system_compat_api: Box<dyn crate::apis::SystemCompatApi>,
22 volumes_api: Box<dyn crate::apis::VolumesApi>,
23 volumes_compat_api: Box<dyn crate::apis::VolumesCompatApi>,
24}
25
26impl APIClient {
27 pub fn new<C: Connect>(configuration: Configuration<C>) -> APIClient
28 where
29 C: Clone + std::marker::Send + Sync + 'static,
30 {
31 let rc = Arc::new(configuration);
32
33 APIClient {
34 containers_api: Box::new(crate::apis::ContainersApiClient::new(rc.clone())),
35 containers_compat_api: Box::new(crate::apis::ContainersCompatApiClient::new(
36 rc.clone(),
37 )),
38 exec_api: Box::new(crate::apis::ExecApiClient::new(rc.clone())),
39 exec_compat_api: Box::new(crate::apis::ExecCompatApiClient::new(rc.clone())),
40 images_api: Box::new(crate::apis::ImagesApiClient::new(rc.clone())),
41 images_compat_api: Box::new(crate::apis::ImagesCompatApiClient::new(rc.clone())),
42 manifests_api: Box::new(crate::apis::ManifestsApiClient::new(rc.clone())),
43 networks_api: Box::new(crate::apis::NetworksApiClient::new(rc.clone())),
44 networks_compat_api: Box::new(crate::apis::NetworksCompatApiClient::new(rc.clone())),
45 pods_api: Box::new(crate::apis::PodsApiClient::new(rc.clone())),
46 secrets_api: Box::new(crate::apis::SecretsApiClient::new(rc.clone())),
47 secrets_compat_api: Box::new(crate::apis::SecretsCompatApiClient::new(rc.clone())),
48 system_api: Box::new(crate::apis::SystemApiClient::new(rc.clone())),
49 system_compat_api: Box::new(crate::apis::SystemCompatApiClient::new(rc.clone())),
50 volumes_api: Box::new(crate::apis::VolumesApiClient::new(rc.clone())),
51 volumes_compat_api: Box::new(crate::apis::VolumesCompatApiClient::new(rc.clone())),
52 }
53 }
54
55 pub fn containers_api(&self) -> &dyn crate::apis::ContainersApi {
56 self.containers_api.as_ref()
57 }
58
59 pub fn containers_compat_api(&self) -> &dyn crate::apis::ContainersCompatApi {
60 self.containers_compat_api.as_ref()
61 }
62
63 pub fn exec_api(&self) -> &dyn crate::apis::ExecApi {
64 self.exec_api.as_ref()
65 }
66
67 pub fn exec_compat_api(&self) -> &dyn crate::apis::ExecCompatApi {
68 self.exec_compat_api.as_ref()
69 }
70
71 pub fn images_api(&self) -> &dyn crate::apis::ImagesApi {
72 self.images_api.as_ref()
73 }
74
75 pub fn images_compat_api(&self) -> &dyn crate::apis::ImagesCompatApi {
76 self.images_compat_api.as_ref()
77 }
78
79 pub fn manifests_api(&self) -> &dyn crate::apis::ManifestsApi {
80 self.manifests_api.as_ref()
81 }
82
83 pub fn networks_api(&self) -> &dyn crate::apis::NetworksApi {
84 self.networks_api.as_ref()
85 }
86
87 pub fn networks_compat_api(&self) -> &dyn crate::apis::NetworksCompatApi {
88 self.networks_compat_api.as_ref()
89 }
90
91 pub fn pods_api(&self) -> &dyn crate::apis::PodsApi {
92 self.pods_api.as_ref()
93 }
94
95 pub fn secrets_api(&self) -> &dyn crate::apis::SecretsApi {
96 self.secrets_api.as_ref()
97 }
98
99 pub fn secrets_compat_api(&self) -> &dyn crate::apis::SecretsCompatApi {
100 self.secrets_compat_api.as_ref()
101 }
102
103 pub fn system_api(&self) -> &dyn crate::apis::SystemApi {
104 self.system_api.as_ref()
105 }
106
107 pub fn system_compat_api(&self) -> &dyn crate::apis::SystemCompatApi {
108 self.system_compat_api.as_ref()
109 }
110
111 pub fn volumes_api(&self) -> &dyn crate::apis::VolumesApi {
112 self.volumes_api.as_ref()
113 }
114
115 pub fn volumes_compat_api(&self) -> &dyn crate::apis::VolumesCompatApi {
116 self.volumes_compat_api.as_ref()
117 }
118}