use crate::service::clb::api_describe_load_balancers;
use crate::service::clb::Clb;
use crate::service::clb::ServiceClb;
use crate::volcengine::client::client;
use crate::volcengine::client::client_info;
use crate::volcengine::client::config as client_config;
use crate::volcengine::common;
use crate::volcengine::error::error;
use crate::volcengine::request::handles;
use crate::volcengine::session::session;
impl ServiceClb for Clb {
fn new_clb(session: session::Session) -> Result<Self, error::Error> {
let client_config = session.new_client_config(client_config::ClientServiceName::Clb);
let client_info = client_info::ClientInfo::builder()
.with_service_name(client_config::ClientServiceName::Clb)
.with_api_version(common::COMMON_VERSION)
.with_signing_region(&client_config.signing_region)
.build()?;
let request_handles = handles::Handles {};
let client = client::Client::builder()
.with_client_info(&client_info)
.with_config(&client_config)
.with_handles(&request_handles)
.build()?;
Ok(Clb { client: client })
}
async fn new_describe_load_balancers(
&self,
request: volcengine_sdk_protobuf::protobuf::lb_instance::DescribeLoadBalancersReq,
) -> Result<
volcengine_sdk_protobuf::protobuf::lb_instance::DescribeLoadBalancersResp,
error::Error,
> {
api_describe_load_balancers::ApiDescribeLoadBalancersClb
.new_describe_load_balancers_api(self, request)
.await
}
}