podman-autogen-api 0.9.0

Podman REST API client generated from the official swagger file using openapi-generator
Documentation
use std::sync::Arc;

use super::configuration::Configuration;
use hyper;
use hyper_util::client::legacy::connect::Connect;

pub struct APIClient {
    containers_api: Box<dyn crate::apis::ContainersApi>,
    containers_compat_api: Box<dyn crate::apis::ContainersCompatApi>,
    exec_api: Box<dyn crate::apis::ExecApi>,
    exec_compat_api: Box<dyn crate::apis::ExecCompatApi>,
    images_api: Box<dyn crate::apis::ImagesApi>,
    images_compat_api: Box<dyn crate::apis::ImagesCompatApi>,
    manifests_api: Box<dyn crate::apis::ManifestsApi>,
    networks_api: Box<dyn crate::apis::NetworksApi>,
    networks_compat_api: Box<dyn crate::apis::NetworksCompatApi>,
    pods_api: Box<dyn crate::apis::PodsApi>,
    secrets_api: Box<dyn crate::apis::SecretsApi>,
    secrets_compat_api: Box<dyn crate::apis::SecretsCompatApi>,
    system_api: Box<dyn crate::apis::SystemApi>,
    system_compat_api: Box<dyn crate::apis::SystemCompatApi>,
    volumes_api: Box<dyn crate::apis::VolumesApi>,
    volumes_compat_api: Box<dyn crate::apis::VolumesCompatApi>,
}

impl APIClient {
    pub fn new<C: Connect>(configuration: Configuration<C>) -> APIClient
    where
        C: Clone + std::marker::Send + Sync + 'static,
    {
        let rc = Arc::new(configuration);

        APIClient {
            containers_api: Box::new(crate::apis::ContainersApiClient::new(rc.clone())),
            containers_compat_api: Box::new(crate::apis::ContainersCompatApiClient::new(
                rc.clone(),
            )),
            exec_api: Box::new(crate::apis::ExecApiClient::new(rc.clone())),
            exec_compat_api: Box::new(crate::apis::ExecCompatApiClient::new(rc.clone())),
            images_api: Box::new(crate::apis::ImagesApiClient::new(rc.clone())),
            images_compat_api: Box::new(crate::apis::ImagesCompatApiClient::new(rc.clone())),
            manifests_api: Box::new(crate::apis::ManifestsApiClient::new(rc.clone())),
            networks_api: Box::new(crate::apis::NetworksApiClient::new(rc.clone())),
            networks_compat_api: Box::new(crate::apis::NetworksCompatApiClient::new(rc.clone())),
            pods_api: Box::new(crate::apis::PodsApiClient::new(rc.clone())),
            secrets_api: Box::new(crate::apis::SecretsApiClient::new(rc.clone())),
            secrets_compat_api: Box::new(crate::apis::SecretsCompatApiClient::new(rc.clone())),
            system_api: Box::new(crate::apis::SystemApiClient::new(rc.clone())),
            system_compat_api: Box::new(crate::apis::SystemCompatApiClient::new(rc.clone())),
            volumes_api: Box::new(crate::apis::VolumesApiClient::new(rc.clone())),
            volumes_compat_api: Box::new(crate::apis::VolumesCompatApiClient::new(rc.clone())),
        }
    }

    pub fn containers_api(&self) -> &dyn crate::apis::ContainersApi {
        self.containers_api.as_ref()
    }

    pub fn containers_compat_api(&self) -> &dyn crate::apis::ContainersCompatApi {
        self.containers_compat_api.as_ref()
    }

    pub fn exec_api(&self) -> &dyn crate::apis::ExecApi {
        self.exec_api.as_ref()
    }

    pub fn exec_compat_api(&self) -> &dyn crate::apis::ExecCompatApi {
        self.exec_compat_api.as_ref()
    }

    pub fn images_api(&self) -> &dyn crate::apis::ImagesApi {
        self.images_api.as_ref()
    }

    pub fn images_compat_api(&self) -> &dyn crate::apis::ImagesCompatApi {
        self.images_compat_api.as_ref()
    }

    pub fn manifests_api(&self) -> &dyn crate::apis::ManifestsApi {
        self.manifests_api.as_ref()
    }

    pub fn networks_api(&self) -> &dyn crate::apis::NetworksApi {
        self.networks_api.as_ref()
    }

    pub fn networks_compat_api(&self) -> &dyn crate::apis::NetworksCompatApi {
        self.networks_compat_api.as_ref()
    }

    pub fn pods_api(&self) -> &dyn crate::apis::PodsApi {
        self.pods_api.as_ref()
    }

    pub fn secrets_api(&self) -> &dyn crate::apis::SecretsApi {
        self.secrets_api.as_ref()
    }

    pub fn secrets_compat_api(&self) -> &dyn crate::apis::SecretsCompatApi {
        self.secrets_compat_api.as_ref()
    }

    pub fn system_api(&self) -> &dyn crate::apis::SystemApi {
        self.system_api.as_ref()
    }

    pub fn system_compat_api(&self) -> &dyn crate::apis::SystemCompatApi {
        self.system_compat_api.as_ref()
    }

    pub fn volumes_api(&self) -> &dyn crate::apis::VolumesApi {
        self.volumes_api.as_ref()
    }

    pub fn volumes_compat_api(&self) -> &dyn crate::apis::VolumesCompatApi {
        self.volumes_compat_api.as_ref()
    }
}