use std::borrow::Borrow;
use std::rc::Rc;
use futures;
use futures::Future;
use hyper;
use super::{configuration, query, Error};
pub struct HardeningApiClient<C: hyper::client::connect::Connect> {
configuration: Rc<configuration::Configuration<C>>,
}
impl<C: hyper::client::connect::Connect> HardeningApiClient<C> {
pub fn new(configuration: Rc<configuration::Configuration<C>>) -> HardeningApiClient<C> {
HardeningApiClient {
configuration: configuration,
}
}
}
pub trait HardeningApi {
fn create_hardening_apply_item(
&self,
hardening_apply_item: crate::models::HardeningApplyItem,
) -> Box<dyn Future<Item = crate::models::CreateHardeningApplyItemResponse, Error = Error>>;
fn create_hardening_resolve_item(
&self,
hardening_resolve_item: crate::models::HardeningResolveItem,
accept: bool,
) -> Box<dyn Future<Item = crate::models::CreateHardeningResolveItemResponse, Error = Error>>;
fn create_hardening_revert_item(
&self,
hardening_revert_item: crate::models::Empty,
force: bool,
) -> Box<dyn Future<Item = crate::models::CreateHardeningRevertItemResponse, Error = Error>>;
fn get_hardening_state(
&self,
) -> Box<dyn Future<Item = crate::models::HardeningState, Error = Error>>;
fn get_hardening_status(
&self,
) -> Box<dyn Future<Item = crate::models::HardeningStatus, Error = Error>>;
}
impl<C: hyper::client::connect::Connect + 'static> HardeningApi for HardeningApiClient<C> {
fn create_hardening_apply_item(
&self,
hardening_apply_item: crate::models::HardeningApplyItem,
) -> Box<dyn Future<Item = crate::models::CreateHardeningApplyItemResponse, Error = Error>>
{
let uri_str = format!(
"{}/platform/3/hardening/apply",
self.configuration.base_path
);
query(
self.configuration.borrow(),
&uri_str,
&hardening_apply_item,
hyper::Method::POST,
)
}
fn create_hardening_resolve_item(
&self,
hardening_resolve_item: crate::models::HardeningResolveItem,
accept: bool,
) -> Box<dyn Future<Item = crate::models::CreateHardeningResolveItemResponse, Error = Error>>
{
let q = ::url::form_urlencoded::Serializer::new(String::new())
.append_pair("accept", &accept.to_string())
.finish();
let uri_str = format!(
"{}/platform/3/hardening/resolve?{}",
self.configuration.base_path, q
);
query(
self.configuration.borrow(),
&uri_str,
&hardening_resolve_item,
hyper::Method::POST,
)
}
fn create_hardening_revert_item(
&self,
hardening_revert_item: crate::models::Empty,
force: bool,
) -> Box<dyn Future<Item = crate::models::CreateHardeningRevertItemResponse, Error = Error>>
{
let q = ::url::form_urlencoded::Serializer::new(String::new())
.append_pair("force", &force.to_string())
.finish();
let uri_str = format!(
"{}/platform/3/hardening/revert?{}",
self.configuration.base_path, q
);
query(
self.configuration.borrow(),
&uri_str,
&hardening_revert_item,
hyper::Method::POST,
)
}
fn get_hardening_state(
&self,
) -> Box<dyn Future<Item = crate::models::HardeningState, Error = Error>> {
let uri_str = format!(
"{}/platform/3/hardening/state",
self.configuration.base_path
);
query(
self.configuration.borrow(),
&uri_str,
&"",
hyper::Method::GET,
)
}
fn get_hardening_status(
&self,
) -> Box<dyn Future<Item = crate::models::HardeningStatus, Error = Error>> {
let uri_str = format!(
"{}/platform/3/hardening/status",
self.configuration.base_path
);
query(
self.configuration.borrow(),
&uri_str,
&"",
hyper::Method::GET,
)
}
}