#[cfg(feature = "data-foundry-service")]
#[async_trait::async_trait]
pub trait DataFoundryService: std::fmt::Debug + Send + Sync {
async fn generate_synthetic_data(
&self,
req: crate::model::GenerateSyntheticDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::GenerateSyntheticDataResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
}
#[cfg(feature = "data-foundry-service")]
#[async_trait::async_trait]
impl<T: super::DataFoundryService> DataFoundryService for T {
async fn generate_synthetic_data(
&self,
req: crate::model::GenerateSyntheticDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::GenerateSyntheticDataResponse>> {
T::generate_synthetic_data(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
}
#[cfg(feature = "dataset-service")]
#[async_trait::async_trait]
pub trait DatasetService: std::fmt::Debug + Send + Sync {
async fn create_dataset(
&self,
req: crate::model::CreateDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_dataset(
&self,
req: crate::model::GetDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Dataset>>;
async fn update_dataset(
&self,
req: crate::model::UpdateDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Dataset>>;
async fn list_datasets(
&self,
req: crate::model::ListDatasetsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDatasetsResponse>>;
async fn delete_dataset(
&self,
req: crate::model::DeleteDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn import_data(
&self,
req: crate::model::ImportDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn export_data(
&self,
req: crate::model::ExportDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_dataset_version(
&self,
req: crate::model::CreateDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn update_dataset_version(
&self,
req: crate::model::UpdateDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DatasetVersion>>;
async fn delete_dataset_version(
&self,
req: crate::model::DeleteDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_dataset_version(
&self,
req: crate::model::GetDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DatasetVersion>>;
async fn list_dataset_versions(
&self,
req: crate::model::ListDatasetVersionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDatasetVersionsResponse>>;
async fn restore_dataset_version(
&self,
req: crate::model::RestoreDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn list_data_items(
&self,
req: crate::model::ListDataItemsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDataItemsResponse>>;
async fn search_data_items(
&self,
req: crate::model::SearchDataItemsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SearchDataItemsResponse>>;
async fn list_saved_queries(
&self,
req: crate::model::ListSavedQueriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListSavedQueriesResponse>>;
async fn delete_saved_query(
&self,
req: crate::model::DeleteSavedQueryRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_annotation_spec(
&self,
req: crate::model::GetAnnotationSpecRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AnnotationSpec>>;
async fn list_annotations(
&self,
req: crate::model::ListAnnotationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListAnnotationsResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "dataset-service")]
#[async_trait::async_trait]
impl<T: super::DatasetService> DatasetService for T {
async fn create_dataset(
&self,
req: crate::model::CreateDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_dataset(self, req, options).await
}
async fn get_dataset(
&self,
req: crate::model::GetDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Dataset>> {
T::get_dataset(self, req, options).await
}
async fn update_dataset(
&self,
req: crate::model::UpdateDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Dataset>> {
T::update_dataset(self, req, options).await
}
async fn list_datasets(
&self,
req: crate::model::ListDatasetsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDatasetsResponse>> {
T::list_datasets(self, req, options).await
}
async fn delete_dataset(
&self,
req: crate::model::DeleteDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_dataset(self, req, options).await
}
async fn import_data(
&self,
req: crate::model::ImportDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::import_data(self, req, options).await
}
async fn export_data(
&self,
req: crate::model::ExportDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::export_data(self, req, options).await
}
async fn create_dataset_version(
&self,
req: crate::model::CreateDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_dataset_version(self, req, options).await
}
async fn update_dataset_version(
&self,
req: crate::model::UpdateDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DatasetVersion>> {
T::update_dataset_version(self, req, options).await
}
async fn delete_dataset_version(
&self,
req: crate::model::DeleteDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_dataset_version(self, req, options).await
}
async fn get_dataset_version(
&self,
req: crate::model::GetDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DatasetVersion>> {
T::get_dataset_version(self, req, options).await
}
async fn list_dataset_versions(
&self,
req: crate::model::ListDatasetVersionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDatasetVersionsResponse>> {
T::list_dataset_versions(self, req, options).await
}
async fn restore_dataset_version(
&self,
req: crate::model::RestoreDatasetVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::restore_dataset_version(self, req, options).await
}
async fn list_data_items(
&self,
req: crate::model::ListDataItemsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDataItemsResponse>> {
T::list_data_items(self, req, options).await
}
async fn search_data_items(
&self,
req: crate::model::SearchDataItemsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SearchDataItemsResponse>> {
T::search_data_items(self, req, options).await
}
async fn list_saved_queries(
&self,
req: crate::model::ListSavedQueriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListSavedQueriesResponse>> {
T::list_saved_queries(self, req, options).await
}
async fn delete_saved_query(
&self,
req: crate::model::DeleteSavedQueryRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_saved_query(self, req, options).await
}
async fn get_annotation_spec(
&self,
req: crate::model::GetAnnotationSpecRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AnnotationSpec>> {
T::get_annotation_spec(self, req, options).await
}
async fn list_annotations(
&self,
req: crate::model::ListAnnotationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListAnnotationsResponse>> {
T::list_annotations(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "deployment-resource-pool-service")]
#[async_trait::async_trait]
pub trait DeploymentResourcePoolService: std::fmt::Debug + Send + Sync {
async fn create_deployment_resource_pool(
&self,
req: crate::model::CreateDeploymentResourcePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_deployment_resource_pool(
&self,
req: crate::model::GetDeploymentResourcePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DeploymentResourcePool>>;
async fn list_deployment_resource_pools(
&self,
req: crate::model::ListDeploymentResourcePoolsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDeploymentResourcePoolsResponse>>;
async fn update_deployment_resource_pool(
&self,
req: crate::model::UpdateDeploymentResourcePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_deployment_resource_pool(
&self,
req: crate::model::DeleteDeploymentResourcePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn query_deployed_models(
&self,
req: crate::model::QueryDeployedModelsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::QueryDeployedModelsResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "deployment-resource-pool-service")]
#[async_trait::async_trait]
impl<T: super::DeploymentResourcePoolService> DeploymentResourcePoolService for T {
async fn create_deployment_resource_pool(
&self,
req: crate::model::CreateDeploymentResourcePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_deployment_resource_pool(self, req, options).await
}
async fn get_deployment_resource_pool(
&self,
req: crate::model::GetDeploymentResourcePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DeploymentResourcePool>> {
T::get_deployment_resource_pool(self, req, options).await
}
async fn list_deployment_resource_pools(
&self,
req: crate::model::ListDeploymentResourcePoolsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDeploymentResourcePoolsResponse>> {
T::list_deployment_resource_pools(self, req, options).await
}
async fn update_deployment_resource_pool(
&self,
req: crate::model::UpdateDeploymentResourcePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_deployment_resource_pool(self, req, options).await
}
async fn delete_deployment_resource_pool(
&self,
req: crate::model::DeleteDeploymentResourcePoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_deployment_resource_pool(self, req, options).await
}
async fn query_deployed_models(
&self,
req: crate::model::QueryDeployedModelsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::QueryDeployedModelsResponse>> {
T::query_deployed_models(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "endpoint-service")]
#[async_trait::async_trait]
pub trait EndpointService: std::fmt::Debug + Send + Sync {
async fn create_endpoint(
&self,
req: crate::model::CreateEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_endpoint(
&self,
req: crate::model::GetEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Endpoint>>;
async fn list_endpoints(
&self,
req: crate::model::ListEndpointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListEndpointsResponse>>;
async fn update_endpoint(
&self,
req: crate::model::UpdateEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Endpoint>>;
async fn update_endpoint_long_running(
&self,
req: crate::model::UpdateEndpointLongRunningRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_endpoint(
&self,
req: crate::model::DeleteEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn deploy_model(
&self,
req: crate::model::DeployModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn undeploy_model(
&self,
req: crate::model::UndeployModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn mutate_deployed_model(
&self,
req: crate::model::MutateDeployedModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "endpoint-service")]
#[async_trait::async_trait]
impl<T: super::EndpointService> EndpointService for T {
async fn create_endpoint(
&self,
req: crate::model::CreateEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_endpoint(self, req, options).await
}
async fn get_endpoint(
&self,
req: crate::model::GetEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Endpoint>> {
T::get_endpoint(self, req, options).await
}
async fn list_endpoints(
&self,
req: crate::model::ListEndpointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListEndpointsResponse>> {
T::list_endpoints(self, req, options).await
}
async fn update_endpoint(
&self,
req: crate::model::UpdateEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Endpoint>> {
T::update_endpoint(self, req, options).await
}
async fn update_endpoint_long_running(
&self,
req: crate::model::UpdateEndpointLongRunningRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_endpoint_long_running(self, req, options).await
}
async fn delete_endpoint(
&self,
req: crate::model::DeleteEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_endpoint(self, req, options).await
}
async fn deploy_model(
&self,
req: crate::model::DeployModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::deploy_model(self, req, options).await
}
async fn undeploy_model(
&self,
req: crate::model::UndeployModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::undeploy_model(self, req, options).await
}
async fn mutate_deployed_model(
&self,
req: crate::model::MutateDeployedModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::mutate_deployed_model(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "evaluation-service")]
#[async_trait::async_trait]
pub trait EvaluationService: std::fmt::Debug + Send + Sync {
async fn evaluate_instances(
&self,
req: crate::model::EvaluateInstancesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::EvaluateInstancesResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
}
#[cfg(feature = "evaluation-service")]
#[async_trait::async_trait]
impl<T: super::EvaluationService> EvaluationService for T {
async fn evaluate_instances(
&self,
req: crate::model::EvaluateInstancesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::EvaluateInstancesResponse>> {
T::evaluate_instances(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
}
#[cfg(feature = "feature-online-store-admin-service")]
#[async_trait::async_trait]
pub trait FeatureOnlineStoreAdminService: std::fmt::Debug + Send + Sync {
async fn create_feature_online_store(
&self,
req: crate::model::CreateFeatureOnlineStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_feature_online_store(
&self,
req: crate::model::GetFeatureOnlineStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FeatureOnlineStore>>;
async fn list_feature_online_stores(
&self,
req: crate::model::ListFeatureOnlineStoresRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeatureOnlineStoresResponse>>;
async fn update_feature_online_store(
&self,
req: crate::model::UpdateFeatureOnlineStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_feature_online_store(
&self,
req: crate::model::DeleteFeatureOnlineStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_feature_view(
&self,
req: crate::model::CreateFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_feature_view(
&self,
req: crate::model::GetFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FeatureView>>;
async fn list_feature_views(
&self,
req: crate::model::ListFeatureViewsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeatureViewsResponse>>;
async fn update_feature_view(
&self,
req: crate::model::UpdateFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_feature_view(
&self,
req: crate::model::DeleteFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn sync_feature_view(
&self,
req: crate::model::SyncFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SyncFeatureViewResponse>>;
async fn get_feature_view_sync(
&self,
req: crate::model::GetFeatureViewSyncRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FeatureViewSync>>;
async fn list_feature_view_syncs(
&self,
req: crate::model::ListFeatureViewSyncsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeatureViewSyncsResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "feature-online-store-admin-service")]
#[async_trait::async_trait]
impl<T: super::FeatureOnlineStoreAdminService> FeatureOnlineStoreAdminService for T {
async fn create_feature_online_store(
&self,
req: crate::model::CreateFeatureOnlineStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_feature_online_store(self, req, options).await
}
async fn get_feature_online_store(
&self,
req: crate::model::GetFeatureOnlineStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FeatureOnlineStore>> {
T::get_feature_online_store(self, req, options).await
}
async fn list_feature_online_stores(
&self,
req: crate::model::ListFeatureOnlineStoresRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeatureOnlineStoresResponse>> {
T::list_feature_online_stores(self, req, options).await
}
async fn update_feature_online_store(
&self,
req: crate::model::UpdateFeatureOnlineStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_feature_online_store(self, req, options).await
}
async fn delete_feature_online_store(
&self,
req: crate::model::DeleteFeatureOnlineStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_feature_online_store(self, req, options).await
}
async fn create_feature_view(
&self,
req: crate::model::CreateFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_feature_view(self, req, options).await
}
async fn get_feature_view(
&self,
req: crate::model::GetFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FeatureView>> {
T::get_feature_view(self, req, options).await
}
async fn list_feature_views(
&self,
req: crate::model::ListFeatureViewsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeatureViewsResponse>> {
T::list_feature_views(self, req, options).await
}
async fn update_feature_view(
&self,
req: crate::model::UpdateFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_feature_view(self, req, options).await
}
async fn delete_feature_view(
&self,
req: crate::model::DeleteFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_feature_view(self, req, options).await
}
async fn sync_feature_view(
&self,
req: crate::model::SyncFeatureViewRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SyncFeatureViewResponse>> {
T::sync_feature_view(self, req, options).await
}
async fn get_feature_view_sync(
&self,
req: crate::model::GetFeatureViewSyncRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FeatureViewSync>> {
T::get_feature_view_sync(self, req, options).await
}
async fn list_feature_view_syncs(
&self,
req: crate::model::ListFeatureViewSyncsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeatureViewSyncsResponse>> {
T::list_feature_view_syncs(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "feature-online-store-service")]
#[async_trait::async_trait]
pub trait FeatureOnlineStoreService: std::fmt::Debug + Send + Sync {
async fn fetch_feature_values(
&self,
req: crate::model::FetchFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FetchFeatureValuesResponse>>;
async fn search_nearest_entities(
&self,
req: crate::model::SearchNearestEntitiesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SearchNearestEntitiesResponse>>;
async fn generate_fetch_access_token(
&self,
req: crate::model::GenerateFetchAccessTokenRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::GenerateFetchAccessTokenResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
}
#[cfg(feature = "feature-online-store-service")]
#[async_trait::async_trait]
impl<T: super::FeatureOnlineStoreService> FeatureOnlineStoreService for T {
async fn fetch_feature_values(
&self,
req: crate::model::FetchFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FetchFeatureValuesResponse>> {
T::fetch_feature_values(self, req, options).await
}
async fn search_nearest_entities(
&self,
req: crate::model::SearchNearestEntitiesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SearchNearestEntitiesResponse>> {
T::search_nearest_entities(self, req, options).await
}
async fn generate_fetch_access_token(
&self,
req: crate::model::GenerateFetchAccessTokenRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::GenerateFetchAccessTokenResponse>> {
T::generate_fetch_access_token(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
}
#[cfg(feature = "feature-registry-service")]
#[async_trait::async_trait]
pub trait FeatureRegistryService: std::fmt::Debug + Send + Sync {
async fn create_feature_group(
&self,
req: crate::model::CreateFeatureGroupRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_feature_group(
&self,
req: crate::model::GetFeatureGroupRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FeatureGroup>>;
async fn list_feature_groups(
&self,
req: crate::model::ListFeatureGroupsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeatureGroupsResponse>>;
async fn update_feature_group(
&self,
req: crate::model::UpdateFeatureGroupRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_feature_group(
&self,
req: crate::model::DeleteFeatureGroupRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_feature(
&self,
req: crate::model::CreateFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn batch_create_features(
&self,
req: crate::model::BatchCreateFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_feature(
&self,
req: crate::model::GetFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Feature>>;
async fn list_features(
&self,
req: crate::model::ListFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeaturesResponse>>;
async fn update_feature(
&self,
req: crate::model::UpdateFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_feature(
&self,
req: crate::model::DeleteFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "feature-registry-service")]
#[async_trait::async_trait]
impl<T: super::FeatureRegistryService> FeatureRegistryService for T {
async fn create_feature_group(
&self,
req: crate::model::CreateFeatureGroupRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_feature_group(self, req, options).await
}
async fn get_feature_group(
&self,
req: crate::model::GetFeatureGroupRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FeatureGroup>> {
T::get_feature_group(self, req, options).await
}
async fn list_feature_groups(
&self,
req: crate::model::ListFeatureGroupsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeatureGroupsResponse>> {
T::list_feature_groups(self, req, options).await
}
async fn update_feature_group(
&self,
req: crate::model::UpdateFeatureGroupRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_feature_group(self, req, options).await
}
async fn delete_feature_group(
&self,
req: crate::model::DeleteFeatureGroupRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_feature_group(self, req, options).await
}
async fn create_feature(
&self,
req: crate::model::CreateFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_feature(self, req, options).await
}
async fn batch_create_features(
&self,
req: crate::model::BatchCreateFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::batch_create_features(self, req, options).await
}
async fn get_feature(
&self,
req: crate::model::GetFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Feature>> {
T::get_feature(self, req, options).await
}
async fn list_features(
&self,
req: crate::model::ListFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeaturesResponse>> {
T::list_features(self, req, options).await
}
async fn update_feature(
&self,
req: crate::model::UpdateFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_feature(self, req, options).await
}
async fn delete_feature(
&self,
req: crate::model::DeleteFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_feature(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "featurestore-online-serving-service")]
#[async_trait::async_trait]
pub trait FeaturestoreOnlineServingService: std::fmt::Debug + Send + Sync {
async fn read_feature_values(
&self,
req: crate::model::ReadFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadFeatureValuesResponse>>;
async fn write_feature_values(
&self,
req: crate::model::WriteFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::WriteFeatureValuesResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
}
#[cfg(feature = "featurestore-online-serving-service")]
#[async_trait::async_trait]
impl<T: super::FeaturestoreOnlineServingService> FeaturestoreOnlineServingService for T {
async fn read_feature_values(
&self,
req: crate::model::ReadFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadFeatureValuesResponse>> {
T::read_feature_values(self, req, options).await
}
async fn write_feature_values(
&self,
req: crate::model::WriteFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::WriteFeatureValuesResponse>> {
T::write_feature_values(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
}
#[cfg(feature = "featurestore-service")]
#[async_trait::async_trait]
pub trait FeaturestoreService: std::fmt::Debug + Send + Sync {
async fn create_featurestore(
&self,
req: crate::model::CreateFeaturestoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_featurestore(
&self,
req: crate::model::GetFeaturestoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Featurestore>>;
async fn list_featurestores(
&self,
req: crate::model::ListFeaturestoresRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeaturestoresResponse>>;
async fn update_featurestore(
&self,
req: crate::model::UpdateFeaturestoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_featurestore(
&self,
req: crate::model::DeleteFeaturestoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_entity_type(
&self,
req: crate::model::CreateEntityTypeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_entity_type(
&self,
req: crate::model::GetEntityTypeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::EntityType>>;
async fn list_entity_types(
&self,
req: crate::model::ListEntityTypesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListEntityTypesResponse>>;
async fn update_entity_type(
&self,
req: crate::model::UpdateEntityTypeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::EntityType>>;
async fn delete_entity_type(
&self,
req: crate::model::DeleteEntityTypeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_feature(
&self,
req: crate::model::CreateFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn batch_create_features(
&self,
req: crate::model::BatchCreateFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_feature(
&self,
req: crate::model::GetFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Feature>>;
async fn list_features(
&self,
req: crate::model::ListFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeaturesResponse>>;
async fn update_feature(
&self,
req: crate::model::UpdateFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Feature>>;
async fn delete_feature(
&self,
req: crate::model::DeleteFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn import_feature_values(
&self,
req: crate::model::ImportFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn batch_read_feature_values(
&self,
req: crate::model::BatchReadFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn export_feature_values(
&self,
req: crate::model::ExportFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_feature_values(
&self,
req: crate::model::DeleteFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn search_features(
&self,
req: crate::model::SearchFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SearchFeaturesResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "featurestore-service")]
#[async_trait::async_trait]
impl<T: super::FeaturestoreService> FeaturestoreService for T {
async fn create_featurestore(
&self,
req: crate::model::CreateFeaturestoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_featurestore(self, req, options).await
}
async fn get_featurestore(
&self,
req: crate::model::GetFeaturestoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Featurestore>> {
T::get_featurestore(self, req, options).await
}
async fn list_featurestores(
&self,
req: crate::model::ListFeaturestoresRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeaturestoresResponse>> {
T::list_featurestores(self, req, options).await
}
async fn update_featurestore(
&self,
req: crate::model::UpdateFeaturestoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_featurestore(self, req, options).await
}
async fn delete_featurestore(
&self,
req: crate::model::DeleteFeaturestoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_featurestore(self, req, options).await
}
async fn create_entity_type(
&self,
req: crate::model::CreateEntityTypeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_entity_type(self, req, options).await
}
async fn get_entity_type(
&self,
req: crate::model::GetEntityTypeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::EntityType>> {
T::get_entity_type(self, req, options).await
}
async fn list_entity_types(
&self,
req: crate::model::ListEntityTypesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListEntityTypesResponse>> {
T::list_entity_types(self, req, options).await
}
async fn update_entity_type(
&self,
req: crate::model::UpdateEntityTypeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::EntityType>> {
T::update_entity_type(self, req, options).await
}
async fn delete_entity_type(
&self,
req: crate::model::DeleteEntityTypeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_entity_type(self, req, options).await
}
async fn create_feature(
&self,
req: crate::model::CreateFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_feature(self, req, options).await
}
async fn batch_create_features(
&self,
req: crate::model::BatchCreateFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::batch_create_features(self, req, options).await
}
async fn get_feature(
&self,
req: crate::model::GetFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Feature>> {
T::get_feature(self, req, options).await
}
async fn list_features(
&self,
req: crate::model::ListFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListFeaturesResponse>> {
T::list_features(self, req, options).await
}
async fn update_feature(
&self,
req: crate::model::UpdateFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Feature>> {
T::update_feature(self, req, options).await
}
async fn delete_feature(
&self,
req: crate::model::DeleteFeatureRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_feature(self, req, options).await
}
async fn import_feature_values(
&self,
req: crate::model::ImportFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::import_feature_values(self, req, options).await
}
async fn batch_read_feature_values(
&self,
req: crate::model::BatchReadFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::batch_read_feature_values(self, req, options).await
}
async fn export_feature_values(
&self,
req: crate::model::ExportFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::export_feature_values(self, req, options).await
}
async fn delete_feature_values(
&self,
req: crate::model::DeleteFeatureValuesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_feature_values(self, req, options).await
}
async fn search_features(
&self,
req: crate::model::SearchFeaturesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SearchFeaturesResponse>> {
T::search_features(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "gen-ai-cache-service")]
#[async_trait::async_trait]
pub trait GenAiCacheService: std::fmt::Debug + Send + Sync {
async fn create_cached_content(
&self,
req: crate::model::CreateCachedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CachedContent>>;
async fn get_cached_content(
&self,
req: crate::model::GetCachedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CachedContent>>;
async fn update_cached_content(
&self,
req: crate::model::UpdateCachedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CachedContent>>;
async fn delete_cached_content(
&self,
req: crate::model::DeleteCachedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn list_cached_contents(
&self,
req: crate::model::ListCachedContentsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListCachedContentsResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
}
#[cfg(feature = "gen-ai-cache-service")]
#[async_trait::async_trait]
impl<T: super::GenAiCacheService> GenAiCacheService for T {
async fn create_cached_content(
&self,
req: crate::model::CreateCachedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CachedContent>> {
T::create_cached_content(self, req, options).await
}
async fn get_cached_content(
&self,
req: crate::model::GetCachedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CachedContent>> {
T::get_cached_content(self, req, options).await
}
async fn update_cached_content(
&self,
req: crate::model::UpdateCachedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CachedContent>> {
T::update_cached_content(self, req, options).await
}
async fn delete_cached_content(
&self,
req: crate::model::DeleteCachedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_cached_content(self, req, options).await
}
async fn list_cached_contents(
&self,
req: crate::model::ListCachedContentsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListCachedContentsResponse>> {
T::list_cached_contents(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
}
#[cfg(feature = "gen-ai-tuning-service")]
#[async_trait::async_trait]
pub trait GenAiTuningService: std::fmt::Debug + Send + Sync {
async fn create_tuning_job(
&self,
req: crate::model::CreateTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TuningJob>>;
async fn get_tuning_job(
&self,
req: crate::model::GetTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TuningJob>>;
async fn list_tuning_jobs(
&self,
req: crate::model::ListTuningJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTuningJobsResponse>>;
async fn cancel_tuning_job(
&self,
req: crate::model::CancelTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn rebase_tuned_model(
&self,
req: crate::model::RebaseTunedModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "gen-ai-tuning-service")]
#[async_trait::async_trait]
impl<T: super::GenAiTuningService> GenAiTuningService for T {
async fn create_tuning_job(
&self,
req: crate::model::CreateTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TuningJob>> {
T::create_tuning_job(self, req, options).await
}
async fn get_tuning_job(
&self,
req: crate::model::GetTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TuningJob>> {
T::get_tuning_job(self, req, options).await
}
async fn list_tuning_jobs(
&self,
req: crate::model::ListTuningJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTuningJobsResponse>> {
T::list_tuning_jobs(self, req, options).await
}
async fn cancel_tuning_job(
&self,
req: crate::model::CancelTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_tuning_job(self, req, options).await
}
async fn rebase_tuned_model(
&self,
req: crate::model::RebaseTunedModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::rebase_tuned_model(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "index-endpoint-service")]
#[async_trait::async_trait]
pub trait IndexEndpointService: std::fmt::Debug + Send + Sync {
async fn create_index_endpoint(
&self,
req: crate::model::CreateIndexEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_index_endpoint(
&self,
req: crate::model::GetIndexEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::IndexEndpoint>>;
async fn list_index_endpoints(
&self,
req: crate::model::ListIndexEndpointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListIndexEndpointsResponse>>;
async fn update_index_endpoint(
&self,
req: crate::model::UpdateIndexEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::IndexEndpoint>>;
async fn delete_index_endpoint(
&self,
req: crate::model::DeleteIndexEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn deploy_index(
&self,
req: crate::model::DeployIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn undeploy_index(
&self,
req: crate::model::UndeployIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn mutate_deployed_index(
&self,
req: crate::model::MutateDeployedIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "index-endpoint-service")]
#[async_trait::async_trait]
impl<T: super::IndexEndpointService> IndexEndpointService for T {
async fn create_index_endpoint(
&self,
req: crate::model::CreateIndexEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_index_endpoint(self, req, options).await
}
async fn get_index_endpoint(
&self,
req: crate::model::GetIndexEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::IndexEndpoint>> {
T::get_index_endpoint(self, req, options).await
}
async fn list_index_endpoints(
&self,
req: crate::model::ListIndexEndpointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListIndexEndpointsResponse>> {
T::list_index_endpoints(self, req, options).await
}
async fn update_index_endpoint(
&self,
req: crate::model::UpdateIndexEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::IndexEndpoint>> {
T::update_index_endpoint(self, req, options).await
}
async fn delete_index_endpoint(
&self,
req: crate::model::DeleteIndexEndpointRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_index_endpoint(self, req, options).await
}
async fn deploy_index(
&self,
req: crate::model::DeployIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::deploy_index(self, req, options).await
}
async fn undeploy_index(
&self,
req: crate::model::UndeployIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::undeploy_index(self, req, options).await
}
async fn mutate_deployed_index(
&self,
req: crate::model::MutateDeployedIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::mutate_deployed_index(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "index-service")]
#[async_trait::async_trait]
pub trait IndexService: std::fmt::Debug + Send + Sync {
async fn create_index(
&self,
req: crate::model::CreateIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_index(
&self,
req: crate::model::GetIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Index>>;
async fn list_indexes(
&self,
req: crate::model::ListIndexesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListIndexesResponse>>;
async fn update_index(
&self,
req: crate::model::UpdateIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_index(
&self,
req: crate::model::DeleteIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn upsert_datapoints(
&self,
req: crate::model::UpsertDatapointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::UpsertDatapointsResponse>>;
async fn remove_datapoints(
&self,
req: crate::model::RemoveDatapointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RemoveDatapointsResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "index-service")]
#[async_trait::async_trait]
impl<T: super::IndexService> IndexService for T {
async fn create_index(
&self,
req: crate::model::CreateIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_index(self, req, options).await
}
async fn get_index(
&self,
req: crate::model::GetIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Index>> {
T::get_index(self, req, options).await
}
async fn list_indexes(
&self,
req: crate::model::ListIndexesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListIndexesResponse>> {
T::list_indexes(self, req, options).await
}
async fn update_index(
&self,
req: crate::model::UpdateIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_index(self, req, options).await
}
async fn delete_index(
&self,
req: crate::model::DeleteIndexRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_index(self, req, options).await
}
async fn upsert_datapoints(
&self,
req: crate::model::UpsertDatapointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::UpsertDatapointsResponse>> {
T::upsert_datapoints(self, req, options).await
}
async fn remove_datapoints(
&self,
req: crate::model::RemoveDatapointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RemoveDatapointsResponse>> {
T::remove_datapoints(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "job-service")]
#[async_trait::async_trait]
pub trait JobService: std::fmt::Debug + Send + Sync {
async fn create_custom_job(
&self,
req: crate::model::CreateCustomJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CustomJob>>;
async fn get_custom_job(
&self,
req: crate::model::GetCustomJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CustomJob>>;
async fn list_custom_jobs(
&self,
req: crate::model::ListCustomJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListCustomJobsResponse>>;
async fn delete_custom_job(
&self,
req: crate::model::DeleteCustomJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn cancel_custom_job(
&self,
req: crate::model::CancelCustomJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn create_data_labeling_job(
&self,
req: crate::model::CreateDataLabelingJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DataLabelingJob>>;
async fn get_data_labeling_job(
&self,
req: crate::model::GetDataLabelingJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DataLabelingJob>>;
async fn list_data_labeling_jobs(
&self,
req: crate::model::ListDataLabelingJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDataLabelingJobsResponse>>;
async fn delete_data_labeling_job(
&self,
req: crate::model::DeleteDataLabelingJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn cancel_data_labeling_job(
&self,
req: crate::model::CancelDataLabelingJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn create_hyperparameter_tuning_job(
&self,
req: crate::model::CreateHyperparameterTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::HyperparameterTuningJob>>;
async fn get_hyperparameter_tuning_job(
&self,
req: crate::model::GetHyperparameterTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::HyperparameterTuningJob>>;
async fn list_hyperparameter_tuning_jobs(
&self,
req: crate::model::ListHyperparameterTuningJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListHyperparameterTuningJobsResponse>>;
async fn delete_hyperparameter_tuning_job(
&self,
req: crate::model::DeleteHyperparameterTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn cancel_hyperparameter_tuning_job(
&self,
req: crate::model::CancelHyperparameterTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn create_nas_job(
&self,
req: crate::model::CreateNasJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NasJob>>;
async fn get_nas_job(
&self,
req: crate::model::GetNasJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NasJob>>;
async fn list_nas_jobs(
&self,
req: crate::model::ListNasJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNasJobsResponse>>;
async fn delete_nas_job(
&self,
req: crate::model::DeleteNasJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn cancel_nas_job(
&self,
req: crate::model::CancelNasJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn get_nas_trial_detail(
&self,
req: crate::model::GetNasTrialDetailRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NasTrialDetail>>;
async fn list_nas_trial_details(
&self,
req: crate::model::ListNasTrialDetailsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNasTrialDetailsResponse>>;
async fn create_batch_prediction_job(
&self,
req: crate::model::CreateBatchPredictionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchPredictionJob>>;
async fn get_batch_prediction_job(
&self,
req: crate::model::GetBatchPredictionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchPredictionJob>>;
async fn list_batch_prediction_jobs(
&self,
req: crate::model::ListBatchPredictionJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListBatchPredictionJobsResponse>>;
async fn delete_batch_prediction_job(
&self,
req: crate::model::DeleteBatchPredictionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn cancel_batch_prediction_job(
&self,
req: crate::model::CancelBatchPredictionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn create_model_deployment_monitoring_job(
&self,
req: crate::model::CreateModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelDeploymentMonitoringJob>>;
async fn search_model_deployment_monitoring_stats_anomalies(
&self,
req: crate::model::SearchModelDeploymentMonitoringStatsAnomaliesRequest,
options: crate::RequestOptions,
) -> crate::Result<
crate::Response<crate::model::SearchModelDeploymentMonitoringStatsAnomaliesResponse>,
>;
async fn get_model_deployment_monitoring_job(
&self,
req: crate::model::GetModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelDeploymentMonitoringJob>>;
async fn list_model_deployment_monitoring_jobs(
&self,
req: crate::model::ListModelDeploymentMonitoringJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelDeploymentMonitoringJobsResponse>>;
async fn update_model_deployment_monitoring_job(
&self,
req: crate::model::UpdateModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_model_deployment_monitoring_job(
&self,
req: crate::model::DeleteModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn pause_model_deployment_monitoring_job(
&self,
req: crate::model::PauseModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn resume_model_deployment_monitoring_job(
&self,
req: crate::model::ResumeModelDeploymentMonitoringJobRequest,
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "job-service")]
#[async_trait::async_trait]
impl<T: super::JobService> JobService for T {
async fn create_custom_job(
&self,
req: crate::model::CreateCustomJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CustomJob>> {
T::create_custom_job(self, req, options).await
}
async fn get_custom_job(
&self,
req: crate::model::GetCustomJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CustomJob>> {
T::get_custom_job(self, req, options).await
}
async fn list_custom_jobs(
&self,
req: crate::model::ListCustomJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListCustomJobsResponse>> {
T::list_custom_jobs(self, req, options).await
}
async fn delete_custom_job(
&self,
req: crate::model::DeleteCustomJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_custom_job(self, req, options).await
}
async fn cancel_custom_job(
&self,
req: crate::model::CancelCustomJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_custom_job(self, req, options).await
}
async fn create_data_labeling_job(
&self,
req: crate::model::CreateDataLabelingJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DataLabelingJob>> {
T::create_data_labeling_job(self, req, options).await
}
async fn get_data_labeling_job(
&self,
req: crate::model::GetDataLabelingJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DataLabelingJob>> {
T::get_data_labeling_job(self, req, options).await
}
async fn list_data_labeling_jobs(
&self,
req: crate::model::ListDataLabelingJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListDataLabelingJobsResponse>> {
T::list_data_labeling_jobs(self, req, options).await
}
async fn delete_data_labeling_job(
&self,
req: crate::model::DeleteDataLabelingJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_data_labeling_job(self, req, options).await
}
async fn cancel_data_labeling_job(
&self,
req: crate::model::CancelDataLabelingJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_data_labeling_job(self, req, options).await
}
async fn create_hyperparameter_tuning_job(
&self,
req: crate::model::CreateHyperparameterTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::HyperparameterTuningJob>> {
T::create_hyperparameter_tuning_job(self, req, options).await
}
async fn get_hyperparameter_tuning_job(
&self,
req: crate::model::GetHyperparameterTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::HyperparameterTuningJob>> {
T::get_hyperparameter_tuning_job(self, req, options).await
}
async fn list_hyperparameter_tuning_jobs(
&self,
req: crate::model::ListHyperparameterTuningJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListHyperparameterTuningJobsResponse>> {
T::list_hyperparameter_tuning_jobs(self, req, options).await
}
async fn delete_hyperparameter_tuning_job(
&self,
req: crate::model::DeleteHyperparameterTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_hyperparameter_tuning_job(self, req, options).await
}
async fn cancel_hyperparameter_tuning_job(
&self,
req: crate::model::CancelHyperparameterTuningJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_hyperparameter_tuning_job(self, req, options).await
}
async fn create_nas_job(
&self,
req: crate::model::CreateNasJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NasJob>> {
T::create_nas_job(self, req, options).await
}
async fn get_nas_job(
&self,
req: crate::model::GetNasJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NasJob>> {
T::get_nas_job(self, req, options).await
}
async fn list_nas_jobs(
&self,
req: crate::model::ListNasJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNasJobsResponse>> {
T::list_nas_jobs(self, req, options).await
}
async fn delete_nas_job(
&self,
req: crate::model::DeleteNasJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_nas_job(self, req, options).await
}
async fn cancel_nas_job(
&self,
req: crate::model::CancelNasJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_nas_job(self, req, options).await
}
async fn get_nas_trial_detail(
&self,
req: crate::model::GetNasTrialDetailRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NasTrialDetail>> {
T::get_nas_trial_detail(self, req, options).await
}
async fn list_nas_trial_details(
&self,
req: crate::model::ListNasTrialDetailsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNasTrialDetailsResponse>> {
T::list_nas_trial_details(self, req, options).await
}
async fn create_batch_prediction_job(
&self,
req: crate::model::CreateBatchPredictionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchPredictionJob>> {
T::create_batch_prediction_job(self, req, options).await
}
async fn get_batch_prediction_job(
&self,
req: crate::model::GetBatchPredictionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchPredictionJob>> {
T::get_batch_prediction_job(self, req, options).await
}
async fn list_batch_prediction_jobs(
&self,
req: crate::model::ListBatchPredictionJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListBatchPredictionJobsResponse>> {
T::list_batch_prediction_jobs(self, req, options).await
}
async fn delete_batch_prediction_job(
&self,
req: crate::model::DeleteBatchPredictionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_batch_prediction_job(self, req, options).await
}
async fn cancel_batch_prediction_job(
&self,
req: crate::model::CancelBatchPredictionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_batch_prediction_job(self, req, options).await
}
async fn create_model_deployment_monitoring_job(
&self,
req: crate::model::CreateModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelDeploymentMonitoringJob>> {
T::create_model_deployment_monitoring_job(self, req, options).await
}
async fn search_model_deployment_monitoring_stats_anomalies(
&self,
req: crate::model::SearchModelDeploymentMonitoringStatsAnomaliesRequest,
options: crate::RequestOptions,
) -> crate::Result<
crate::Response<crate::model::SearchModelDeploymentMonitoringStatsAnomaliesResponse>,
> {
T::search_model_deployment_monitoring_stats_anomalies(self, req, options).await
}
async fn get_model_deployment_monitoring_job(
&self,
req: crate::model::GetModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelDeploymentMonitoringJob>> {
T::get_model_deployment_monitoring_job(self, req, options).await
}
async fn list_model_deployment_monitoring_jobs(
&self,
req: crate::model::ListModelDeploymentMonitoringJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelDeploymentMonitoringJobsResponse>>
{
T::list_model_deployment_monitoring_jobs(self, req, options).await
}
async fn update_model_deployment_monitoring_job(
&self,
req: crate::model::UpdateModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_model_deployment_monitoring_job(self, req, options).await
}
async fn delete_model_deployment_monitoring_job(
&self,
req: crate::model::DeleteModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_model_deployment_monitoring_job(self, req, options).await
}
async fn pause_model_deployment_monitoring_job(
&self,
req: crate::model::PauseModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::pause_model_deployment_monitoring_job(self, req, options).await
}
async fn resume_model_deployment_monitoring_job(
&self,
req: crate::model::ResumeModelDeploymentMonitoringJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::resume_model_deployment_monitoring_job(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "llm-utility-service")]
#[async_trait::async_trait]
pub trait LlmUtilityService: std::fmt::Debug + Send + Sync {
async fn count_tokens(
&self,
req: crate::model::CountTokensRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CountTokensResponse>>;
async fn compute_tokens(
&self,
req: crate::model::ComputeTokensRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ComputeTokensResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
}
#[cfg(feature = "llm-utility-service")]
#[async_trait::async_trait]
impl<T: super::LlmUtilityService> LlmUtilityService for T {
async fn count_tokens(
&self,
req: crate::model::CountTokensRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CountTokensResponse>> {
T::count_tokens(self, req, options).await
}
async fn compute_tokens(
&self,
req: crate::model::ComputeTokensRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ComputeTokensResponse>> {
T::compute_tokens(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
}
#[cfg(feature = "match-service")]
#[async_trait::async_trait]
pub trait MatchService: std::fmt::Debug + Send + Sync {
async fn find_neighbors(
&self,
req: crate::model::FindNeighborsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FindNeighborsResponse>>;
async fn read_index_datapoints(
&self,
req: crate::model::ReadIndexDatapointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadIndexDatapointsResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
}
#[cfg(feature = "match-service")]
#[async_trait::async_trait]
impl<T: super::MatchService> MatchService for T {
async fn find_neighbors(
&self,
req: crate::model::FindNeighborsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::FindNeighborsResponse>> {
T::find_neighbors(self, req, options).await
}
async fn read_index_datapoints(
&self,
req: crate::model::ReadIndexDatapointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadIndexDatapointsResponse>> {
T::read_index_datapoints(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
}
#[cfg(feature = "metadata-service")]
#[async_trait::async_trait]
pub trait MetadataService: std::fmt::Debug + Send + Sync {
async fn create_metadata_store(
&self,
req: crate::model::CreateMetadataStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_metadata_store(
&self,
req: crate::model::GetMetadataStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::MetadataStore>>;
async fn list_metadata_stores(
&self,
req: crate::model::ListMetadataStoresRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListMetadataStoresResponse>>;
async fn delete_metadata_store(
&self,
req: crate::model::DeleteMetadataStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_artifact(
&self,
req: crate::model::CreateArtifactRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Artifact>>;
async fn get_artifact(
&self,
req: crate::model::GetArtifactRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Artifact>>;
async fn list_artifacts(
&self,
req: crate::model::ListArtifactsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListArtifactsResponse>>;
async fn update_artifact(
&self,
req: crate::model::UpdateArtifactRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Artifact>>;
async fn delete_artifact(
&self,
req: crate::model::DeleteArtifactRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn purge_artifacts(
&self,
req: crate::model::PurgeArtifactsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_context(
&self,
req: crate::model::CreateContextRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Context>>;
async fn get_context(
&self,
req: crate::model::GetContextRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Context>>;
async fn list_contexts(
&self,
req: crate::model::ListContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListContextsResponse>>;
async fn update_context(
&self,
req: crate::model::UpdateContextRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Context>>;
async fn delete_context(
&self,
req: crate::model::DeleteContextRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn purge_contexts(
&self,
req: crate::model::PurgeContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn add_context_artifacts_and_executions(
&self,
req: crate::model::AddContextArtifactsAndExecutionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AddContextArtifactsAndExecutionsResponse>>;
async fn add_context_children(
&self,
req: crate::model::AddContextChildrenRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AddContextChildrenResponse>>;
async fn remove_context_children(
&self,
req: crate::model::RemoveContextChildrenRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RemoveContextChildrenResponse>>;
async fn query_context_lineage_subgraph(
&self,
req: crate::model::QueryContextLineageSubgraphRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::LineageSubgraph>>;
async fn create_execution(
&self,
req: crate::model::CreateExecutionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Execution>>;
async fn get_execution(
&self,
req: crate::model::GetExecutionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Execution>>;
async fn list_executions(
&self,
req: crate::model::ListExecutionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListExecutionsResponse>>;
async fn update_execution(
&self,
req: crate::model::UpdateExecutionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Execution>>;
async fn delete_execution(
&self,
req: crate::model::DeleteExecutionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn purge_executions(
&self,
req: crate::model::PurgeExecutionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn add_execution_events(
&self,
req: crate::model::AddExecutionEventsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AddExecutionEventsResponse>>;
async fn query_execution_inputs_and_outputs(
&self,
req: crate::model::QueryExecutionInputsAndOutputsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::LineageSubgraph>>;
async fn create_metadata_schema(
&self,
req: crate::model::CreateMetadataSchemaRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::MetadataSchema>>;
async fn get_metadata_schema(
&self,
req: crate::model::GetMetadataSchemaRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::MetadataSchema>>;
async fn list_metadata_schemas(
&self,
req: crate::model::ListMetadataSchemasRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListMetadataSchemasResponse>>;
async fn query_artifact_lineage_subgraph(
&self,
req: crate::model::QueryArtifactLineageSubgraphRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::LineageSubgraph>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "metadata-service")]
#[async_trait::async_trait]
impl<T: super::MetadataService> MetadataService for T {
async fn create_metadata_store(
&self,
req: crate::model::CreateMetadataStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_metadata_store(self, req, options).await
}
async fn get_metadata_store(
&self,
req: crate::model::GetMetadataStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::MetadataStore>> {
T::get_metadata_store(self, req, options).await
}
async fn list_metadata_stores(
&self,
req: crate::model::ListMetadataStoresRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListMetadataStoresResponse>> {
T::list_metadata_stores(self, req, options).await
}
async fn delete_metadata_store(
&self,
req: crate::model::DeleteMetadataStoreRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_metadata_store(self, req, options).await
}
async fn create_artifact(
&self,
req: crate::model::CreateArtifactRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Artifact>> {
T::create_artifact(self, req, options).await
}
async fn get_artifact(
&self,
req: crate::model::GetArtifactRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Artifact>> {
T::get_artifact(self, req, options).await
}
async fn list_artifacts(
&self,
req: crate::model::ListArtifactsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListArtifactsResponse>> {
T::list_artifacts(self, req, options).await
}
async fn update_artifact(
&self,
req: crate::model::UpdateArtifactRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Artifact>> {
T::update_artifact(self, req, options).await
}
async fn delete_artifact(
&self,
req: crate::model::DeleteArtifactRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_artifact(self, req, options).await
}
async fn purge_artifacts(
&self,
req: crate::model::PurgeArtifactsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::purge_artifacts(self, req, options).await
}
async fn create_context(
&self,
req: crate::model::CreateContextRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Context>> {
T::create_context(self, req, options).await
}
async fn get_context(
&self,
req: crate::model::GetContextRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Context>> {
T::get_context(self, req, options).await
}
async fn list_contexts(
&self,
req: crate::model::ListContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListContextsResponse>> {
T::list_contexts(self, req, options).await
}
async fn update_context(
&self,
req: crate::model::UpdateContextRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Context>> {
T::update_context(self, req, options).await
}
async fn delete_context(
&self,
req: crate::model::DeleteContextRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_context(self, req, options).await
}
async fn purge_contexts(
&self,
req: crate::model::PurgeContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::purge_contexts(self, req, options).await
}
async fn add_context_artifacts_and_executions(
&self,
req: crate::model::AddContextArtifactsAndExecutionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AddContextArtifactsAndExecutionsResponse>>
{
T::add_context_artifacts_and_executions(self, req, options).await
}
async fn add_context_children(
&self,
req: crate::model::AddContextChildrenRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AddContextChildrenResponse>> {
T::add_context_children(self, req, options).await
}
async fn remove_context_children(
&self,
req: crate::model::RemoveContextChildrenRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RemoveContextChildrenResponse>> {
T::remove_context_children(self, req, options).await
}
async fn query_context_lineage_subgraph(
&self,
req: crate::model::QueryContextLineageSubgraphRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::LineageSubgraph>> {
T::query_context_lineage_subgraph(self, req, options).await
}
async fn create_execution(
&self,
req: crate::model::CreateExecutionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Execution>> {
T::create_execution(self, req, options).await
}
async fn get_execution(
&self,
req: crate::model::GetExecutionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Execution>> {
T::get_execution(self, req, options).await
}
async fn list_executions(
&self,
req: crate::model::ListExecutionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListExecutionsResponse>> {
T::list_executions(self, req, options).await
}
async fn update_execution(
&self,
req: crate::model::UpdateExecutionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Execution>> {
T::update_execution(self, req, options).await
}
async fn delete_execution(
&self,
req: crate::model::DeleteExecutionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_execution(self, req, options).await
}
async fn purge_executions(
&self,
req: crate::model::PurgeExecutionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::purge_executions(self, req, options).await
}
async fn add_execution_events(
&self,
req: crate::model::AddExecutionEventsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AddExecutionEventsResponse>> {
T::add_execution_events(self, req, options).await
}
async fn query_execution_inputs_and_outputs(
&self,
req: crate::model::QueryExecutionInputsAndOutputsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::LineageSubgraph>> {
T::query_execution_inputs_and_outputs(self, req, options).await
}
async fn create_metadata_schema(
&self,
req: crate::model::CreateMetadataSchemaRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::MetadataSchema>> {
T::create_metadata_schema(self, req, options).await
}
async fn get_metadata_schema(
&self,
req: crate::model::GetMetadataSchemaRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::MetadataSchema>> {
T::get_metadata_schema(self, req, options).await
}
async fn list_metadata_schemas(
&self,
req: crate::model::ListMetadataSchemasRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListMetadataSchemasResponse>> {
T::list_metadata_schemas(self, req, options).await
}
async fn query_artifact_lineage_subgraph(
&self,
req: crate::model::QueryArtifactLineageSubgraphRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::LineageSubgraph>> {
T::query_artifact_lineage_subgraph(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "migration-service")]
#[async_trait::async_trait]
pub trait MigrationService: std::fmt::Debug + Send + Sync {
async fn search_migratable_resources(
&self,
req: crate::model::SearchMigratableResourcesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SearchMigratableResourcesResponse>>;
async fn batch_migrate_resources(
&self,
req: crate::model::BatchMigrateResourcesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "migration-service")]
#[async_trait::async_trait]
impl<T: super::MigrationService> MigrationService for T {
async fn search_migratable_resources(
&self,
req: crate::model::SearchMigratableResourcesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SearchMigratableResourcesResponse>> {
T::search_migratable_resources(self, req, options).await
}
async fn batch_migrate_resources(
&self,
req: crate::model::BatchMigrateResourcesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::batch_migrate_resources(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "model-garden-service")]
#[async_trait::async_trait]
pub trait ModelGardenService: std::fmt::Debug + Send + Sync {
async fn get_publisher_model(
&self,
req: crate::model::GetPublisherModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PublisherModel>>;
async fn deploy(
&self,
req: crate::model::DeployRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "model-garden-service")]
#[async_trait::async_trait]
impl<T: super::ModelGardenService> ModelGardenService for T {
async fn get_publisher_model(
&self,
req: crate::model::GetPublisherModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PublisherModel>> {
T::get_publisher_model(self, req, options).await
}
async fn deploy(
&self,
req: crate::model::DeployRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::deploy(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "model-service")]
#[async_trait::async_trait]
pub trait ModelService: std::fmt::Debug + Send + Sync {
async fn upload_model(
&self,
req: crate::model::UploadModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_model(
&self,
req: crate::model::GetModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Model>>;
async fn list_models(
&self,
req: crate::model::ListModelsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelsResponse>>;
async fn list_model_versions(
&self,
req: crate::model::ListModelVersionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelVersionsResponse>>;
async fn list_model_version_checkpoints(
&self,
req: crate::model::ListModelVersionCheckpointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelVersionCheckpointsResponse>>;
async fn update_model(
&self,
req: crate::model::UpdateModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Model>>;
async fn update_explanation_dataset(
&self,
req: crate::model::UpdateExplanationDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_model(
&self,
req: crate::model::DeleteModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_model_version(
&self,
req: crate::model::DeleteModelVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn merge_version_aliases(
&self,
req: crate::model::MergeVersionAliasesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Model>>;
async fn export_model(
&self,
req: crate::model::ExportModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn copy_model(
&self,
req: crate::model::CopyModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn import_model_evaluation(
&self,
req: crate::model::ImportModelEvaluationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelEvaluation>>;
async fn batch_import_model_evaluation_slices(
&self,
req: crate::model::BatchImportModelEvaluationSlicesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchImportModelEvaluationSlicesResponse>>;
async fn batch_import_evaluated_annotations(
&self,
req: crate::model::BatchImportEvaluatedAnnotationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchImportEvaluatedAnnotationsResponse>>;
async fn get_model_evaluation(
&self,
req: crate::model::GetModelEvaluationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelEvaluation>>;
async fn list_model_evaluations(
&self,
req: crate::model::ListModelEvaluationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelEvaluationsResponse>>;
async fn get_model_evaluation_slice(
&self,
req: crate::model::GetModelEvaluationSliceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelEvaluationSlice>>;
async fn list_model_evaluation_slices(
&self,
req: crate::model::ListModelEvaluationSlicesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelEvaluationSlicesResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "model-service")]
#[async_trait::async_trait]
impl<T: super::ModelService> ModelService for T {
async fn upload_model(
&self,
req: crate::model::UploadModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::upload_model(self, req, options).await
}
async fn get_model(
&self,
req: crate::model::GetModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Model>> {
T::get_model(self, req, options).await
}
async fn list_models(
&self,
req: crate::model::ListModelsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelsResponse>> {
T::list_models(self, req, options).await
}
async fn list_model_versions(
&self,
req: crate::model::ListModelVersionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelVersionsResponse>> {
T::list_model_versions(self, req, options).await
}
async fn list_model_version_checkpoints(
&self,
req: crate::model::ListModelVersionCheckpointsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelVersionCheckpointsResponse>> {
T::list_model_version_checkpoints(self, req, options).await
}
async fn update_model(
&self,
req: crate::model::UpdateModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Model>> {
T::update_model(self, req, options).await
}
async fn update_explanation_dataset(
&self,
req: crate::model::UpdateExplanationDatasetRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_explanation_dataset(self, req, options).await
}
async fn delete_model(
&self,
req: crate::model::DeleteModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_model(self, req, options).await
}
async fn delete_model_version(
&self,
req: crate::model::DeleteModelVersionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_model_version(self, req, options).await
}
async fn merge_version_aliases(
&self,
req: crate::model::MergeVersionAliasesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Model>> {
T::merge_version_aliases(self, req, options).await
}
async fn export_model(
&self,
req: crate::model::ExportModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::export_model(self, req, options).await
}
async fn copy_model(
&self,
req: crate::model::CopyModelRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::copy_model(self, req, options).await
}
async fn import_model_evaluation(
&self,
req: crate::model::ImportModelEvaluationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelEvaluation>> {
T::import_model_evaluation(self, req, options).await
}
async fn batch_import_model_evaluation_slices(
&self,
req: crate::model::BatchImportModelEvaluationSlicesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchImportModelEvaluationSlicesResponse>>
{
T::batch_import_model_evaluation_slices(self, req, options).await
}
async fn batch_import_evaluated_annotations(
&self,
req: crate::model::BatchImportEvaluatedAnnotationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchImportEvaluatedAnnotationsResponse>> {
T::batch_import_evaluated_annotations(self, req, options).await
}
async fn get_model_evaluation(
&self,
req: crate::model::GetModelEvaluationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelEvaluation>> {
T::get_model_evaluation(self, req, options).await
}
async fn list_model_evaluations(
&self,
req: crate::model::ListModelEvaluationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelEvaluationsResponse>> {
T::list_model_evaluations(self, req, options).await
}
async fn get_model_evaluation_slice(
&self,
req: crate::model::GetModelEvaluationSliceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ModelEvaluationSlice>> {
T::get_model_evaluation_slice(self, req, options).await
}
async fn list_model_evaluation_slices(
&self,
req: crate::model::ListModelEvaluationSlicesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListModelEvaluationSlicesResponse>> {
T::list_model_evaluation_slices(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "notebook-service")]
#[async_trait::async_trait]
pub trait NotebookService: std::fmt::Debug + Send + Sync {
async fn create_notebook_runtime_template(
&self,
req: crate::model::CreateNotebookRuntimeTemplateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_notebook_runtime_template(
&self,
req: crate::model::GetNotebookRuntimeTemplateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NotebookRuntimeTemplate>>;
async fn list_notebook_runtime_templates(
&self,
req: crate::model::ListNotebookRuntimeTemplatesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNotebookRuntimeTemplatesResponse>>;
async fn delete_notebook_runtime_template(
&self,
req: crate::model::DeleteNotebookRuntimeTemplateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn update_notebook_runtime_template(
&self,
req: crate::model::UpdateNotebookRuntimeTemplateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NotebookRuntimeTemplate>>;
async fn assign_notebook_runtime(
&self,
req: crate::model::AssignNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_notebook_runtime(
&self,
req: crate::model::GetNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NotebookRuntime>>;
async fn list_notebook_runtimes(
&self,
req: crate::model::ListNotebookRuntimesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNotebookRuntimesResponse>>;
async fn delete_notebook_runtime(
&self,
req: crate::model::DeleteNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn upgrade_notebook_runtime(
&self,
req: crate::model::UpgradeNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn start_notebook_runtime(
&self,
req: crate::model::StartNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn stop_notebook_runtime(
&self,
req: crate::model::StopNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_notebook_execution_job(
&self,
req: crate::model::CreateNotebookExecutionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_notebook_execution_job(
&self,
req: crate::model::GetNotebookExecutionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NotebookExecutionJob>>;
async fn list_notebook_execution_jobs(
&self,
req: crate::model::ListNotebookExecutionJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNotebookExecutionJobsResponse>>;
async fn delete_notebook_execution_job(
&self,
req: crate::model::DeleteNotebookExecutionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "notebook-service")]
#[async_trait::async_trait]
impl<T: super::NotebookService> NotebookService for T {
async fn create_notebook_runtime_template(
&self,
req: crate::model::CreateNotebookRuntimeTemplateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_notebook_runtime_template(self, req, options).await
}
async fn get_notebook_runtime_template(
&self,
req: crate::model::GetNotebookRuntimeTemplateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NotebookRuntimeTemplate>> {
T::get_notebook_runtime_template(self, req, options).await
}
async fn list_notebook_runtime_templates(
&self,
req: crate::model::ListNotebookRuntimeTemplatesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNotebookRuntimeTemplatesResponse>> {
T::list_notebook_runtime_templates(self, req, options).await
}
async fn delete_notebook_runtime_template(
&self,
req: crate::model::DeleteNotebookRuntimeTemplateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_notebook_runtime_template(self, req, options).await
}
async fn update_notebook_runtime_template(
&self,
req: crate::model::UpdateNotebookRuntimeTemplateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NotebookRuntimeTemplate>> {
T::update_notebook_runtime_template(self, req, options).await
}
async fn assign_notebook_runtime(
&self,
req: crate::model::AssignNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::assign_notebook_runtime(self, req, options).await
}
async fn get_notebook_runtime(
&self,
req: crate::model::GetNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NotebookRuntime>> {
T::get_notebook_runtime(self, req, options).await
}
async fn list_notebook_runtimes(
&self,
req: crate::model::ListNotebookRuntimesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNotebookRuntimesResponse>> {
T::list_notebook_runtimes(self, req, options).await
}
async fn delete_notebook_runtime(
&self,
req: crate::model::DeleteNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_notebook_runtime(self, req, options).await
}
async fn upgrade_notebook_runtime(
&self,
req: crate::model::UpgradeNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::upgrade_notebook_runtime(self, req, options).await
}
async fn start_notebook_runtime(
&self,
req: crate::model::StartNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::start_notebook_runtime(self, req, options).await
}
async fn stop_notebook_runtime(
&self,
req: crate::model::StopNotebookRuntimeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::stop_notebook_runtime(self, req, options).await
}
async fn create_notebook_execution_job(
&self,
req: crate::model::CreateNotebookExecutionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_notebook_execution_job(self, req, options).await
}
async fn get_notebook_execution_job(
&self,
req: crate::model::GetNotebookExecutionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::NotebookExecutionJob>> {
T::get_notebook_execution_job(self, req, options).await
}
async fn list_notebook_execution_jobs(
&self,
req: crate::model::ListNotebookExecutionJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListNotebookExecutionJobsResponse>> {
T::list_notebook_execution_jobs(self, req, options).await
}
async fn delete_notebook_execution_job(
&self,
req: crate::model::DeleteNotebookExecutionJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_notebook_execution_job(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "persistent-resource-service")]
#[async_trait::async_trait]
pub trait PersistentResourceService: std::fmt::Debug + Send + Sync {
async fn create_persistent_resource(
&self,
req: crate::model::CreatePersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_persistent_resource(
&self,
req: crate::model::GetPersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PersistentResource>>;
async fn list_persistent_resources(
&self,
req: crate::model::ListPersistentResourcesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListPersistentResourcesResponse>>;
async fn delete_persistent_resource(
&self,
req: crate::model::DeletePersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn update_persistent_resource(
&self,
req: crate::model::UpdatePersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn reboot_persistent_resource(
&self,
req: crate::model::RebootPersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "persistent-resource-service")]
#[async_trait::async_trait]
impl<T: super::PersistentResourceService> PersistentResourceService for T {
async fn create_persistent_resource(
&self,
req: crate::model::CreatePersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_persistent_resource(self, req, options).await
}
async fn get_persistent_resource(
&self,
req: crate::model::GetPersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PersistentResource>> {
T::get_persistent_resource(self, req, options).await
}
async fn list_persistent_resources(
&self,
req: crate::model::ListPersistentResourcesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListPersistentResourcesResponse>> {
T::list_persistent_resources(self, req, options).await
}
async fn delete_persistent_resource(
&self,
req: crate::model::DeletePersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_persistent_resource(self, req, options).await
}
async fn update_persistent_resource(
&self,
req: crate::model::UpdatePersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_persistent_resource(self, req, options).await
}
async fn reboot_persistent_resource(
&self,
req: crate::model::RebootPersistentResourceRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::reboot_persistent_resource(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "pipeline-service")]
#[async_trait::async_trait]
pub trait PipelineService: std::fmt::Debug + Send + Sync {
async fn create_training_pipeline(
&self,
req: crate::model::CreateTrainingPipelineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TrainingPipeline>>;
async fn get_training_pipeline(
&self,
req: crate::model::GetTrainingPipelineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TrainingPipeline>>;
async fn list_training_pipelines(
&self,
req: crate::model::ListTrainingPipelinesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTrainingPipelinesResponse>>;
async fn delete_training_pipeline(
&self,
req: crate::model::DeleteTrainingPipelineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn cancel_training_pipeline(
&self,
req: crate::model::CancelTrainingPipelineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn create_pipeline_job(
&self,
req: crate::model::CreatePipelineJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PipelineJob>>;
async fn get_pipeline_job(
&self,
req: crate::model::GetPipelineJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PipelineJob>>;
async fn list_pipeline_jobs(
&self,
req: crate::model::ListPipelineJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListPipelineJobsResponse>>;
async fn delete_pipeline_job(
&self,
req: crate::model::DeletePipelineJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn batch_delete_pipeline_jobs(
&self,
req: crate::model::BatchDeletePipelineJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn cancel_pipeline_job(
&self,
req: crate::model::CancelPipelineJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn batch_cancel_pipeline_jobs(
&self,
req: crate::model::BatchCancelPipelineJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "pipeline-service")]
#[async_trait::async_trait]
impl<T: super::PipelineService> PipelineService for T {
async fn create_training_pipeline(
&self,
req: crate::model::CreateTrainingPipelineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TrainingPipeline>> {
T::create_training_pipeline(self, req, options).await
}
async fn get_training_pipeline(
&self,
req: crate::model::GetTrainingPipelineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TrainingPipeline>> {
T::get_training_pipeline(self, req, options).await
}
async fn list_training_pipelines(
&self,
req: crate::model::ListTrainingPipelinesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTrainingPipelinesResponse>> {
T::list_training_pipelines(self, req, options).await
}
async fn delete_training_pipeline(
&self,
req: crate::model::DeleteTrainingPipelineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_training_pipeline(self, req, options).await
}
async fn cancel_training_pipeline(
&self,
req: crate::model::CancelTrainingPipelineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_training_pipeline(self, req, options).await
}
async fn create_pipeline_job(
&self,
req: crate::model::CreatePipelineJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PipelineJob>> {
T::create_pipeline_job(self, req, options).await
}
async fn get_pipeline_job(
&self,
req: crate::model::GetPipelineJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PipelineJob>> {
T::get_pipeline_job(self, req, options).await
}
async fn list_pipeline_jobs(
&self,
req: crate::model::ListPipelineJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListPipelineJobsResponse>> {
T::list_pipeline_jobs(self, req, options).await
}
async fn delete_pipeline_job(
&self,
req: crate::model::DeletePipelineJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_pipeline_job(self, req, options).await
}
async fn batch_delete_pipeline_jobs(
&self,
req: crate::model::BatchDeletePipelineJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::batch_delete_pipeline_jobs(self, req, options).await
}
async fn cancel_pipeline_job(
&self,
req: crate::model::CancelPipelineJobRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_pipeline_job(self, req, options).await
}
async fn batch_cancel_pipeline_jobs(
&self,
req: crate::model::BatchCancelPipelineJobsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::batch_cancel_pipeline_jobs(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "prediction-service")]
#[async_trait::async_trait]
pub trait PredictionService: std::fmt::Debug + Send + Sync {
async fn predict(
&self,
req: crate::model::PredictRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PredictResponse>>;
async fn raw_predict(
&self,
req: crate::model::RawPredictRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_api::model::HttpBody>>;
async fn direct_predict(
&self,
req: crate::model::DirectPredictRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DirectPredictResponse>>;
async fn direct_raw_predict(
&self,
req: crate::model::DirectRawPredictRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DirectRawPredictResponse>>;
async fn explain(
&self,
req: crate::model::ExplainRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ExplainResponse>>;
async fn generate_content(
&self,
req: crate::model::GenerateContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::GenerateContentResponse>>;
async fn embed_content(
&self,
req: crate::model::EmbedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::EmbedContentResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
}
#[cfg(feature = "prediction-service")]
#[async_trait::async_trait]
impl<T: super::PredictionService> PredictionService for T {
async fn predict(
&self,
req: crate::model::PredictRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::PredictResponse>> {
T::predict(self, req, options).await
}
async fn raw_predict(
&self,
req: crate::model::RawPredictRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_api::model::HttpBody>> {
T::raw_predict(self, req, options).await
}
async fn direct_predict(
&self,
req: crate::model::DirectPredictRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DirectPredictResponse>> {
T::direct_predict(self, req, options).await
}
async fn direct_raw_predict(
&self,
req: crate::model::DirectRawPredictRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::DirectRawPredictResponse>> {
T::direct_raw_predict(self, req, options).await
}
async fn explain(
&self,
req: crate::model::ExplainRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ExplainResponse>> {
T::explain(self, req, options).await
}
async fn generate_content(
&self,
req: crate::model::GenerateContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::GenerateContentResponse>> {
T::generate_content(self, req, options).await
}
async fn embed_content(
&self,
req: crate::model::EmbedContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::EmbedContentResponse>> {
T::embed_content(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
}
#[cfg(feature = "reasoning-engine-execution-service")]
#[async_trait::async_trait]
pub trait ReasoningEngineExecutionService: std::fmt::Debug + Send + Sync {
async fn query_reasoning_engine(
&self,
req: crate::model::QueryReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::QueryReasoningEngineResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
}
#[cfg(feature = "reasoning-engine-execution-service")]
#[async_trait::async_trait]
impl<T: super::ReasoningEngineExecutionService> ReasoningEngineExecutionService for T {
async fn query_reasoning_engine(
&self,
req: crate::model::QueryReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::QueryReasoningEngineResponse>> {
T::query_reasoning_engine(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
}
#[cfg(feature = "reasoning-engine-service")]
#[async_trait::async_trait]
pub trait ReasoningEngineService: std::fmt::Debug + Send + Sync {
async fn create_reasoning_engine(
&self,
req: crate::model::CreateReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_reasoning_engine(
&self,
req: crate::model::GetReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReasoningEngine>>;
async fn list_reasoning_engines(
&self,
req: crate::model::ListReasoningEnginesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListReasoningEnginesResponse>>;
async fn update_reasoning_engine(
&self,
req: crate::model::UpdateReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_reasoning_engine(
&self,
req: crate::model::DeleteReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "reasoning-engine-service")]
#[async_trait::async_trait]
impl<T: super::ReasoningEngineService> ReasoningEngineService for T {
async fn create_reasoning_engine(
&self,
req: crate::model::CreateReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_reasoning_engine(self, req, options).await
}
async fn get_reasoning_engine(
&self,
req: crate::model::GetReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReasoningEngine>> {
T::get_reasoning_engine(self, req, options).await
}
async fn list_reasoning_engines(
&self,
req: crate::model::ListReasoningEnginesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListReasoningEnginesResponse>> {
T::list_reasoning_engines(self, req, options).await
}
async fn update_reasoning_engine(
&self,
req: crate::model::UpdateReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_reasoning_engine(self, req, options).await
}
async fn delete_reasoning_engine(
&self,
req: crate::model::DeleteReasoningEngineRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_reasoning_engine(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "schedule-service")]
#[async_trait::async_trait]
pub trait ScheduleService: std::fmt::Debug + Send + Sync {
async fn create_schedule(
&self,
req: crate::model::CreateScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Schedule>>;
async fn delete_schedule(
&self,
req: crate::model::DeleteScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_schedule(
&self,
req: crate::model::GetScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Schedule>>;
async fn list_schedules(
&self,
req: crate::model::ListSchedulesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListSchedulesResponse>>;
async fn pause_schedule(
&self,
req: crate::model::PauseScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn resume_schedule(
&self,
req: crate::model::ResumeScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn update_schedule(
&self,
req: crate::model::UpdateScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Schedule>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "schedule-service")]
#[async_trait::async_trait]
impl<T: super::ScheduleService> ScheduleService for T {
async fn create_schedule(
&self,
req: crate::model::CreateScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Schedule>> {
T::create_schedule(self, req, options).await
}
async fn delete_schedule(
&self,
req: crate::model::DeleteScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_schedule(self, req, options).await
}
async fn get_schedule(
&self,
req: crate::model::GetScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Schedule>> {
T::get_schedule(self, req, options).await
}
async fn list_schedules(
&self,
req: crate::model::ListSchedulesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListSchedulesResponse>> {
T::list_schedules(self, req, options).await
}
async fn pause_schedule(
&self,
req: crate::model::PauseScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::pause_schedule(self, req, options).await
}
async fn resume_schedule(
&self,
req: crate::model::ResumeScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::resume_schedule(self, req, options).await
}
async fn update_schedule(
&self,
req: crate::model::UpdateScheduleRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Schedule>> {
T::update_schedule(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "session-service")]
#[async_trait::async_trait]
pub trait SessionService: std::fmt::Debug + Send + Sync {
async fn create_session(
&self,
req: crate::model::CreateSessionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_session(
&self,
req: crate::model::GetSessionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Session>>;
async fn list_sessions(
&self,
req: crate::model::ListSessionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListSessionsResponse>>;
async fn update_session(
&self,
req: crate::model::UpdateSessionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Session>>;
async fn delete_session(
&self,
req: crate::model::DeleteSessionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn list_events(
&self,
req: crate::model::ListEventsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListEventsResponse>>;
async fn append_event(
&self,
req: crate::model::AppendEventRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AppendEventResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "session-service")]
#[async_trait::async_trait]
impl<T: super::SessionService> SessionService for T {
async fn create_session(
&self,
req: crate::model::CreateSessionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_session(self, req, options).await
}
async fn get_session(
&self,
req: crate::model::GetSessionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Session>> {
T::get_session(self, req, options).await
}
async fn list_sessions(
&self,
req: crate::model::ListSessionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListSessionsResponse>> {
T::list_sessions(self, req, options).await
}
async fn update_session(
&self,
req: crate::model::UpdateSessionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Session>> {
T::update_session(self, req, options).await
}
async fn delete_session(
&self,
req: crate::model::DeleteSessionRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_session(self, req, options).await
}
async fn list_events(
&self,
req: crate::model::ListEventsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListEventsResponse>> {
T::list_events(self, req, options).await
}
async fn append_event(
&self,
req: crate::model::AppendEventRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AppendEventResponse>> {
T::append_event(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "specialist-pool-service")]
#[async_trait::async_trait]
pub trait SpecialistPoolService: std::fmt::Debug + Send + Sync {
async fn create_specialist_pool(
&self,
req: crate::model::CreateSpecialistPoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_specialist_pool(
&self,
req: crate::model::GetSpecialistPoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SpecialistPool>>;
async fn list_specialist_pools(
&self,
req: crate::model::ListSpecialistPoolsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListSpecialistPoolsResponse>>;
async fn delete_specialist_pool(
&self,
req: crate::model::DeleteSpecialistPoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn update_specialist_pool(
&self,
req: crate::model::UpdateSpecialistPoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "specialist-pool-service")]
#[async_trait::async_trait]
impl<T: super::SpecialistPoolService> SpecialistPoolService for T {
async fn create_specialist_pool(
&self,
req: crate::model::CreateSpecialistPoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_specialist_pool(self, req, options).await
}
async fn get_specialist_pool(
&self,
req: crate::model::GetSpecialistPoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::SpecialistPool>> {
T::get_specialist_pool(self, req, options).await
}
async fn list_specialist_pools(
&self,
req: crate::model::ListSpecialistPoolsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListSpecialistPoolsResponse>> {
T::list_specialist_pools(self, req, options).await
}
async fn delete_specialist_pool(
&self,
req: crate::model::DeleteSpecialistPoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_specialist_pool(self, req, options).await
}
async fn update_specialist_pool(
&self,
req: crate::model::UpdateSpecialistPoolRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_specialist_pool(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "tensorboard-service")]
#[async_trait::async_trait]
pub trait TensorboardService: std::fmt::Debug + Send + Sync {
async fn create_tensorboard(
&self,
req: crate::model::CreateTensorboardRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_tensorboard(
&self,
req: crate::model::GetTensorboardRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Tensorboard>>;
async fn update_tensorboard(
&self,
req: crate::model::UpdateTensorboardRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn list_tensorboards(
&self,
req: crate::model::ListTensorboardsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTensorboardsResponse>>;
async fn delete_tensorboard(
&self,
req: crate::model::DeleteTensorboardRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn read_tensorboard_usage(
&self,
req: crate::model::ReadTensorboardUsageRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadTensorboardUsageResponse>>;
async fn read_tensorboard_size(
&self,
req: crate::model::ReadTensorboardSizeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadTensorboardSizeResponse>>;
async fn create_tensorboard_experiment(
&self,
req: crate::model::CreateTensorboardExperimentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardExperiment>>;
async fn get_tensorboard_experiment(
&self,
req: crate::model::GetTensorboardExperimentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardExperiment>>;
async fn update_tensorboard_experiment(
&self,
req: crate::model::UpdateTensorboardExperimentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardExperiment>>;
async fn list_tensorboard_experiments(
&self,
req: crate::model::ListTensorboardExperimentsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTensorboardExperimentsResponse>>;
async fn delete_tensorboard_experiment(
&self,
req: crate::model::DeleteTensorboardExperimentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_tensorboard_run(
&self,
req: crate::model::CreateTensorboardRunRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardRun>>;
async fn batch_create_tensorboard_runs(
&self,
req: crate::model::BatchCreateTensorboardRunsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchCreateTensorboardRunsResponse>>;
async fn get_tensorboard_run(
&self,
req: crate::model::GetTensorboardRunRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardRun>>;
async fn update_tensorboard_run(
&self,
req: crate::model::UpdateTensorboardRunRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardRun>>;
async fn list_tensorboard_runs(
&self,
req: crate::model::ListTensorboardRunsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTensorboardRunsResponse>>;
async fn delete_tensorboard_run(
&self,
req: crate::model::DeleteTensorboardRunRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn batch_create_tensorboard_time_series(
&self,
req: crate::model::BatchCreateTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchCreateTensorboardTimeSeriesResponse>>;
async fn create_tensorboard_time_series(
&self,
req: crate::model::CreateTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardTimeSeries>>;
async fn get_tensorboard_time_series(
&self,
req: crate::model::GetTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardTimeSeries>>;
async fn update_tensorboard_time_series(
&self,
req: crate::model::UpdateTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardTimeSeries>>;
async fn list_tensorboard_time_series(
&self,
req: crate::model::ListTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTensorboardTimeSeriesResponse>>;
async fn delete_tensorboard_time_series(
&self,
req: crate::model::DeleteTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn batch_read_tensorboard_time_series_data(
&self,
req: crate::model::BatchReadTensorboardTimeSeriesDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchReadTensorboardTimeSeriesDataResponse>>;
async fn read_tensorboard_time_series_data(
&self,
req: crate::model::ReadTensorboardTimeSeriesDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadTensorboardTimeSeriesDataResponse>>;
async fn write_tensorboard_experiment_data(
&self,
req: crate::model::WriteTensorboardExperimentDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::WriteTensorboardExperimentDataResponse>>;
async fn write_tensorboard_run_data(
&self,
req: crate::model::WriteTensorboardRunDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::WriteTensorboardRunDataResponse>>;
async fn export_tensorboard_time_series_data(
&self,
req: crate::model::ExportTensorboardTimeSeriesDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ExportTensorboardTimeSeriesDataResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "tensorboard-service")]
#[async_trait::async_trait]
impl<T: super::TensorboardService> TensorboardService for T {
async fn create_tensorboard(
&self,
req: crate::model::CreateTensorboardRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_tensorboard(self, req, options).await
}
async fn get_tensorboard(
&self,
req: crate::model::GetTensorboardRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Tensorboard>> {
T::get_tensorboard(self, req, options).await
}
async fn update_tensorboard(
&self,
req: crate::model::UpdateTensorboardRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_tensorboard(self, req, options).await
}
async fn list_tensorboards(
&self,
req: crate::model::ListTensorboardsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTensorboardsResponse>> {
T::list_tensorboards(self, req, options).await
}
async fn delete_tensorboard(
&self,
req: crate::model::DeleteTensorboardRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_tensorboard(self, req, options).await
}
async fn read_tensorboard_usage(
&self,
req: crate::model::ReadTensorboardUsageRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadTensorboardUsageResponse>> {
T::read_tensorboard_usage(self, req, options).await
}
async fn read_tensorboard_size(
&self,
req: crate::model::ReadTensorboardSizeRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadTensorboardSizeResponse>> {
T::read_tensorboard_size(self, req, options).await
}
async fn create_tensorboard_experiment(
&self,
req: crate::model::CreateTensorboardExperimentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardExperiment>> {
T::create_tensorboard_experiment(self, req, options).await
}
async fn get_tensorboard_experiment(
&self,
req: crate::model::GetTensorboardExperimentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardExperiment>> {
T::get_tensorboard_experiment(self, req, options).await
}
async fn update_tensorboard_experiment(
&self,
req: crate::model::UpdateTensorboardExperimentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardExperiment>> {
T::update_tensorboard_experiment(self, req, options).await
}
async fn list_tensorboard_experiments(
&self,
req: crate::model::ListTensorboardExperimentsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTensorboardExperimentsResponse>> {
T::list_tensorboard_experiments(self, req, options).await
}
async fn delete_tensorboard_experiment(
&self,
req: crate::model::DeleteTensorboardExperimentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_tensorboard_experiment(self, req, options).await
}
async fn create_tensorboard_run(
&self,
req: crate::model::CreateTensorboardRunRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardRun>> {
T::create_tensorboard_run(self, req, options).await
}
async fn batch_create_tensorboard_runs(
&self,
req: crate::model::BatchCreateTensorboardRunsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchCreateTensorboardRunsResponse>> {
T::batch_create_tensorboard_runs(self, req, options).await
}
async fn get_tensorboard_run(
&self,
req: crate::model::GetTensorboardRunRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardRun>> {
T::get_tensorboard_run(self, req, options).await
}
async fn update_tensorboard_run(
&self,
req: crate::model::UpdateTensorboardRunRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardRun>> {
T::update_tensorboard_run(self, req, options).await
}
async fn list_tensorboard_runs(
&self,
req: crate::model::ListTensorboardRunsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTensorboardRunsResponse>> {
T::list_tensorboard_runs(self, req, options).await
}
async fn delete_tensorboard_run(
&self,
req: crate::model::DeleteTensorboardRunRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_tensorboard_run(self, req, options).await
}
async fn batch_create_tensorboard_time_series(
&self,
req: crate::model::BatchCreateTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchCreateTensorboardTimeSeriesResponse>>
{
T::batch_create_tensorboard_time_series(self, req, options).await
}
async fn create_tensorboard_time_series(
&self,
req: crate::model::CreateTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardTimeSeries>> {
T::create_tensorboard_time_series(self, req, options).await
}
async fn get_tensorboard_time_series(
&self,
req: crate::model::GetTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardTimeSeries>> {
T::get_tensorboard_time_series(self, req, options).await
}
async fn update_tensorboard_time_series(
&self,
req: crate::model::UpdateTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::TensorboardTimeSeries>> {
T::update_tensorboard_time_series(self, req, options).await
}
async fn list_tensorboard_time_series(
&self,
req: crate::model::ListTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTensorboardTimeSeriesResponse>> {
T::list_tensorboard_time_series(self, req, options).await
}
async fn delete_tensorboard_time_series(
&self,
req: crate::model::DeleteTensorboardTimeSeriesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_tensorboard_time_series(self, req, options).await
}
async fn batch_read_tensorboard_time_series_data(
&self,
req: crate::model::BatchReadTensorboardTimeSeriesDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::BatchReadTensorboardTimeSeriesDataResponse>>
{
T::batch_read_tensorboard_time_series_data(self, req, options).await
}
async fn read_tensorboard_time_series_data(
&self,
req: crate::model::ReadTensorboardTimeSeriesDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ReadTensorboardTimeSeriesDataResponse>> {
T::read_tensorboard_time_series_data(self, req, options).await
}
async fn write_tensorboard_experiment_data(
&self,
req: crate::model::WriteTensorboardExperimentDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::WriteTensorboardExperimentDataResponse>> {
T::write_tensorboard_experiment_data(self, req, options).await
}
async fn write_tensorboard_run_data(
&self,
req: crate::model::WriteTensorboardRunDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::WriteTensorboardRunDataResponse>> {
T::write_tensorboard_run_data(self, req, options).await
}
async fn export_tensorboard_time_series_data(
&self,
req: crate::model::ExportTensorboardTimeSeriesDataRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ExportTensorboardTimeSeriesDataResponse>> {
T::export_tensorboard_time_series_data(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "vertex-rag-data-service")]
#[async_trait::async_trait]
pub trait VertexRagDataService: std::fmt::Debug + Send + Sync {
async fn create_rag_corpus(
&self,
req: crate::model::CreateRagCorpusRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn update_rag_corpus(
&self,
req: crate::model::UpdateRagCorpusRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_rag_corpus(
&self,
req: crate::model::GetRagCorpusRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RagCorpus>>;
async fn list_rag_corpora(
&self,
req: crate::model::ListRagCorporaRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListRagCorporaResponse>>;
async fn delete_rag_corpus(
&self,
req: crate::model::DeleteRagCorpusRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn upload_rag_file(
&self,
req: crate::model::UploadRagFileRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::UploadRagFileResponse>>;
async fn import_rag_files(
&self,
req: crate::model::ImportRagFilesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_rag_file(
&self,
req: crate::model::GetRagFileRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RagFile>>;
async fn list_rag_files(
&self,
req: crate::model::ListRagFilesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListRagFilesResponse>>;
async fn delete_rag_file(
&self,
req: crate::model::DeleteRagFileRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn update_rag_engine_config(
&self,
req: crate::model::UpdateRagEngineConfigRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn get_rag_engine_config(
&self,
req: crate::model::GetRagEngineConfigRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RagEngineConfig>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "vertex-rag-data-service")]
#[async_trait::async_trait]
impl<T: super::VertexRagDataService> VertexRagDataService for T {
async fn create_rag_corpus(
&self,
req: crate::model::CreateRagCorpusRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::create_rag_corpus(self, req, options).await
}
async fn update_rag_corpus(
&self,
req: crate::model::UpdateRagCorpusRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_rag_corpus(self, req, options).await
}
async fn get_rag_corpus(
&self,
req: crate::model::GetRagCorpusRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RagCorpus>> {
T::get_rag_corpus(self, req, options).await
}
async fn list_rag_corpora(
&self,
req: crate::model::ListRagCorporaRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListRagCorporaResponse>> {
T::list_rag_corpora(self, req, options).await
}
async fn delete_rag_corpus(
&self,
req: crate::model::DeleteRagCorpusRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_rag_corpus(self, req, options).await
}
async fn upload_rag_file(
&self,
req: crate::model::UploadRagFileRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::UploadRagFileResponse>> {
T::upload_rag_file(self, req, options).await
}
async fn import_rag_files(
&self,
req: crate::model::ImportRagFilesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::import_rag_files(self, req, options).await
}
async fn get_rag_file(
&self,
req: crate::model::GetRagFileRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RagFile>> {
T::get_rag_file(self, req, options).await
}
async fn list_rag_files(
&self,
req: crate::model::ListRagFilesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListRagFilesResponse>> {
T::list_rag_files(self, req, options).await
}
async fn delete_rag_file(
&self,
req: crate::model::DeleteRagFileRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::delete_rag_file(self, req, options).await
}
async fn update_rag_engine_config(
&self,
req: crate::model::UpdateRagEngineConfigRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::update_rag_engine_config(self, req, options).await
}
async fn get_rag_engine_config(
&self,
req: crate::model::GetRagEngineConfigRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RagEngineConfig>> {
T::get_rag_engine_config(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "vertex-rag-service")]
#[async_trait::async_trait]
pub trait VertexRagService: std::fmt::Debug + Send + Sync {
async fn retrieve_contexts(
&self,
req: crate::model::RetrieveContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RetrieveContextsResponse>>;
async fn augment_prompt(
&self,
req: crate::model::AugmentPromptRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AugmentPromptResponse>>;
async fn corroborate_content(
&self,
req: crate::model::CorroborateContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CorroborateContentResponse>>;
async fn ask_contexts(
&self,
req: crate::model::AskContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AskContextsResponse>>;
async fn async_retrieve_contexts(
&self,
req: crate::model::AsyncRetrieveContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "vertex-rag-service")]
#[async_trait::async_trait]
impl<T: super::VertexRagService> VertexRagService for T {
async fn retrieve_contexts(
&self,
req: crate::model::RetrieveContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RetrieveContextsResponse>> {
T::retrieve_contexts(self, req, options).await
}
async fn augment_prompt(
&self,
req: crate::model::AugmentPromptRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AugmentPromptResponse>> {
T::augment_prompt(self, req, options).await
}
async fn corroborate_content(
&self,
req: crate::model::CorroborateContentRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::CorroborateContentResponse>> {
T::corroborate_content(self, req, options).await
}
async fn ask_contexts(
&self,
req: crate::model::AskContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AskContextsResponse>> {
T::ask_contexts(self, req, options).await
}
async fn async_retrieve_contexts(
&self,
req: crate::model::AsyncRetrieveContextsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::async_retrieve_contexts(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}
#[cfg(feature = "vizier-service")]
#[async_trait::async_trait]
pub trait VizierService: std::fmt::Debug + Send + Sync {
async fn create_study(
&self,
req: crate::model::CreateStudyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Study>>;
async fn get_study(
&self,
req: crate::model::GetStudyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Study>>;
async fn list_studies(
&self,
req: crate::model::ListStudiesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListStudiesResponse>>;
async fn delete_study(
&self,
req: crate::model::DeleteStudyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn lookup_study(
&self,
req: crate::model::LookupStudyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Study>>;
async fn suggest_trials(
&self,
req: crate::model::SuggestTrialsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn create_trial(
&self,
req: crate::model::CreateTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>>;
async fn get_trial(
&self,
req: crate::model::GetTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>>;
async fn list_trials(
&self,
req: crate::model::ListTrialsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTrialsResponse>>;
async fn add_trial_measurement(
&self,
req: crate::model::AddTrialMeasurementRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>>;
async fn complete_trial(
&self,
req: crate::model::CompleteTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>>;
async fn delete_trial(
&self,
req: crate::model::DeleteTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn check_trial_early_stopping_state(
&self,
req: crate::model::CheckTrialEarlyStoppingStateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn stop_trial(
&self,
req: crate::model::StopTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>>;
async fn list_optimal_trials(
&self,
req: crate::model::ListOptimalTrialsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListOptimalTrialsResponse>>;
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 fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>>;
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>;
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>;
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>>;
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy>;
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy>;
}
#[cfg(feature = "vizier-service")]
#[async_trait::async_trait]
impl<T: super::VizierService> VizierService for T {
async fn create_study(
&self,
req: crate::model::CreateStudyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Study>> {
T::create_study(self, req, options).await
}
async fn get_study(
&self,
req: crate::model::GetStudyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Study>> {
T::get_study(self, req, options).await
}
async fn list_studies(
&self,
req: crate::model::ListStudiesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListStudiesResponse>> {
T::list_studies(self, req, options).await
}
async fn delete_study(
&self,
req: crate::model::DeleteStudyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_study(self, req, options).await
}
async fn lookup_study(
&self,
req: crate::model::LookupStudyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Study>> {
T::lookup_study(self, req, options).await
}
async fn suggest_trials(
&self,
req: crate::model::SuggestTrialsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::suggest_trials(self, req, options).await
}
async fn create_trial(
&self,
req: crate::model::CreateTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>> {
T::create_trial(self, req, options).await
}
async fn get_trial(
&self,
req: crate::model::GetTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>> {
T::get_trial(self, req, options).await
}
async fn list_trials(
&self,
req: crate::model::ListTrialsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListTrialsResponse>> {
T::list_trials(self, req, options).await
}
async fn add_trial_measurement(
&self,
req: crate::model::AddTrialMeasurementRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>> {
T::add_trial_measurement(self, req, options).await
}
async fn complete_trial(
&self,
req: crate::model::CompleteTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>> {
T::complete_trial(self, req, options).await
}
async fn delete_trial(
&self,
req: crate::model::DeleteTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_trial(self, req, options).await
}
async fn check_trial_early_stopping_state(
&self,
req: crate::model::CheckTrialEarlyStoppingStateRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::check_trial_early_stopping_state(self, req, options).await
}
async fn stop_trial(
&self,
req: crate::model::StopTrialRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Trial>> {
T::stop_trial(self, req, options).await
}
async fn list_optimal_trials(
&self,
req: crate::model::ListOptimalTrialsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListOptimalTrialsResponse>> {
T::list_optimal_trials(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
}
async fn set_iam_policy(
&self,
req: google_cloud_iam_v1::model::SetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::set_iam_policy(self, req, options).await
}
async fn get_iam_policy(
&self,
req: google_cloud_iam_v1::model::GetIamPolicyRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::Policy>> {
T::get_iam_policy(self, req, options).await
}
async fn test_iam_permissions(
&self,
req: google_cloud_iam_v1::model::TestIamPermissionsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_iam_v1::model::TestIamPermissionsResponse>>
{
T::test_iam_permissions(self, req, options).await
}
async fn list_operations(
&self,
req: google_cloud_longrunning::model::ListOperationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::ListOperationsResponse>>
{
T::list_operations(self, req, options).await
}
async fn get_operation(
&self,
req: google_cloud_longrunning::model::GetOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::get_operation(self, req, options).await
}
async fn delete_operation(
&self,
req: google_cloud_longrunning::model::DeleteOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_operation(self, req, options).await
}
async fn cancel_operation(
&self,
req: google_cloud_longrunning::model::CancelOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::cancel_operation(self, req, options).await
}
async fn wait_operation(
&self,
req: google_cloud_longrunning::model::WaitOperationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<google_cloud_longrunning::model::Operation>> {
T::wait_operation(self, req, options).await
}
fn get_polling_error_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_error_policy::PollingErrorPolicy> {
T::get_polling_error_policy(self, options)
}
fn get_polling_backoff_policy(
&self,
options: &crate::RequestOptions,
) -> std::sync::Arc<dyn google_cloud_gax::polling_backoff_policy::PollingBackoffPolicy> {
T::get_polling_backoff_policy(self, options)
}
}