use std::borrow::Borrow;
use std::rc::Rc;
use futures;
use futures::Future;
use hyper;
use super::{configuration, put, query, Error};
pub struct NetworkGroupnetsApiClient<C: hyper::client::connect::Connect> {
configuration: Rc<configuration::Configuration<C>>,
}
impl<C: hyper::client::connect::Connect> NetworkGroupnetsApiClient<C> {
pub fn new(configuration: Rc<configuration::Configuration<C>>) -> NetworkGroupnetsApiClient<C> {
NetworkGroupnetsApiClient {
configuration: configuration,
}
}
}
pub trait NetworkGroupnetsApi {
fn create_groupnet_subnet(
&self,
groupnet_subnet: crate::models::GroupnetSubnetCreateParams,
groupnet: &str,
) -> Box<dyn Future<Item = crate::models::CreateResponse, Error = Error>>;
fn create_subnets_subnet_pool(
&self,
subnets_subnet_pool: crate::models::SubnetsSubnetPoolCreateParams,
groupnet: &str,
subnet: &str,
force: bool,
) -> Box<dyn Future<Item = crate::models::CreateResponse, Error = Error>>;
fn delete_groupnet_subnet(
&self,
groupnet_subnet_id: &str,
groupnet: &str,
force: bool,
) -> Box<dyn Future<Item = (), Error = Error>>;
fn delete_subnets_subnet_pool(
&self,
subnets_subnet_pool_id: &str,
groupnet: &str,
subnet: &str,
) -> Box<dyn Future<Item = (), Error = Error>>;
fn get_groupnet_subnet(
&self,
groupnet_subnet_id: &str,
groupnet: &str,
) -> Box<dyn Future<Item = crate::models::GroupnetSubnets, Error = Error>>;
fn get_subnets_subnet_pool(
&self,
subnets_subnet_pool_id: &str,
groupnet: &str,
subnet: &str,
) -> Box<dyn Future<Item = crate::models::SubnetsSubnetPools, Error = Error>>;
fn list_groupnet_subnets(
&self,
groupnet: &str,
sort: &str,
limit: i32,
dir: &str,
resume: &str,
) -> Box<dyn Future<Item = crate::models::GroupnetSubnetsExtended, Error = Error>>;
fn list_subnets_subnet_pools(
&self,
groupnet: &str,
subnet: &str,
sort: &str,
resume: &str,
access_zone: &str,
alloc_method: &str,
limit: i32,
dir: &str,
) -> Box<dyn Future<Item = crate::models::SubnetsSubnetPoolsExtended, Error = Error>>;
fn update_groupnet_subnet(
&self,
groupnet_subnet: crate::models::GroupnetSubnet,
groupnet_subnet_id: &str,
groupnet: &str,
force: bool,
) -> Box<dyn Future<Item = (), Error = Error>>;
fn update_subnets_subnet_pool(
&self,
subnets_subnet_pool: crate::models::SubnetsSubnetPool,
subnets_subnet_pool_id: &str,
groupnet: &str,
subnet: &str,
force: bool,
) -> Box<dyn Future<Item = (), Error = Error>>;
}
impl<C: hyper::client::connect::Connect + 'static> NetworkGroupnetsApi
for NetworkGroupnetsApiClient<C>
{
fn create_groupnet_subnet(
&self,
groupnet_subnet: crate::models::GroupnetSubnetCreateParams,
groupnet: &str,
) -> Box<dyn Future<Item = crate::models::CreateResponse, Error = Error>> {
let uri_str = format!(
"{}/platform/4/network/groupnets/{Groupnet}/subnets",
self.configuration.base_path,
Groupnet = groupnet
);
query(
self.configuration.borrow(),
&uri_str,
&groupnet_subnet,
hyper::Method::POST,
)
}
fn create_subnets_subnet_pool(
&self,
subnets_subnet_pool: crate::models::SubnetsSubnetPoolCreateParams,
groupnet: &str,
subnet: &str,
force: bool,
) -> Box<dyn Future<Item = crate::models::CreateResponse, Error = Error>> {
let q = ::url::form_urlencoded::Serializer::new(String::new())
.append_pair("force", &force.to_string())
.finish();
let uri_str = format!(
"{}/platform/3/network/groupnets/{Groupnet}/subnets/{Subnet}/pools?{}",
self.configuration.base_path,
q,
Groupnet = groupnet,
Subnet = subnet
);
query(
self.configuration.borrow(),
&uri_str,
&subnets_subnet_pool,
hyper::Method::POST,
)
}
fn delete_groupnet_subnet(
&self,
groupnet_subnet_id: &str,
groupnet: &str,
force: bool,
) -> Box<dyn Future<Item = (), Error = Error>> {
let q = ::url::form_urlencoded::Serializer::new(String::new())
.append_pair("force", &force.to_string())
.finish();
let uri_str = format!(
"{}/platform/4/network/groupnets/{Groupnet}/subnets/{GroupnetSubnetId}?{}",
self.configuration.base_path,
q,
GroupnetSubnetId = groupnet_subnet_id,
Groupnet = groupnet
);
query(
self.configuration.borrow(),
&uri_str,
&"",
hyper::Method::DELETE,
)
}
fn delete_subnets_subnet_pool(
&self,
subnets_subnet_pool_id: &str,
groupnet: &str,
subnet: &str,
) -> Box<dyn Future<Item = (), Error = Error>> {
let uri_str = format!("{}/platform/3/network/groupnets/{Groupnet}/subnets/{Subnet}/pools/{SubnetsSubnetPoolId}" , self.configuration.base_path, SubnetsSubnetPoolId=subnets_subnet_pool_id, Groupnet=groupnet, Subnet=subnet);
query(
self.configuration.borrow(),
&uri_str,
&"",
hyper::Method::DELETE,
)
}
fn get_groupnet_subnet(
&self,
groupnet_subnet_id: &str,
groupnet: &str,
) -> Box<dyn Future<Item = crate::models::GroupnetSubnets, Error = Error>> {
let uri_str = format!(
"{}/platform/4/network/groupnets/{Groupnet}/subnets/{GroupnetSubnetId}",
self.configuration.base_path,
GroupnetSubnetId = groupnet_subnet_id,
Groupnet = groupnet
);
query(
self.configuration.borrow(),
&uri_str,
&"",
hyper::Method::GET,
)
}
fn get_subnets_subnet_pool(
&self,
subnets_subnet_pool_id: &str,
groupnet: &str,
subnet: &str,
) -> Box<dyn Future<Item = crate::models::SubnetsSubnetPools, Error = Error>> {
let uri_str = format!("{}/platform/3/network/groupnets/{Groupnet}/subnets/{Subnet}/pools/{SubnetsSubnetPoolId}" , self.configuration.base_path, SubnetsSubnetPoolId=subnets_subnet_pool_id, Groupnet=groupnet, Subnet=subnet);
query(
self.configuration.borrow(),
&uri_str,
&"",
hyper::Method::GET,
)
}
fn list_groupnet_subnets(
&self,
groupnet: &str,
sort: &str,
limit: i32,
dir: &str,
resume: &str,
) -> Box<dyn Future<Item = crate::models::GroupnetSubnetsExtended, Error = Error>> {
let q = ::url::form_urlencoded::Serializer::new(String::new())
.append_pair("sort", &sort.to_string())
.append_pair("limit", &limit.to_string())
.append_pair("dir", &dir.to_string())
.append_pair("resume", &resume.to_string())
.finish();
let uri_str = format!(
"{}/platform/4/network/groupnets/{Groupnet}/subnets?{}",
self.configuration.base_path,
q,
Groupnet = groupnet
);
query(
self.configuration.borrow(),
&uri_str,
&"",
hyper::Method::GET,
)
}
fn list_subnets_subnet_pools(
&self,
groupnet: &str,
subnet: &str,
sort: &str,
resume: &str,
access_zone: &str,
alloc_method: &str,
limit: i32,
dir: &str,
) -> Box<dyn Future<Item = crate::models::SubnetsSubnetPoolsExtended, Error = Error>> {
let q = ::url::form_urlencoded::Serializer::new(String::new())
.append_pair("sort", &sort.to_string())
.append_pair("resume", &resume.to_string())
.append_pair("access_zone", &access_zone.to_string())
.append_pair("alloc_method", &alloc_method.to_string())
.append_pair("limit", &limit.to_string())
.append_pair("dir", &dir.to_string())
.finish();
let uri_str = format!(
"{}/platform/3/network/groupnets/{Groupnet}/subnets/{Subnet}/pools?{}",
self.configuration.base_path,
q,
Groupnet = groupnet,
Subnet = subnet
);
query(
self.configuration.borrow(),
&uri_str,
&"",
hyper::Method::GET,
)
}
fn update_groupnet_subnet(
&self,
groupnet_subnet: crate::models::GroupnetSubnet,
groupnet_subnet_id: &str,
groupnet: &str,
force: bool,
) -> Box<dyn Future<Item = (), Error = Error>> {
let q = ::url::form_urlencoded::Serializer::new(String::new())
.append_pair("force", &force.to_string())
.finish();
let uri_str = format!(
"{}/platform/4/network/groupnets/{Groupnet}/subnets/{GroupnetSubnetId}?{}",
self.configuration.base_path,
q,
GroupnetSubnetId = groupnet_subnet_id,
Groupnet = groupnet
);
put(self.configuration.borrow(), &uri_str, &groupnet_subnet)
}
fn update_subnets_subnet_pool(
&self,
subnets_subnet_pool: crate::models::SubnetsSubnetPool,
subnets_subnet_pool_id: &str,
groupnet: &str,
subnet: &str,
force: bool,
) -> Box<dyn Future<Item = (), Error = Error>> {
let q = ::url::form_urlencoded::Serializer::new(String::new())
.append_pair("force", &force.to_string())
.finish();
let uri_str = format!("{}/platform/3/network/groupnets/{Groupnet}/subnets/{Subnet}/pools/{SubnetsSubnetPoolId}?{}", self.configuration.base_path, q, SubnetsSubnetPoolId=subnets_subnet_pool_id, Groupnet=groupnet, Subnet=subnet);
put(self.configuration.borrow(), &uri_str, &subnets_subnet_pool)
}
}