#[async_trait::async_trait]
pub trait AuthProviderService: std::fmt::Debug + Send + Sync {
async fn list_auth_providers(
&self,
req: crate::model::ListAuthProvidersRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListAuthProvidersResponse>>;
async fn get_auth_provider(
&self,
req: crate::model::GetAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>>;
async fn create_auth_provider(
&self,
req: crate::model::CreateAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>>;
async fn update_auth_provider(
&self,
req: crate::model::UpdateAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>>;
async fn delete_auth_provider(
&self,
req: crate::model::DeleteAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn undelete_auth_provider(
&self,
req: crate::model::UndeleteAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>>;
async fn query_auth_providers(
&self,
req: crate::model::QueryAuthProvidersRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::QueryAuthProvidersResponse>>;
async fn query_workloads(
&self,
req: crate::model::QueryWorkloadsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::QueryWorkloadsResponse>>;
async fn list_authorizations(
&self,
req: crate::model::ListAuthorizationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListAuthorizationsResponse>>;
async fn get_authorization(
&self,
req: crate::model::GetAuthorizationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Authorization>>;
async fn delete_authorization(
&self,
req: crate::model::DeleteAuthorizationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>>;
async fn list_access_summaries(
&self,
req: crate::model::ListAccessSummariesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListAccessSummariesResponse>>;
async fn get_access_summary(
&self,
req: crate::model::GetAccessSummaryRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AccessSummary>>;
async fn revoke_authorization(
&self,
req: crate::model::RevokeAuthorizationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RevokeAuthorizationResponse>>;
async fn enable_auth_provider(
&self,
req: crate::model::EnableAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>>;
async fn disable_auth_provider(
&self,
req: crate::model::DisableAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>>;
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_trait::async_trait]
impl<T: super::AuthProviderService> AuthProviderService for T {
async fn list_auth_providers(
&self,
req: crate::model::ListAuthProvidersRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListAuthProvidersResponse>> {
T::list_auth_providers(self, req, options).await
}
async fn get_auth_provider(
&self,
req: crate::model::GetAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>> {
T::get_auth_provider(self, req, options).await
}
async fn create_auth_provider(
&self,
req: crate::model::CreateAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>> {
T::create_auth_provider(self, req, options).await
}
async fn update_auth_provider(
&self,
req: crate::model::UpdateAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>> {
T::update_auth_provider(self, req, options).await
}
async fn delete_auth_provider(
&self,
req: crate::model::DeleteAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_auth_provider(self, req, options).await
}
async fn undelete_auth_provider(
&self,
req: crate::model::UndeleteAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>> {
T::undelete_auth_provider(self, req, options).await
}
async fn query_auth_providers(
&self,
req: crate::model::QueryAuthProvidersRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::QueryAuthProvidersResponse>> {
T::query_auth_providers(self, req, options).await
}
async fn query_workloads(
&self,
req: crate::model::QueryWorkloadsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::QueryWorkloadsResponse>> {
T::query_workloads(self, req, options).await
}
async fn list_authorizations(
&self,
req: crate::model::ListAuthorizationsRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListAuthorizationsResponse>> {
T::list_authorizations(self, req, options).await
}
async fn get_authorization(
&self,
req: crate::model::GetAuthorizationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::Authorization>> {
T::get_authorization(self, req, options).await
}
async fn delete_authorization(
&self,
req: crate::model::DeleteAuthorizationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<()>> {
T::delete_authorization(self, req, options).await
}
async fn list_access_summaries(
&self,
req: crate::model::ListAccessSummariesRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::ListAccessSummariesResponse>> {
T::list_access_summaries(self, req, options).await
}
async fn get_access_summary(
&self,
req: crate::model::GetAccessSummaryRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AccessSummary>> {
T::get_access_summary(self, req, options).await
}
async fn revoke_authorization(
&self,
req: crate::model::RevokeAuthorizationRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::RevokeAuthorizationResponse>> {
T::revoke_authorization(self, req, options).await
}
async fn enable_auth_provider(
&self,
req: crate::model::EnableAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>> {
T::enable_auth_provider(self, req, options).await
}
async fn disable_auth_provider(
&self,
req: crate::model::DisableAuthProviderRequest,
options: crate::RequestOptions,
) -> crate::Result<crate::Response<crate::model::AuthProvider>> {
T::disable_auth_provider(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
}
}