#[async_trait::async_trait]
pub trait ParameterManager: std::fmt::Debug + Send + Sync {
async fn list_parameters(
&self,
req: crate::model::ListParametersRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListParametersResponse>>;
async fn get_parameter(
&self,
req: crate::model::GetParameterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Parameter>>;
async fn create_parameter(
&self,
req: crate::model::CreateParameterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Parameter>>;
async fn update_parameter(
&self,
req: crate::model::UpdateParameterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Parameter>>;
async fn delete_parameter(
&self,
req: crate::model::DeleteParameterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn list_parameter_versions(
&self,
req: crate::model::ListParameterVersionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListParameterVersionsResponse>>;
async fn get_parameter_version(
&self,
req: crate::model::GetParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ParameterVersion>>;
async fn render_parameter_version(
&self,
req: crate::model::RenderParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RenderParameterVersionResponse>>;
async fn create_parameter_version(
&self,
req: crate::model::CreateParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ParameterVersion>>;
async fn update_parameter_version(
&self,
req: crate::model::UpdateParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ParameterVersion>>;
async fn delete_parameter_version(
&self,
req: crate::model::DeleteParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn list_locations(
&self,
req: google_cloud_location::model::ListLocationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_location::model::ListLocationsResponse>>;
async fn get_location(
&self,
req: google_cloud_location::model::GetLocationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_location::model::Location>>;
}
#[async_trait::async_trait]
impl<T: super::ParameterManager> ParameterManager for T {
async fn list_parameters(
&self,
req: crate::model::ListParametersRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListParametersResponse>> {
T::list_parameters(self, req, options).await
}
async fn get_parameter(
&self,
req: crate::model::GetParameterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Parameter>> {
T::get_parameter(self, req, options).await
}
async fn create_parameter(
&self,
req: crate::model::CreateParameterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Parameter>> {
T::create_parameter(self, req, options).await
}
async fn update_parameter(
&self,
req: crate::model::UpdateParameterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Parameter>> {
T::update_parameter(self, req, options).await
}
async fn delete_parameter(
&self,
req: crate::model::DeleteParameterRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_parameter(self, req, options).await
}
async fn list_parameter_versions(
&self,
req: crate::model::ListParameterVersionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListParameterVersionsResponse>> {
T::list_parameter_versions(self, req, options).await
}
async fn get_parameter_version(
&self,
req: crate::model::GetParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ParameterVersion>> {
T::get_parameter_version(self, req, options).await
}
async fn render_parameter_version(
&self,
req: crate::model::RenderParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RenderParameterVersionResponse>> {
T::render_parameter_version(self, req, options).await
}
async fn create_parameter_version(
&self,
req: crate::model::CreateParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ParameterVersion>> {
T::create_parameter_version(self, req, options).await
}
async fn update_parameter_version(
&self,
req: crate::model::UpdateParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ParameterVersion>> {
T::update_parameter_version(self, req, options).await
}
async fn delete_parameter_version(
&self,
req: crate::model::DeleteParameterVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_parameter_version(self, req, options).await
}
async fn list_locations(
&self,
req: google_cloud_location::model::ListLocationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_location::model::ListLocationsResponse>> {
T::list_locations(self, req, options).await
}
async fn get_location(
&self,
req: google_cloud_location::model::GetLocationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_location::model::Location>> {
T::get_location(self, req, options).await
}
}