From c81051540faf4ea3673314a5a02123f56a735e9f Mon Sep 17 00:00:00 2001 From: Carlos O'Ryan Date: Mon, 15 Jul 2024 17:41:10 +0000 Subject: [PATCH] Regenerate libraries --- .../v1/deployment_resource_pool_client.cc | 55 + .../v1/deployment_resource_pool_client.h | 145 +- .../v1/deployment_resource_pool_connection.cc | 24 + .../v1/deployment_resource_pool_connection.h | 16 + ...urce_pool_connection_idempotency_policy.cc | 7 + ...ource_pool_connection_idempotency_policy.h | 4 + .../v1/feature_online_store_admin_client.h | 16 +- ...deployment_resource_pool_auth_decorator.cc | 31 + .../deployment_resource_pool_auth_decorator.h | 13 + ...eployment_resource_pool_connection_impl.cc | 95 + ...deployment_resource_pool_connection_impl.h | 15 + ...loyment_resource_pool_logging_decorator.cc | 34 + ...ployment_resource_pool_logging_decorator.h | 13 + ...oyment_resource_pool_metadata_decorator.cc | 27 + ...loyment_resource_pool_metadata_decorator.h | 13 + .../internal/deployment_resource_pool_stub.cc | 35 + .../internal/deployment_resource_pool_stub.h | 26 + ...oyment_resource_pool_tracing_connection.cc | 38 + ...loyment_resource_pool_tracing_connection.h | 15 + .../deployment_resource_pool_tracing_stub.cc | 32 + .../deployment_resource_pool_tracing_stub.h | 13 + .../cloud/aiplatform/v1/llm_utility_client.h | 10 +- ...mock_deployment_resource_pool_connection.h | 23 + .../analyticshub/v1/analytics_hub_client.h | 144 +- .../bigquery/migration/v2/migration_client.h | 20 +- .../cloud/bigquerycontrol/v2/dataset_client.h | 26 +- google/cloud/bigquerycontrol/v2/job_client.h | 26 +- .../cloud/bigquerycontrol/v2/model_client.h | 16 +- .../internal/bigtable_auth_decorator.cc | 12 + .../internal/bigtable_auth_decorator.h | 6 + .../internal/bigtable_logging_decorator.cc | 25 + .../internal/bigtable_logging_decorator.h | 6 + .../internal/bigtable_metadata_decorator.cc | 34 + .../internal/bigtable_metadata_decorator.h | 6 + .../bigtable_round_robin_decorator.cc | 8 + .../internal/bigtable_round_robin_decorator.h | 6 + .../cloud/bigtable/internal/bigtable_stub.cc | 11 + .../cloud/bigtable/internal/bigtable_stub.h | 12 + .../internal/bigtable_tracing_stub.cc | 15 + .../bigtable/internal/bigtable_tracing_stub.h | 6 + .../v1/confidential_computing_client.h | 2 +- .../container/v1/cluster_manager_client.h | 12 +- google/cloud/dataplex/v1/data_scan_client.h | 8 +- .../discoveryengine/v1/completion_client.cc | 60 + .../discoveryengine/v1/completion_client.h | 160 +- .../v1/completion_connection.cc | 56 + .../v1/completion_connection.h | 32 + ...ompletion_connection_idempotency_policy.cc | 14 + ...completion_connection_idempotency_policy.h | 8 + .../v1/conversational_search_client.h | 26 +- .../discoveryengine/v1/document_client.h | 4 +- .../v1/internal/completion_auth_decorator.cc | 62 + .../v1/internal/completion_auth_decorator.h | 26 + .../v1/internal/completion_connection_impl.cc | 198 ++ .../v1/internal/completion_connection_impl.h | 34 + .../internal/completion_logging_decorator.cc | 68 + .../internal/completion_logging_decorator.h | 26 + .../internal/completion_metadata_decorator.cc | 46 + .../internal/completion_metadata_decorator.h | 26 + .../v1/internal/completion_stub.cc | 70 + .../v1/internal/completion_stub.h | 52 + .../internal/completion_tracing_connection.cc | 78 + .../internal/completion_tracing_connection.h | 34 + .../v1/internal/completion_tracing_stub.cc | 64 + .../v1/internal/completion_tracing_stub.h | 26 + .../v1/mocks/mock_completion_connection.h | 48 + .../cloud/discoveryengine/v1/search_client.h | 4 +- .../discoveryengine/v1/user_event_client.h | 8 +- google/cloud/dlp/v2/dlp_client.cc | 49 + google/cloud/dlp/v2/dlp_client.h | 616 ++++--- google/cloud/dlp/v2/dlp_connection.cc | 19 + google/cloud/dlp/v2/dlp_connection.h | 12 + .../v2/dlp_connection_idempotency_policy.cc | 15 + .../v2/dlp_connection_idempotency_policy.h | 10 + .../dlp/v2/internal/dlp_auth_decorator.cc | 27 + .../dlp/v2/internal/dlp_auth_decorator.h | 17 + .../dlp/v2/internal/dlp_connection_impl.cc | 65 + .../dlp/v2/internal/dlp_connection_impl.h | 14 + .../dlp/v2/internal/dlp_logging_decorator.cc | 39 + .../dlp/v2/internal/dlp_logging_decorator.h | 17 + .../dlp/v2/internal/dlp_metadata_decorator.cc | 27 + .../dlp/v2/internal/dlp_metadata_decorator.h | 17 + google/cloud/dlp/v2/internal/dlp_stub.cc | 39 + google/cloud/dlp/v2/internal/dlp_stub.h | 34 + .../dlp/v2/internal/dlp_tracing_connection.cc | 30 + .../dlp/v2/internal/dlp_tracing_connection.h | 14 + .../cloud/dlp/v2/internal/dlp_tracing_stub.cc | 39 + .../cloud/dlp/v2/internal/dlp_tracing_stub.h | 17 + .../cloud/dlp/v2/mocks/mock_dlp_connection.h | 18 + .../edgecontainer/v1/edge_container_client.h | 160 +- .../edgenetwork/v1/edge_network_client.h | 36 +- .../agentendpoint/v1/agent_endpoint_client.h | 64 +- .../pubsub/admin/subscription_admin_client.h | 60 +- .../v1/recaptcha_enterprise_client.h | 124 +- google/cloud/run/v2/executions_client.h | 38 +- .../run/v2/internal/jobs_connection_impl.cc | 20 +- .../run/v2/internal/jobs_connection_impl.h | 4 +- .../v2/internal/jobs_tracing_connection.cc | 8 +- .../run/v2/internal/jobs_tracing_connection.h | 4 +- google/cloud/run/v2/jobs_client.cc | 8 +- google/cloud/run/v2/jobs_client.h | 62 +- google/cloud/run/v2/jobs_connection.cc | 10 +- google/cloud/run/v2/jobs_connection.h | 4 +- .../cloud/run/v2/mocks/mock_jobs_connection.h | 4 +- google/cloud/run/v2/revisions_client.h | 30 +- google/cloud/run/v2/services_client.cc | 20 + google/cloud/run/v2/services_client.h | 94 +- .../v1/secure_source_manager_client.h | 52 +- .../securitycenter/v1/.repo-metadata.json | 4 +- .../security_center_auth_decorator.cc | 190 ++ .../internal/security_center_auth_decorator.h | 117 ++ .../security_center_connection_impl.cc | 446 +++++ .../security_center_connection_impl.h | 98 + .../security_center_logging_decorator.cc | 269 +++ .../security_center_logging_decorator.h | 117 ++ .../security_center_metadata_decorator.cc | 195 ++ .../security_center_metadata_decorator.h | 117 ++ .../v1/internal/security_center_stub.cc | 256 +++ .../v1/internal/security_center_stub.h | 236 +++ .../security_center_tracing_connection.cc | 218 +++ .../security_center_tracing_connection.h | 98 + .../internal/security_center_tracing_stub.cc | 266 +++ .../internal/security_center_tracing_stub.h | 117 ++ .../mocks/mock_security_center_connection.h | 126 ++ .../v1/security_center_client.cc | 337 ++++ .../v1/security_center_client.h | 1612 +++++++++++++++-- .../v1/security_center_connection.cc | 132 ++ .../v1/security_center_connection.h | 93 + ...ty_center_connection_idempotency_policy.cc | 115 ++ ...ity_center_connection_idempotency_policy.h | 72 + .../v2/security_center_client.h | 208 ++- .../spanner/admin/database_admin_client.cc | 92 + .../spanner/admin/database_admin_client.h | 451 ++++- .../admin/database_admin_connection.cc | 31 + .../spanner/admin/database_admin_connection.h | 23 + ...ase_admin_connection_idempotency_policy.cc | 26 + ...base_admin_connection_idempotency_policy.h | 19 + .../internal/database_admin_auth_decorator.cc | 49 + .../internal/database_admin_auth_decorator.h | 29 + .../database_admin_connection_impl.cc | 98 + .../internal/database_admin_connection_impl.h | 24 + .../database_admin_logging_decorator.cc | 70 + .../database_admin_logging_decorator.h | 29 + .../database_admin_metadata_decorator.cc | 51 + .../database_admin_metadata_decorator.h | 29 + .../database_admin_rest_connection_impl.cc | 99 + .../database_admin_rest_connection_impl.h | 24 + .../database_admin_rest_logging_decorator.cc | 70 + .../database_admin_rest_logging_decorator.h | 34 + .../database_admin_rest_metadata_decorator.cc | 44 + .../database_admin_rest_metadata_decorator.h | 34 + .../internal/database_admin_rest_stub.cc | 68 + .../admin/internal/database_admin_rest_stub.h | 69 + .../admin/internal/database_admin_stub.cc | 64 + .../admin/internal/database_admin_stub.h | 59 + .../database_admin_tracing_connection.cc | 51 + .../database_admin_tracing_connection.h | 24 + .../internal/database_admin_tracing_stub.cc | 64 + .../internal/database_admin_tracing_stub.h | 29 + .../mocks/mock_database_admin_connection.h | 34 + google/cloud/sql/v1/sql_instances_client.h | 10 +- google/cloud/sql/v1/sql_ssl_certs_client.h | 2 +- .../v1/internal/livestream_auth_decorator.cc | 74 + .../v1/internal/livestream_auth_decorator.h | 34 + .../v1/internal/livestream_connection_impl.cc | 238 +++ .../v1/internal/livestream_connection_impl.h | 33 + .../internal/livestream_logging_decorator.cc | 88 + .../internal/livestream_logging_decorator.h | 34 + .../internal/livestream_metadata_decorator.cc | 58 + .../internal/livestream_metadata_decorator.h | 34 + .../livestream/v1/internal/livestream_stub.cc | 86 + .../livestream/v1/internal/livestream_stub.h | 67 + .../internal/livestream_tracing_connection.cc | 81 + .../internal/livestream_tracing_connection.h | 33 + .../v1/internal/livestream_tracing_stub.cc | 76 + .../v1/internal/livestream_tracing_stub.h | 34 + .../video/livestream/v1/livestream_client.cc | 121 ++ .../video/livestream/v1/livestream_client.h | 513 +++++- .../livestream/v1/livestream_connection.cc | 62 + .../livestream/v1/livestream_connection.h | 30 + ...ivestream_connection_idempotency_policy.cc | 20 + ...livestream_connection_idempotency_policy.h | 12 + .../v1/mocks/mock_livestream_connection.h | 51 + 183 files changed, 12101 insertions(+), 1185 deletions(-) diff --git a/google/cloud/aiplatform/v1/deployment_resource_pool_client.cc b/google/cloud/aiplatform/v1/deployment_resource_pool_client.cc index 695561165e151..3179cc6d44618 100644 --- a/google/cloud/aiplatform/v1/deployment_resource_pool_client.cc +++ b/google/cloud/aiplatform/v1/deployment_resource_pool_client.cc @@ -127,6 +127,61 @@ DeploymentResourcePoolServiceClient::ListDeploymentResourcePools( return connection_->ListDeploymentResourcePools(std::move(request)); } +future> +DeploymentResourcePoolServiceClient::UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::DeploymentResourcePool const& + deployment_resource_pool, + google::protobuf::FieldMask const& update_mask, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest request; + *request.mutable_deployment_resource_pool() = deployment_resource_pool; + *request.mutable_update_mask() = update_mask; + return connection_->UpdateDeploymentResourcePool(request); +} + +StatusOr +DeploymentResourcePoolServiceClient::UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::DeploymentResourcePool const& + deployment_resource_pool, + google::protobuf::FieldMask const& update_mask, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest request; + *request.mutable_deployment_resource_pool() = deployment_resource_pool; + *request.mutable_update_mask() = update_mask; + return connection_->UpdateDeploymentResourcePool(ExperimentalTag{}, + NoAwaitTag{}, request); +} + +future> +DeploymentResourcePoolServiceClient::UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->UpdateDeploymentResourcePool(request); +} + +StatusOr +DeploymentResourcePoolServiceClient::UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->UpdateDeploymentResourcePool(ExperimentalTag{}, + NoAwaitTag{}, request); +} + +future> +DeploymentResourcePoolServiceClient::UpdateDeploymentResourcePool( + ExperimentalTag, google::longrunning::Operation const& operation, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->UpdateDeploymentResourcePool(ExperimentalTag{}, + operation); +} + future> DeploymentResourcePoolServiceClient::DeleteDeploymentResourcePool( std::string const& name, Options opts) { diff --git a/google/cloud/aiplatform/v1/deployment_resource_pool_client.h b/google/cloud/aiplatform/v1/deployment_resource_pool_client.h index 7cdd94578bc4f..07c3b8425fb6a 100644 --- a/google/cloud/aiplatform/v1/deployment_resource_pool_client.h +++ b/google/cloud/aiplatform/v1/deployment_resource_pool_client.h @@ -126,7 +126,7 @@ class DeploymentResourcePoolServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.CreateDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L101} + /// [google.cloud.aiplatform.v1.CreateDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L117} /// [google.cloud.aiplatform.v1.DeploymentResourcePool]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool.proto#L35} /// // clang-format on @@ -184,7 +184,7 @@ class DeploymentResourcePoolServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.CreateDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L101} + /// [google.cloud.aiplatform.v1.CreateDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L117} /// [google.cloud.aiplatform.v1.DeploymentResourcePool]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool.proto#L35} /// // clang-format on @@ -246,7 +246,7 @@ class DeploymentResourcePoolServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.aiplatform.v1.DeploymentResourcePool]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool.proto#L35} - /// [google.cloud.aiplatform.v1.GetDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L132} + /// [google.cloud.aiplatform.v1.GetDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L148} /// // clang-format on StatusOr @@ -276,7 +276,7 @@ class DeploymentResourcePoolServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.aiplatform.v1.DeploymentResourcePool]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool.proto#L35} - /// [google.cloud.aiplatform.v1.GetDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L132} + /// [google.cloud.aiplatform.v1.GetDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L148} /// // clang-format on StatusOr @@ -314,7 +314,7 @@ class DeploymentResourcePoolServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.aiplatform.v1.DeploymentResourcePool]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool.proto#L35} - /// [google.cloud.aiplatform.v1.ListDeploymentResourcePoolsRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L145} + /// [google.cloud.aiplatform.v1.ListDeploymentResourcePoolsRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L161} /// // clang-format on StreamRange @@ -353,7 +353,7 @@ class DeploymentResourcePoolServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.aiplatform.v1.DeploymentResourcePool]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool.proto#L35} - /// [google.cloud.aiplatform.v1.ListDeploymentResourcePoolsRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L145} + /// [google.cloud.aiplatform.v1.ListDeploymentResourcePoolsRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L161} /// // clang-format on StreamRange @@ -361,6 +361,135 @@ class DeploymentResourcePoolServiceClient { google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest request, Options opts = {}); + // clang-format off + /// + /// Update a DeploymentResourcePool. + /// + /// @param deployment_resource_pool Required. The DeploymentResourcePool to update. + /// @n + /// The DeploymentResourcePool's `name` field is used to identify the + /// DeploymentResourcePool to update. + /// Format: + /// `projects/{project}/locations/{location}/deploymentResourcePools/{deployment_resource_pool}` + /// @param update_mask Required. The list of fields to update. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return A [`future`] that becomes satisfied when the LRO + /// ([Long Running Operation]) completes or the polling policy in effect + /// for this call is exhausted. The future is satisfied with an error if + /// the LRO completes with an error or the polling policy is exhausted. + /// In this case the [`StatusOr`] returned by the future contains the + /// error. If the LRO completes successfully the value of the future + /// contains the LRO's result. For this RPC the result is a + /// [google.cloud.aiplatform.v1.DeploymentResourcePool] proto message. + /// The C++ class representing this message is created by Protobuf, using + /// the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [Long Running Operation]: https://google.aip.dev/151 + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.aiplatform.v1.DeploymentResourcePool]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool.proto#L35} + /// [google.cloud.aiplatform.v1.UpdateDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L195} + /// + // clang-format on + future> + UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::DeploymentResourcePool const& + deployment_resource_pool, + google::protobuf::FieldMask const& update_mask, Options opts = {}); + + // clang-format off + /// + /// @copybrief UpdateDeploymentResourcePool + /// + /// Specifying the [`NoAwaitTag`] immediately returns the + /// [`google::longrunning::Operation`] that corresponds to the Long Running + /// Operation that has been started. No polling for operation status occurs. + /// + /// [`NoAwaitTag`]: @ref google::cloud::NoAwaitTag + /// + // clang-format on + StatusOr UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::DeploymentResourcePool const& + deployment_resource_pool, + google::protobuf::FieldMask const& update_mask, Options opts = {}); + + // clang-format off + /// + /// Update a DeploymentResourcePool. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.aiplatform.v1.UpdateDeploymentResourcePoolRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return A [`future`] that becomes satisfied when the LRO + /// ([Long Running Operation]) completes or the polling policy in effect + /// for this call is exhausted. The future is satisfied with an error if + /// the LRO completes with an error or the polling policy is exhausted. + /// In this case the [`StatusOr`] returned by the future contains the + /// error. If the LRO completes successfully the value of the future + /// contains the LRO's result. For this RPC the result is a + /// [google.cloud.aiplatform.v1.DeploymentResourcePool] proto message. + /// The C++ class representing this message is created by Protobuf, using + /// the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [Long Running Operation]: https://google.aip.dev/151 + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.aiplatform.v1.DeploymentResourcePool]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool.proto#L35} + /// [google.cloud.aiplatform.v1.UpdateDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L195} + /// + // clang-format on + future> + UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief UpdateDeploymentResourcePool + /// + /// Specifying the [`NoAwaitTag`] immediately returns the + /// [`google::longrunning::Operation`] that corresponds to the Long Running + /// Operation that has been started. No polling for operation status occurs. + /// + /// [`NoAwaitTag`]: @ref google::cloud::NoAwaitTag + /// + // clang-format on + StatusOr UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief UpdateDeploymentResourcePool + /// + /// This method accepts a `google::longrunning::Operation` that corresponds + /// to a previously started Long Running Operation (LRO) and polls the status + /// of the LRO in the background. + /// + // clang-format on + future> + UpdateDeploymentResourcePool(ExperimentalTag, + google::longrunning::Operation const& operation, + Options opts = {}); + // clang-format off /// /// Delete a DeploymentResourcePool. @@ -388,7 +517,7 @@ class DeploymentResourcePoolServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.DeleteDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L185} + /// [google.cloud.aiplatform.v1.DeleteDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L217} /// [google.cloud.aiplatform.v1.DeleteOperationMetadata]: @googleapis_reference_link{google/cloud/aiplatform/v1/operation.proto#L52} /// // clang-format on @@ -439,7 +568,7 @@ class DeploymentResourcePoolServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.DeleteDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L185} + /// [google.cloud.aiplatform.v1.DeleteDeploymentResourcePoolRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/deployment_resource_pool_service.proto#L217} /// [google.cloud.aiplatform.v1.DeleteOperationMetadata]: @googleapis_reference_link{google/cloud/aiplatform/v1/operation.proto#L52} /// // clang-format on diff --git a/google/cloud/aiplatform/v1/deployment_resource_pool_connection.cc b/google/cloud/aiplatform/v1/deployment_resource_pool_connection.cc index ce3b2db744e60..329c20622f0ba 100644 --- a/google/cloud/aiplatform/v1/deployment_resource_pool_connection.cc +++ b/google/cloud/aiplatform/v1/deployment_resource_pool_connection.cc @@ -77,6 +77,30 @@ DeploymentResourcePoolServiceConnection::ListDeploymentResourcePools( StreamRange>(); } +future> +DeploymentResourcePoolServiceConnection::UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const&) { + return google::cloud::make_ready_future< + StatusOr>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +StatusOr +DeploymentResourcePoolServiceConnection::UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const&) { + return StatusOr( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +future> +DeploymentResourcePoolServiceConnection::UpdateDeploymentResourcePool( + ExperimentalTag, google::longrunning::Operation const&) { + return google::cloud::make_ready_future< + StatusOr>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + future> DeploymentResourcePoolServiceConnection::DeleteDeploymentResourcePool( google::cloud::aiplatform::v1::DeleteDeploymentResourcePoolRequest const&) { diff --git a/google/cloud/aiplatform/v1/deployment_resource_pool_connection.h b/google/cloud/aiplatform/v1/deployment_resource_pool_connection.h index 5b4c68652a9a4..36d25eb9d29cf 100644 --- a/google/cloud/aiplatform/v1/deployment_resource_pool_connection.h +++ b/google/cloud/aiplatform/v1/deployment_resource_pool_connection.h @@ -232,6 +232,22 @@ class DeploymentResourcePoolServiceConnection { google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest request); + virtual future< + StatusOr> + UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request); + + virtual StatusOr UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request); + + virtual future< + StatusOr> + UpdateDeploymentResourcePool(ExperimentalTag, + google::longrunning::Operation const& operation); + virtual future< StatusOr> DeleteDeploymentResourcePool( diff --git a/google/cloud/aiplatform/v1/deployment_resource_pool_connection_idempotency_policy.cc b/google/cloud/aiplatform/v1/deployment_resource_pool_connection_idempotency_policy.cc index fa8ce2650dea2..cc9613f29cf10 100644 --- a/google/cloud/aiplatform/v1/deployment_resource_pool_connection_idempotency_policy.cc +++ b/google/cloud/aiplatform/v1/deployment_resource_pool_connection_idempotency_policy.cc @@ -55,6 +55,13 @@ Idempotency DeploymentResourcePoolServiceConnectionIdempotencyPolicy:: return Idempotency::kIdempotent; } +Idempotency DeploymentResourcePoolServiceConnectionIdempotencyPolicy:: + UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1:: + UpdateDeploymentResourcePoolRequest const&) { + return Idempotency::kNonIdempotent; +} + Idempotency DeploymentResourcePoolServiceConnectionIdempotencyPolicy:: DeleteDeploymentResourcePool( google::cloud::aiplatform::v1:: diff --git a/google/cloud/aiplatform/v1/deployment_resource_pool_connection_idempotency_policy.h b/google/cloud/aiplatform/v1/deployment_resource_pool_connection_idempotency_policy.h index 9d7301c9fb181..f2d89ac97a82f 100644 --- a/google/cloud/aiplatform/v1/deployment_resource_pool_connection_idempotency_policy.h +++ b/google/cloud/aiplatform/v1/deployment_resource_pool_connection_idempotency_policy.h @@ -50,6 +50,10 @@ class DeploymentResourcePoolServiceConnectionIdempotencyPolicy { google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest request); + virtual google::cloud::Idempotency UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request); + virtual google::cloud::Idempotency DeleteDeploymentResourcePool( google::cloud::aiplatform::v1::DeleteDeploymentResourcePoolRequest const& request); diff --git a/google/cloud/aiplatform/v1/feature_online_store_admin_client.h b/google/cloud/aiplatform/v1/feature_online_store_admin_client.h index 79b1a3cc33901..184058a898fe3 100644 --- a/google/cloud/aiplatform/v1/feature_online_store_admin_client.h +++ b/google/cloud/aiplatform/v1/feature_online_store_admin_client.h @@ -131,7 +131,7 @@ class FeatureOnlineStoreAdminServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.aiplatform.v1.CreateFeatureOnlineStoreRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store_admin_service.proto#L196} - /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L35} + /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L36} /// // clang-format on future> @@ -189,7 +189,7 @@ class FeatureOnlineStoreAdminServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.aiplatform.v1.CreateFeatureOnlineStoreRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store_admin_service.proto#L196} - /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L35} + /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L36} /// // clang-format on future> @@ -247,7 +247,7 @@ class FeatureOnlineStoreAdminServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L35} + /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L36} /// [google.cloud.aiplatform.v1.GetFeatureOnlineStoreRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store_admin_service.proto#L223} /// // clang-format on @@ -277,7 +277,7 @@ class FeatureOnlineStoreAdminServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L35} + /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L36} /// [google.cloud.aiplatform.v1.GetFeatureOnlineStoreRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store_admin_service.proto#L223} /// // clang-format on @@ -316,7 +316,7 @@ class FeatureOnlineStoreAdminServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L35} + /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L36} /// [google.cloud.aiplatform.v1.ListFeatureOnlineStoresRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store_admin_service.proto#L235} /// // clang-format on @@ -355,7 +355,7 @@ class FeatureOnlineStoreAdminServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L35} + /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L36} /// [google.cloud.aiplatform.v1.ListFeatureOnlineStoresRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store_admin_service.proto#L235} /// // clang-format on @@ -405,7 +405,7 @@ class FeatureOnlineStoreAdminServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L35} + /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L36} /// [google.cloud.aiplatform.v1.UpdateFeatureOnlineStoreRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store_admin_service.proto#L304} /// // clang-format on @@ -462,7 +462,7 @@ class FeatureOnlineStoreAdminServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L35} + /// [google.cloud.aiplatform.v1.FeatureOnlineStore]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store.proto#L36} /// [google.cloud.aiplatform.v1.UpdateFeatureOnlineStoreRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/feature_online_store_admin_service.proto#L304} /// // clang-format on diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_auth_decorator.cc b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_auth_decorator.cc index c735b494ecc80..75d010c846d96 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_auth_decorator.cc +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_auth_decorator.cc @@ -82,6 +82,37 @@ DeploymentResourcePoolServiceAuth::ListDeploymentResourcePools( return child_->ListDeploymentResourcePools(context, options, request); } +future> +DeploymentResourcePoolServiceAuth::AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + using ReturnType = StatusOr; + return auth_->AsyncConfigureContext(std::move(context)) + .then([cq, child = child_, options = std::move(options), + request](future>> + f) mutable { + auto context = f.get(); + if (!context) { + return make_ready_future(ReturnType(std::move(context).status())); + } + return child->AsyncUpdateDeploymentResourcePool( + cq, *std::move(context), std::move(options), request); + }); +} + +StatusOr +DeploymentResourcePoolServiceAuth::UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->UpdateDeploymentResourcePool(context, options, request); +} + future> DeploymentResourcePoolServiceAuth::AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_auth_decorator.h b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_auth_decorator.h index b8f9259698025..ab4ec26efbe51 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_auth_decorator.h +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_auth_decorator.h @@ -65,6 +65,19 @@ class DeploymentResourcePoolServiceAuth google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest const& request) override; + future> + AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + + StatusOr UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + future> AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_connection_impl.cc b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_connection_impl.cc index 746acdf990612..45489e1210df4 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_connection_impl.cc +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_connection_impl.cc @@ -226,6 +226,101 @@ DeploymentResourcePoolServiceConnectionImpl::ListDeploymentResourcePools( }); } +future> +DeploymentResourcePoolServiceConnectionImpl::UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + auto request_copy = request; + auto const idempotent = + idempotency_policy(*current)->UpdateDeploymentResourcePool(request_copy); + return google::cloud::internal::AsyncLongRunningOperation< + google::cloud::aiplatform::v1::DeploymentResourcePool>( + background_->cq(), current, std::move(request_copy), + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1:: + UpdateDeploymentResourcePoolRequest const& request) { + return stub->AsyncUpdateDeploymentResourcePool( + cq, std::move(context), std::move(options), request); + }, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultResponse< + google::cloud::aiplatform::v1::DeploymentResourcePool>, + retry_policy(*current), backoff_policy(*current), idempotent, + polling_policy(*current), __func__); +} + +StatusOr +DeploymentResourcePoolServiceConnectionImpl::UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->UpdateDeploymentResourcePool(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::aiplatform::v1:: + UpdateDeploymentResourcePoolRequest const& request) { + return stub_->UpdateDeploymentResourcePool(context, options, request); + }, + *current, request, __func__); +} + +future> +DeploymentResourcePoolServiceConnectionImpl::UpdateDeploymentResourcePool( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto current = google::cloud::internal::SaveCurrentOptions(); + if (!operation.metadata() + .Is()) { + return make_ready_future< + StatusOr>( + internal::InvalidArgumentError( + "operation does not correspond to UpdateDeploymentResourcePool", + GCP_ERROR_INFO().WithMetadata("operation", + operation.metadata().DebugString()))); + } + + return google::cloud::internal::AsyncAwaitLongRunningOperation< + google::cloud::aiplatform::v1::DeploymentResourcePool>( + background_->cq(), current, operation, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultResponse< + google::cloud::aiplatform::v1::DeploymentResourcePool>, + polling_policy(*current), __func__); +} + future> DeploymentResourcePoolServiceConnectionImpl::DeleteDeploymentResourcePool( google::cloud::aiplatform::v1::DeleteDeploymentResourcePoolRequest const& diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_connection_impl.h b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_connection_impl.h index fee0b8ee7f190..d0102deb9759c 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_connection_impl.h +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_connection_impl.h @@ -78,6 +78,21 @@ class DeploymentResourcePoolServiceConnectionImpl google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest request) override; + future> + UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + + StatusOr UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + + future> + UpdateDeploymentResourcePool( + ExperimentalTag, + google::longrunning::Operation const& operation) override; + future> DeleteDeploymentResourcePool( google::cloud::aiplatform::v1::DeleteDeploymentResourcePoolRequest const& diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_logging_decorator.cc b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_logging_decorator.cc index 33852fc81e95a..f412013ca6f04 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_logging_decorator.cc +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_logging_decorator.cc @@ -96,6 +96,40 @@ DeploymentResourcePoolServiceLogging::ListDeploymentResourcePools( context, options, request, __func__, tracing_options_); } +future> +DeploymentResourcePoolServiceLogging::AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1:: + UpdateDeploymentResourcePoolRequest const& request) { + return child_->AsyncUpdateDeploymentResourcePool( + cq, std::move(context), std::move(options), request); + }, + cq, std::move(context), std::move(options), request, __func__, + tracing_options_); +} + +StatusOr +DeploymentResourcePoolServiceLogging::UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::aiplatform::v1:: + UpdateDeploymentResourcePoolRequest const& request) { + return child_->UpdateDeploymentResourcePool(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + future> DeploymentResourcePoolServiceLogging::AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_logging_decorator.h b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_logging_decorator.h index aa7998abd416c..3a723f3ee16ef 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_logging_decorator.h +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_logging_decorator.h @@ -65,6 +65,19 @@ class DeploymentResourcePoolServiceLogging google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest const& request) override; + future> + AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + + StatusOr UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + future> AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_metadata_decorator.cc b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_metadata_decorator.cc index ebf5201e90536..03cafd745b561 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_metadata_decorator.cc +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_metadata_decorator.cc @@ -85,6 +85,33 @@ DeploymentResourcePoolServiceMetadata::ListDeploymentResourcePools( return child_->ListDeploymentResourcePools(context, options, request); } +future> +DeploymentResourcePoolServiceMetadata::AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + SetMetadata(*context, *options, + absl::StrCat("deployment_resource_pool.name=", + internal::UrlEncode( + request.deployment_resource_pool().name()))); + return child_->AsyncUpdateDeploymentResourcePool(cq, std::move(context), + std::move(options), request); +} + +StatusOr +DeploymentResourcePoolServiceMetadata::UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("deployment_resource_pool.name=", + internal::UrlEncode( + request.deployment_resource_pool().name()))); + return child_->UpdateDeploymentResourcePool(context, options, request); +} + future> DeploymentResourcePoolServiceMetadata::AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_metadata_decorator.h b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_metadata_decorator.h index f6362c2edb330..626cbee48e27f 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_metadata_decorator.h +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_metadata_decorator.h @@ -66,6 +66,19 @@ class DeploymentResourcePoolServiceMetadata google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest const& request) override; + future> + AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + + StatusOr UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + future> AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_stub.cc b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_stub.cc index 8ed23231766b5..885da8984ccc0 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_stub.cc +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_stub.cc @@ -95,6 +95,41 @@ DefaultDeploymentResourcePoolServiceStub::ListDeploymentResourcePools( return response; } +future> +DefaultDeploymentResourcePoolServiceStub::AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + return internal::MakeUnaryRpcImpl< + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest, + google::longrunning::Operation>( + cq, + [this](grpc::ClientContext* context, + google::cloud::aiplatform::v1:: + UpdateDeploymentResourcePoolRequest const& request, + grpc::CompletionQueue* cq) { + return grpc_stub_->AsyncUpdateDeploymentResourcePool(context, request, + cq); + }, + request, std::move(context)); +} + +StatusOr +DefaultDeploymentResourcePoolServiceStub::UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + google::longrunning::Operation response; + auto status = + grpc_stub_->UpdateDeploymentResourcePool(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + future> DefaultDeploymentResourcePoolServiceStub::AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_stub.h b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_stub.h index e393f31b44e50..ac795c3f0bac4 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_stub.h +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_stub.h @@ -64,6 +64,19 @@ class DeploymentResourcePoolServiceStub { google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest const& request) = 0; + virtual future> + AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) = 0; + + virtual StatusOr UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) = 0; + virtual future> AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, @@ -126,6 +139,19 @@ class DefaultDeploymentResourcePoolServiceStub google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest const& request) override; + future> + AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + + StatusOr UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + future> AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_connection.cc b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_connection.cc index e987ae4639e4d..a5be6d9064c1b 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_connection.cc +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_connection.cc @@ -97,6 +97,44 @@ DeploymentResourcePoolServiceTracingConnection::ListDeploymentResourcePools( std::move(sr)); } +future> +DeploymentResourcePoolServiceTracingConnection::UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + auto span = internal::MakeSpan( + "aiplatform_v1::DeploymentResourcePoolServiceConnection::" + "UpdateDeploymentResourcePool"); + internal::OTelScope scope(span); + return internal::EndSpan(std::move(span), + child_->UpdateDeploymentResourcePool(request)); +} + +StatusOr +DeploymentResourcePoolServiceTracingConnection::UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + auto span = internal::MakeSpan( + "aiplatform_v1::DeploymentResourcePoolServiceConnection::" + "UpdateDeploymentResourcePool"); + opentelemetry::trace::Scope scope(span); + return internal::EndSpan( + *span, child_->UpdateDeploymentResourcePool(ExperimentalTag{}, + NoAwaitTag{}, request)); +} + +future> +DeploymentResourcePoolServiceTracingConnection::UpdateDeploymentResourcePool( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto span = internal::MakeSpan( + "aiplatform_v1::DeploymentResourcePoolServiceConnection::" + "UpdateDeploymentResourcePool"); + internal::OTelScope scope(span); + return internal::EndSpan( + std::move(span), + child_->UpdateDeploymentResourcePool(ExperimentalTag{}, operation)); +} + future> DeploymentResourcePoolServiceTracingConnection::DeleteDeploymentResourcePool( google::cloud::aiplatform::v1::DeleteDeploymentResourcePoolRequest const& diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_connection.h b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_connection.h index 646489b27e67d..00371dcd1b910 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_connection.h +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_connection.h @@ -66,6 +66,21 @@ class DeploymentResourcePoolServiceTracingConnection google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest request) override; + future> + UpdateDeploymentResourcePool( + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + + StatusOr UpdateDeploymentResourcePool( + ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + + future> + UpdateDeploymentResourcePool( + ExperimentalTag, + google::longrunning::Operation const& operation) override; + future> DeleteDeploymentResourcePool( google::cloud::aiplatform::v1::DeleteDeploymentResourcePoolRequest const& diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_stub.cc b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_stub.cc index a025f6fd4c01e..6272379f68565 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_stub.cc +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_stub.cc @@ -94,6 +94,38 @@ DeploymentResourcePoolServiceTracingStub::ListDeploymentResourcePools( child_->ListDeploymentResourcePools(context, options, request)); } +future> +DeploymentResourcePoolServiceTracingStub::AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.aiplatform.v1.DeploymentResourcePoolService", + "UpdateDeploymentResourcePool"); + internal::OTelScope scope(span); + internal::InjectTraceContext(*context, *propagator_); + auto f = child_->AsyncUpdateDeploymentResourcePool( + cq, context, std::move(options), request); + return internal::EndSpan(std::move(context), std::move(span), std::move(f)); +} + +StatusOr +DeploymentResourcePoolServiceTracingStub::UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.aiplatform.v1.DeploymentResourcePoolService", + "UpdateDeploymentResourcePool"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->UpdateDeploymentResourcePool(context, options, request)); +} + future> DeploymentResourcePoolServiceTracingStub::AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_stub.h b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_stub.h index 219bcf1f3cb36..1ef85dd144a42 100644 --- a/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_stub.h +++ b/google/cloud/aiplatform/v1/internal/deployment_resource_pool_tracing_stub.h @@ -64,6 +64,19 @@ class DeploymentResourcePoolServiceTracingStub google::cloud::aiplatform::v1::ListDeploymentResourcePoolsRequest const& request) override; + future> + AsyncUpdateDeploymentResourcePool( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + + StatusOr UpdateDeploymentResourcePool( + grpc::ClientContext& context, Options options, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request) override; + future> AsyncDeleteDeploymentResourcePool( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/aiplatform/v1/llm_utility_client.h b/google/cloud/aiplatform/v1/llm_utility_client.h index 99ee937474f0b..79e1e0f42b6f9 100644 --- a/google/cloud/aiplatform/v1/llm_utility_client.h +++ b/google/cloud/aiplatform/v1/llm_utility_client.h @@ -153,7 +153,7 @@ class LlmUtilityServiceClient { /// /// @param endpoint Required. The name of the Endpoint requested to get lists of tokens and /// token ids. - /// @param instances Required. The instances that are the input to token computing API call. + /// @param instances Optional. The instances that are the input to token computing API call. /// Schema is identical to the prediction schema of the text model, even for /// the non-text models, like chat models, or Codey models. /// @param opts Optional. Override the class-level options, such as retry and @@ -169,8 +169,8 @@ class LlmUtilityServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.ComputeTokensRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/llm_utility_service.proto#L68} - /// [google.cloud.aiplatform.v1.ComputeTokensResponse]: @googleapis_reference_link{google/cloud/aiplatform/v1/llm_utility_service.proto#L95} + /// [google.cloud.aiplatform.v1.ComputeTokensRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/llm_utility_service.proto#L69} + /// [google.cloud.aiplatform.v1.ComputeTokensResponse]: @googleapis_reference_link{google/cloud/aiplatform/v1/llm_utility_service.proto#L107} /// // clang-format on StatusOr ComputeTokens( @@ -200,8 +200,8 @@ class LlmUtilityServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.aiplatform.v1.ComputeTokensRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/llm_utility_service.proto#L68} - /// [google.cloud.aiplatform.v1.ComputeTokensResponse]: @googleapis_reference_link{google/cloud/aiplatform/v1/llm_utility_service.proto#L95} + /// [google.cloud.aiplatform.v1.ComputeTokensRequest]: @googleapis_reference_link{google/cloud/aiplatform/v1/llm_utility_service.proto#L69} + /// [google.cloud.aiplatform.v1.ComputeTokensResponse]: @googleapis_reference_link{google/cloud/aiplatform/v1/llm_utility_service.proto#L107} /// // clang-format on StatusOr ComputeTokens( diff --git a/google/cloud/aiplatform/v1/mocks/mock_deployment_resource_pool_connection.h b/google/cloud/aiplatform/v1/mocks/mock_deployment_resource_pool_connection.h index d56f9231eccbc..fe36f09b6285d 100644 --- a/google/cloud/aiplatform/v1/mocks/mock_deployment_resource_pool_connection.h +++ b/google/cloud/aiplatform/v1/mocks/mock_deployment_resource_pool_connection.h @@ -84,6 +84,29 @@ class MockDeploymentResourcePoolServiceConnection request), (override)); + /// Due to additional overloads for this method + /// `EXPECT_CALL(*mock, UpdateDeploymentResourcePool)` is now ambiguous. Use + /// `EXPECT_CALL(*mock, UpdateDeploymentResourcePool(::testing::_))` instead. + MOCK_METHOD( + future>, + UpdateDeploymentResourcePool, + (google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request), + (override)); + + MOCK_METHOD( + StatusOr, UpdateDeploymentResourcePool, + (ExperimentalTag, NoAwaitTag, + google::cloud::aiplatform::v1::UpdateDeploymentResourcePoolRequest const& + request), + (override)); + + MOCK_METHOD( + future>, + UpdateDeploymentResourcePool, + (ExperimentalTag, google::longrunning::Operation const& operation), + (override)); + /// Due to additional overloads for this method /// `EXPECT_CALL(*mock, DeleteDeploymentResourcePool)` is now ambiguous. Use /// `EXPECT_CALL(*mock, DeleteDeploymentResourcePool(::testing::_))` instead. diff --git a/google/cloud/bigquery/analyticshub/v1/analytics_hub_client.h b/google/cloud/bigquery/analyticshub/v1/analytics_hub_client.h index 2fd09401febb3..1659e700eca93 100644 --- a/google/cloud/bigquery/analyticshub/v1/analytics_hub_client.h +++ b/google/cloud/bigquery/analyticshub/v1/analytics_hub_client.h @@ -124,8 +124,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} - /// [google.cloud.bigquery.analyticshub.v1.ListDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L701} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} + /// [google.cloud.bigquery.analyticshub.v1.ListDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L750} /// // clang-format on StreamRange @@ -163,8 +163,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} - /// [google.cloud.bigquery.analyticshub.v1.ListDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L701} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} + /// [google.cloud.bigquery.analyticshub.v1.ListDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L750} /// // clang-format on StreamRange @@ -202,8 +202,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} - /// [google.cloud.bigquery.analyticshub.v1.ListOrgDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L731} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} + /// [google.cloud.bigquery.analyticshub.v1.ListOrgDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L780} /// // clang-format on StreamRange @@ -242,8 +242,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} - /// [google.cloud.bigquery.analyticshub.v1.ListOrgDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L731} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} + /// [google.cloud.bigquery.analyticshub.v1.ListOrgDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L780} /// // clang-format on StreamRange @@ -271,8 +271,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} - /// [google.cloud.bigquery.analyticshub.v1.GetDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L756} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} + /// [google.cloud.bigquery.analyticshub.v1.GetDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L805} /// // clang-format on StatusOr @@ -301,8 +301,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} - /// [google.cloud.bigquery.analyticshub.v1.GetDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L756} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} + /// [google.cloud.bigquery.analyticshub.v1.GetDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L805} /// // clang-format on StatusOr @@ -331,8 +331,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.CreateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L768} - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} + /// [google.cloud.bigquery.analyticshub.v1.CreateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L817} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} /// // clang-format on StatusOr @@ -365,8 +365,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.CreateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L768} - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} + /// [google.cloud.bigquery.analyticshub.v1.CreateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L817} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} /// // clang-format on StatusOr @@ -395,8 +395,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} - /// [google.cloud.bigquery.analyticshub.v1.UpdateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L790} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} + /// [google.cloud.bigquery.analyticshub.v1.UpdateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L839} /// // clang-format on StatusOr @@ -428,8 +428,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L304} - /// [google.cloud.bigquery.analyticshub.v1.UpdateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L790} + /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L320} + /// [google.cloud.bigquery.analyticshub.v1.UpdateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L839} /// // clang-format on StatusOr @@ -454,7 +454,7 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DeleteDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L802} + /// [google.cloud.bigquery.analyticshub.v1.DeleteDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L851} /// // clang-format on Status DeleteDataExchange(std::string const& name, Options opts = {}); @@ -480,7 +480,7 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DeleteDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L802} + /// [google.cloud.bigquery.analyticshub.v1.DeleteDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L851} /// // clang-format on Status DeleteDataExchange(google::cloud::bigquery::analyticshub::v1:: @@ -515,8 +515,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.ListListingsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L814} - /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L446} + /// [google.cloud.bigquery.analyticshub.v1.ListListingsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L863} + /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L468} /// // clang-format on StreamRange ListListings( @@ -554,8 +554,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.ListListingsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L814} - /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L446} + /// [google.cloud.bigquery.analyticshub.v1.ListListingsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L863} + /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L468} /// // clang-format on StreamRange ListListings( @@ -581,8 +581,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.GetListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L843} - /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L446} + /// [google.cloud.bigquery.analyticshub.v1.GetListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L892} + /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L468} /// // clang-format on StatusOr GetListing( @@ -611,8 +611,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.GetListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L843} - /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L446} + /// [google.cloud.bigquery.analyticshub.v1.GetListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L892} + /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L468} /// // clang-format on StatusOr GetListing( @@ -640,8 +640,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.CreateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L855} - /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L446} + /// [google.cloud.bigquery.analyticshub.v1.CreateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L904} + /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L468} /// // clang-format on StatusOr CreateListing( @@ -672,8 +672,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.CreateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L855} - /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L446} + /// [google.cloud.bigquery.analyticshub.v1.CreateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L904} + /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L468} /// // clang-format on StatusOr CreateListing( @@ -702,8 +702,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L446} - /// [google.cloud.bigquery.analyticshub.v1.UpdateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L877} + /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L468} + /// [google.cloud.bigquery.analyticshub.v1.UpdateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L926} /// // clang-format on StatusOr UpdateListing( @@ -733,8 +733,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L446} - /// [google.cloud.bigquery.analyticshub.v1.UpdateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L877} + /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L468} + /// [google.cloud.bigquery.analyticshub.v1.UpdateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L926} /// // clang-format on StatusOr UpdateListing( @@ -759,7 +759,7 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DeleteListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L889} + /// [google.cloud.bigquery.analyticshub.v1.DeleteListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L938} /// // clang-format on Status DeleteListing(std::string const& name, Options opts = {}); @@ -785,7 +785,7 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DeleteListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L889} + /// [google.cloud.bigquery.analyticshub.v1.DeleteListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L938} /// // clang-format on Status DeleteListing( @@ -817,8 +817,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L901} - /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L919} + /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L950} + /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L969} /// // clang-format on StatusOr @@ -852,8 +852,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L901} - /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L919} + /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L950} + /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L969} /// // clang-format on StatusOr @@ -889,8 +889,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.SubscribeDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L925} - /// [google.cloud.bigquery.analyticshub.v1.SubscribeDataExchangeResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L953} + /// [google.cloud.bigquery.analyticshub.v1.SubscribeDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L975} + /// [google.cloud.bigquery.analyticshub.v1.SubscribeDataExchangeResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1003} /// // clang-format on future @@ -1157,8 +1157,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.GetSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L977} - /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L622} + /// [google.cloud.bigquery.analyticshub.v1.GetSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1027} + /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L671} /// // clang-format on StatusOr @@ -1195,8 +1195,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.ListSubscriptionsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L989} - /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L622} + /// [google.cloud.bigquery.analyticshub.v1.ListSubscriptionsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1039} + /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L671} /// // clang-format on StreamRange @@ -1234,8 +1234,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.ListSubscriptionsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L989} - /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L622} + /// [google.cloud.bigquery.analyticshub.v1.ListSubscriptionsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1039} + /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L671} /// // clang-format on StreamRange @@ -1274,8 +1274,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.ListSharedResourceSubscriptionsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1019} - /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L622} + /// [google.cloud.bigquery.analyticshub.v1.ListSharedResourceSubscriptionsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1083} + /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L671} /// // clang-format on StreamRange @@ -1314,8 +1314,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.ListSharedResourceSubscriptionsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1019} - /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L622} + /// [google.cloud.bigquery.analyticshub.v1.ListSharedResourceSubscriptionsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1083} + /// [google.cloud.bigquery.analyticshub.v1.Subscription]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L671} /// // clang-format on StreamRange @@ -1343,8 +1343,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.RevokeSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1050} - /// [google.cloud.bigquery.analyticshub.v1.RevokeSubscriptionResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1062} + /// [google.cloud.bigquery.analyticshub.v1.RevokeSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1114} + /// [google.cloud.bigquery.analyticshub.v1.RevokeSubscriptionResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1126} /// // clang-format on StatusOr< @@ -1374,8 +1374,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.RevokeSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1050} - /// [google.cloud.bigquery.analyticshub.v1.RevokeSubscriptionResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1062} + /// [google.cloud.bigquery.analyticshub.v1.RevokeSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1114} + /// [google.cloud.bigquery.analyticshub.v1.RevokeSubscriptionResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1126} /// // clang-format on StatusOr< @@ -1410,8 +1410,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DeleteSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1065} - /// [google.cloud.bigquery.analyticshub.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1077} + /// [google.cloud.bigquery.analyticshub.v1.DeleteSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1129} + /// [google.cloud.bigquery.analyticshub.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1141} /// // clang-format on future> @@ -1461,8 +1461,8 @@ class AnalyticsHubServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.analyticshub.v1.DeleteSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1065} - /// [google.cloud.bigquery.analyticshub.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1077} + /// [google.cloud.bigquery.analyticshub.v1.DeleteSubscriptionRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1129} + /// [google.cloud.bigquery.analyticshub.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L1141} /// // clang-format on future> diff --git a/google/cloud/bigquery/migration/v2/migration_client.h b/google/cloud/bigquery/migration/v2/migration_client.h index 72eb4441e5434..00082b2b9a190 100644 --- a/google/cloud/bigquery/migration/v2/migration_client.h +++ b/google/cloud/bigquery/migration/v2/migration_client.h @@ -108,7 +108,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.CreateMigrationWorkflowRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L110} - /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L36} + /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L38} /// // clang-format on StatusOr @@ -142,7 +142,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.CreateMigrationWorkflowRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L110} - /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L36} + /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L38} /// // clang-format on StatusOr @@ -170,7 +170,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.GetMigrationWorkflowRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L126} - /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L36} + /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L38} /// // clang-format on StatusOr @@ -200,7 +200,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.GetMigrationWorkflowRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L126} - /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L36} + /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L38} /// // clang-format on StatusOr @@ -238,7 +238,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.ListMigrationWorkflowsRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L141} - /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L36} + /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L38} /// // clang-format on StreamRange @@ -277,7 +277,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.ListMigrationWorkflowsRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L141} - /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L36} + /// [google.cloud.bigquery.migration.v2.MigrationWorkflow]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L38} /// // clang-format on StreamRange @@ -414,7 +414,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.GetMigrationSubtaskRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L201} - /// [google.cloud.bigquery.migration.v2.MigrationSubtask]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L160} + /// [google.cloud.bigquery.migration.v2.MigrationSubtask]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L191} /// // clang-format on StatusOr @@ -444,7 +444,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.GetMigrationSubtaskRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L201} - /// [google.cloud.bigquery.migration.v2.MigrationSubtask]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L160} + /// [google.cloud.bigquery.migration.v2.MigrationSubtask]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L191} /// // clang-format on StatusOr @@ -482,7 +482,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.ListMigrationSubtasksRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L217} - /// [google.cloud.bigquery.migration.v2.MigrationSubtask]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L160} + /// [google.cloud.bigquery.migration.v2.MigrationSubtask]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L191} /// // clang-format on StreamRange @@ -521,7 +521,7 @@ class MigrationServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.migration.v2.ListMigrationSubtasksRequest]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_service.proto#L217} - /// [google.cloud.bigquery.migration.v2.MigrationSubtask]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L160} + /// [google.cloud.bigquery.migration.v2.MigrationSubtask]: @googleapis_reference_link{google/cloud/bigquery/migration/v2/migration_entities.proto#L191} /// // clang-format on StreamRange diff --git a/google/cloud/bigquerycontrol/v2/dataset_client.h b/google/cloud/bigquerycontrol/v2/dataset_client.h index e3e244a34673d..ab34646227c75 100644 --- a/google/cloud/bigquerycontrol/v2/dataset_client.h +++ b/google/cloud/bigquerycontrol/v2/dataset_client.h @@ -112,8 +112,8 @@ class DatasetServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L206} - /// [google.cloud.bigquery.v2.GetDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L455} + /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L211} + /// [google.cloud.bigquery.v2.GetDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L460} /// // clang-format on StatusOr GetDataset( @@ -143,8 +143,8 @@ class DatasetServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L206} - /// [google.cloud.bigquery.v2.InsertDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L486} + /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L211} + /// [google.cloud.bigquery.v2.InsertDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L491} /// // clang-format on StatusOr InsertDataset( @@ -177,8 +177,8 @@ class DatasetServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L206} - /// [google.cloud.bigquery.v2.UpdateOrPatchDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L495} + /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L211} + /// [google.cloud.bigquery.v2.UpdateOrPatchDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L500} /// // clang-format on StatusOr PatchDataset( @@ -210,8 +210,8 @@ class DatasetServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L206} - /// [google.cloud.bigquery.v2.UpdateOrPatchDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L495} + /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L211} + /// [google.cloud.bigquery.v2.UpdateOrPatchDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L500} /// // clang-format on StatusOr UpdateDataset( @@ -242,7 +242,7 @@ class DatasetServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.DeleteDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L508} + /// [google.cloud.bigquery.v2.DeleteDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L513} /// // clang-format on Status DeleteDataset( @@ -282,8 +282,8 @@ class DatasetServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.ListDatasetsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L521} - /// [google.cloud.bigquery.v2.ListFormatDataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L548} + /// [google.cloud.bigquery.v2.ListDatasetsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L526} + /// [google.cloud.bigquery.v2.ListFormatDataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L553} /// // clang-format on StreamRange ListDatasets( @@ -315,8 +315,8 @@ class DatasetServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L206} - /// [google.cloud.bigquery.v2.UndeleteDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L601} + /// [google.cloud.bigquery.v2.Dataset]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L211} + /// [google.cloud.bigquery.v2.UndeleteDatasetRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/dataset.proto#L606} /// // clang-format on StatusOr UndeleteDataset( diff --git a/google/cloud/bigquerycontrol/v2/job_client.h b/google/cloud/bigquerycontrol/v2/job_client.h index 4537e3a565210..c4e139d3121be 100644 --- a/google/cloud/bigquerycontrol/v2/job_client.h +++ b/google/cloud/bigquerycontrol/v2/job_client.h @@ -111,8 +111,8 @@ class JobServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.CancelJobRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L172} - /// [google.cloud.bigquery.v2.JobCancelResponse]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L191} + /// [google.cloud.bigquery.v2.CancelJobRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L173} + /// [google.cloud.bigquery.v2.JobCancelResponse]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L194} /// // clang-format on StatusOr CancelJob( @@ -144,8 +144,8 @@ class JobServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.GetJobRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L200} - /// [google.cloud.bigquery.v2.Job]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L128} + /// [google.cloud.bigquery.v2.GetJobRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L203} + /// [google.cloud.bigquery.v2.Job]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L129} /// // clang-format on StatusOr GetJob( @@ -185,8 +185,8 @@ class JobServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.InsertJobRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L219} - /// [google.cloud.bigquery.v2.Job]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L128} + /// [google.cloud.bigquery.v2.InsertJobRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L224} + /// [google.cloud.bigquery.v2.Job]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L129} /// // clang-format on StatusOr InsertJob( @@ -215,7 +215,7 @@ class JobServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.DeleteJobRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L228} + /// [google.cloud.bigquery.v2.DeleteJobRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L233} /// // clang-format on Status DeleteJob(google::cloud::bigquery::v2::DeleteJobRequest const& request, @@ -257,8 +257,8 @@ class JobServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.ListFormatJob]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L321} - /// [google.cloud.bigquery.v2.ListJobsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L245} + /// [google.cloud.bigquery.v2.ListFormatJob]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L326} + /// [google.cloud.bigquery.v2.ListJobsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L250} /// // clang-format on StreamRange ListJobs( @@ -287,8 +287,8 @@ class JobServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.GetQueryResultsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L378} - /// [google.cloud.bigquery.v2.GetQueryResultsResponse]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L426} + /// [google.cloud.bigquery.v2.GetQueryResultsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L383} + /// [google.cloud.bigquery.v2.GetQueryResultsResponse]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L433} /// // clang-format on StatusOr @@ -320,8 +320,8 @@ class JobServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.PostQueryRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L488} - /// [google.cloud.bigquery.v2.QueryResponse]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L657} + /// [google.cloud.bigquery.v2.PostQueryRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L495} + /// [google.cloud.bigquery.v2.QueryResponse]: @googleapis_reference_link{google/cloud/bigquery/v2/job.proto#L664} /// // clang-format on StatusOr Query( diff --git a/google/cloud/bigquerycontrol/v2/model_client.h b/google/cloud/bigquerycontrol/v2/model_client.h index 5509512828f08..cf0c02ad2eb39 100644 --- a/google/cloud/bigquerycontrol/v2/model_client.h +++ b/google/cloud/bigquerycontrol/v2/model_client.h @@ -109,7 +109,7 @@ class ModelServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.GetModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L1974} + /// [google.cloud.bigquery.v2.GetModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L1975} /// [google.cloud.bigquery.v2.Model]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L152} /// // clang-format on @@ -140,7 +140,7 @@ class ModelServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.GetModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L1974} + /// [google.cloud.bigquery.v2.GetModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L1975} /// [google.cloud.bigquery.v2.Model]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L152} /// // clang-format on @@ -180,7 +180,7 @@ class ModelServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.ListModelsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L2014} + /// [google.cloud.bigquery.v2.ListModelsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L2015} /// [google.cloud.bigquery.v2.Model]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L152} /// // clang-format on @@ -222,7 +222,7 @@ class ModelServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.ListModelsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L2014} + /// [google.cloud.bigquery.v2.ListModelsRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L2015} /// [google.cloud.bigquery.v2.Model]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L152} /// // clang-format on @@ -254,7 +254,7 @@ class ModelServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.v2.Model]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L152} - /// [google.cloud.bigquery.v2.PatchModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L1985} + /// [google.cloud.bigquery.v2.PatchModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L1986} /// // clang-format on StatusOr PatchModel( @@ -286,7 +286,7 @@ class ModelServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.bigquery.v2.Model]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L152} - /// [google.cloud.bigquery.v2.PatchModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L1985} + /// [google.cloud.bigquery.v2.PatchModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L1986} /// // clang-format on StatusOr PatchModel( @@ -311,7 +311,7 @@ class ModelServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.DeleteModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L2002} + /// [google.cloud.bigquery.v2.DeleteModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L2003} /// // clang-format on Status DeleteModel(std::string const& project_id, @@ -339,7 +339,7 @@ class ModelServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.bigquery.v2.DeleteModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L2002} + /// [google.cloud.bigquery.v2.DeleteModelRequest]: @googleapis_reference_link{google/cloud/bigquery/v2/model.proto#L2003} /// // clang-format on Status DeleteModel( diff --git a/google/cloud/bigtable/internal/bigtable_auth_decorator.cc b/google/cloud/bigtable/internal/bigtable_auth_decorator.cc index 5710a7b8baf92..3e0fec6b26edc 100644 --- a/google/cloud/bigtable/internal/bigtable_auth_decorator.cc +++ b/google/cloud/bigtable/internal/bigtable_auth_decorator.cc @@ -102,6 +102,18 @@ BigtableAuth::ReadModifyWriteRow( return child_->ReadModifyWriteRow(context, options, request); } +std::unique_ptr> +BigtableAuth::ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) { + using ErrorStream = ::google::cloud::internal::StreamingReadRpcError< + google::bigtable::v2::ExecuteQueryResponse>; + auto status = auth_->ConfigureContext(*context); + if (!status.ok()) return std::make_unique(std::move(status)); + return child_->ExecuteQuery(std::move(context), options, request); +} + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> BigtableAuth::AsyncReadRows( diff --git a/google/cloud/bigtable/internal/bigtable_auth_decorator.h b/google/cloud/bigtable/internal/bigtable_auth_decorator.h index 455b7ce6998d2..b8244f1ee95da 100644 --- a/google/cloud/bigtable/internal/bigtable_auth_decorator.h +++ b/google/cloud/bigtable/internal/bigtable_auth_decorator.h @@ -71,6 +71,12 @@ class BigtableAuth : public BigtableStub { grpc::ClientContext& context, Options const& options, google::bigtable::v2::ReadModifyWriteRowRequest const& request) override; + std::unique_ptr> + ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) override; + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> AsyncReadRows(google::cloud::CompletionQueue const& cq, diff --git a/google/cloud/bigtable/internal/bigtable_logging_decorator.cc b/google/cloud/bigtable/internal/bigtable_logging_decorator.cc index f19eb8055efa0..252517b9f7d0c 100644 --- a/google/cloud/bigtable/internal/bigtable_logging_decorator.cc +++ b/google/cloud/bigtable/internal/bigtable_logging_decorator.cc @@ -157,6 +157,31 @@ BigtableLogging::ReadModifyWriteRow( context, options, request, __func__, tracing_options_); } +std::unique_ptr> +BigtableLogging::ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](std::shared_ptr context, + Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) + -> std::unique_ptr> { + auto stream = + child_->ExecuteQuery(std::move(context), options, request); + if (stream_logging_) { + stream = + std::make_unique>( + std::move(stream), tracing_options_, + google::cloud::internal::RequestIdForLogging()); + } + return stream; + }, + std::move(context), options, request, __func__, tracing_options_); +} + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> BigtableLogging::AsyncReadRows( diff --git a/google/cloud/bigtable/internal/bigtable_logging_decorator.h b/google/cloud/bigtable/internal/bigtable_logging_decorator.h index 9b49f0f8b070f..9f621a430b64d 100644 --- a/google/cloud/bigtable/internal/bigtable_logging_decorator.h +++ b/google/cloud/bigtable/internal/bigtable_logging_decorator.h @@ -71,6 +71,12 @@ class BigtableLogging : public BigtableStub { grpc::ClientContext& context, Options const& options, google::bigtable::v2::ReadModifyWriteRowRequest const& request) override; + std::unique_ptr> + ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) override; + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> AsyncReadRows(google::cloud::CompletionQueue const& cq, diff --git a/google/cloud/bigtable/internal/bigtable_metadata_decorator.cc b/google/cloud/bigtable/internal/bigtable_metadata_decorator.cc index ab8ef2920c565..a15d11e6cbb65 100644 --- a/google/cloud/bigtable/internal/bigtable_metadata_decorator.cc +++ b/google/cloud/bigtable/internal/bigtable_metadata_decorator.cc @@ -373,6 +373,40 @@ BigtableMetadata::ReadModifyWriteRow( return child_->ReadModifyWriteRow(context, options, request); } +std::unique_ptr> +BigtableMetadata::ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) { + std::vector params; + params.reserve(2); + + static auto* name_matcher = [] { + return new google::cloud::internal::RoutingMatcher< + google::bigtable::v2::ExecuteQueryRequest>{ + "name=", + { + {[](google::bigtable::v2::ExecuteQueryRequest const& request) + -> std::string const& { return request.instance_name(); }, + std::regex{"(projects/[^/]+/instances/[^/]+)", + std::regex::optimize}}, + }}; + }(); + name_matcher->AppendParam(request, params); + + if (!request.app_profile_id().empty()) { + params.push_back(absl::StrCat( + "app_profile_id=", internal::UrlEncode(request.app_profile_id()))); + } + + if (params.empty()) { + SetMetadata(*context, options); + } else { + SetMetadata(*context, options, absl::StrJoin(params, "&")); + } + return child_->ExecuteQuery(std::move(context), options, request); +} + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> BigtableMetadata::AsyncReadRows( diff --git a/google/cloud/bigtable/internal/bigtable_metadata_decorator.h b/google/cloud/bigtable/internal/bigtable_metadata_decorator.h index db18697d8c5ff..2bdca35c2274e 100644 --- a/google/cloud/bigtable/internal/bigtable_metadata_decorator.h +++ b/google/cloud/bigtable/internal/bigtable_metadata_decorator.h @@ -71,6 +71,12 @@ class BigtableMetadata : public BigtableStub { grpc::ClientContext& context, Options const& options, google::bigtable::v2::ReadModifyWriteRowRequest const& request) override; + std::unique_ptr> + ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) override; + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> AsyncReadRows(google::cloud::CompletionQueue const& cq, diff --git a/google/cloud/bigtable/internal/bigtable_round_robin_decorator.cc b/google/cloud/bigtable/internal/bigtable_round_robin_decorator.cc index ce7ad8719c16e..a686b6e7dcc05 100644 --- a/google/cloud/bigtable/internal/bigtable_round_robin_decorator.cc +++ b/google/cloud/bigtable/internal/bigtable_round_robin_decorator.cc @@ -78,6 +78,14 @@ BigtableRoundRobin::ReadModifyWriteRow( return Child()->ReadModifyWriteRow(context, options, request); } +std::unique_ptr> +BigtableRoundRobin::ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) { + return Child()->ExecuteQuery(std::move(context), options, request); +} + std::unique_ptr> BigtableRoundRobin::AsyncReadRows( diff --git a/google/cloud/bigtable/internal/bigtable_round_robin_decorator.h b/google/cloud/bigtable/internal/bigtable_round_robin_decorator.h index e9ee4868820ba..70c8c3c1f1ab4 100644 --- a/google/cloud/bigtable/internal/bigtable_round_robin_decorator.h +++ b/google/cloud/bigtable/internal/bigtable_round_robin_decorator.h @@ -69,6 +69,12 @@ class BigtableRoundRobin : public BigtableStub { grpc::ClientContext& context, Options const& options, google::bigtable::v2::ReadModifyWriteRowRequest const& request) override; + std::unique_ptr> + ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) override; + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> AsyncReadRows(google::cloud::CompletionQueue const& cq, diff --git a/google/cloud/bigtable/internal/bigtable_stub.cc b/google/cloud/bigtable/internal/bigtable_stub.cc index 1fd9537387d2c..90d69619199e8 100644 --- a/google/cloud/bigtable/internal/bigtable_stub.cc +++ b/google/cloud/bigtable/internal/bigtable_stub.cc @@ -112,6 +112,17 @@ DefaultBigtableStub::ReadModifyWriteRow( return response; } +std::unique_ptr> +DefaultBigtableStub::ExecuteQuery( + std::shared_ptr context, Options const&, + google::bigtable::v2::ExecuteQueryRequest const& request) { + auto stream = grpc_stub_->ExecuteQuery(context.get(), request); + return std::make_unique>(std::move(context), + std::move(stream)); +} + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> DefaultBigtableStub::AsyncReadRows( diff --git a/google/cloud/bigtable/internal/bigtable_stub.h b/google/cloud/bigtable/internal/bigtable_stub.h index 7bed27a339c2b..bc5ea0709e712 100644 --- a/google/cloud/bigtable/internal/bigtable_stub.h +++ b/google/cloud/bigtable/internal/bigtable_stub.h @@ -74,6 +74,12 @@ class BigtableStub { grpc::ClientContext& context, Options const& options, google::bigtable::v2::ReadModifyWriteRowRequest const& request) = 0; + virtual std::unique_ptr> + ExecuteQuery(std::shared_ptr context, + Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) = 0; + virtual std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> AsyncReadRows(google::cloud::CompletionQueue const& cq, @@ -156,6 +162,12 @@ class DefaultBigtableStub : public BigtableStub { grpc::ClientContext& context, Options const& options, google::bigtable::v2::ReadModifyWriteRowRequest const& request) override; + std::unique_ptr> + ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) override; + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> AsyncReadRows(google::cloud::CompletionQueue const& cq, diff --git a/google/cloud/bigtable/internal/bigtable_tracing_stub.cc b/google/cloud/bigtable/internal/bigtable_tracing_stub.cc index 32c01cd6a9f6e..bcb157896c1b0 100644 --- a/google/cloud/bigtable/internal/bigtable_tracing_stub.cc +++ b/google/cloud/bigtable/internal/bigtable_tracing_stub.cc @@ -124,6 +124,21 @@ BigtableTracingStub::ReadModifyWriteRow( context, *span, child_->ReadModifyWriteRow(context, options, request)); } +std::unique_ptr> +BigtableTracingStub::ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.bigtable.v2.Bigtable", "ExecuteQuery"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(*context, *propagator_); + auto stream = child_->ExecuteQuery(context, options, request); + return std::make_unique>( + std::move(context), std::move(stream), std::move(span)); +} + std::unique_ptr< internal::AsyncStreamingReadRpc> BigtableTracingStub::AsyncReadRows( diff --git a/google/cloud/bigtable/internal/bigtable_tracing_stub.h b/google/cloud/bigtable/internal/bigtable_tracing_stub.h index d9bf0b0dbcb7e..e7635adf3156a 100644 --- a/google/cloud/bigtable/internal/bigtable_tracing_stub.h +++ b/google/cloud/bigtable/internal/bigtable_tracing_stub.h @@ -70,6 +70,12 @@ class BigtableTracingStub : public BigtableStub { grpc::ClientContext& context, Options const& options, google::bigtable::v2::ReadModifyWriteRowRequest const& request) override; + std::unique_ptr> + ExecuteQuery( + std::shared_ptr context, Options const& options, + google::bigtable::v2::ExecuteQueryRequest const& request) override; + std::unique_ptr<::google::cloud::internal::AsyncStreamingReadRpc< google::bigtable::v2::ReadRowsResponse>> AsyncReadRows(google::cloud::CompletionQueue const& cq, diff --git a/google/cloud/confidentialcomputing/v1/confidential_computing_client.h b/google/cloud/confidentialcomputing/v1/confidential_computing_client.h index 244ea6d65be24..fca38669b28cc 100644 --- a/google/cloud/confidentialcomputing/v1/confidential_computing_client.h +++ b/google/cloud/confidentialcomputing/v1/confidential_computing_client.h @@ -174,7 +174,7 @@ class ConfidentialComputingClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.confidentialcomputing.v1.VerifyAttestationRequest]: @googleapis_reference_link{google/cloud/confidentialcomputing/v1/service.proto#L135} - /// [google.cloud.confidentialcomputing.v1.VerifyAttestationResponse]: @googleapis_reference_link{google/cloud/confidentialcomputing/v1/service.proto#L165} + /// [google.cloud.confidentialcomputing.v1.VerifyAttestationResponse]: @googleapis_reference_link{google/cloud/confidentialcomputing/v1/service.proto#L211} /// // clang-format on StatusOr diff --git a/google/cloud/container/v1/cluster_manager_client.h b/google/cloud/container/v1/cluster_manager_client.h index c900d38802c16..045c5b3e1a076 100644 --- a/google/cloud/container/v1/cluster_manager_client.h +++ b/google/cloud/container/v1/cluster_manager_client.h @@ -1100,8 +1100,8 @@ class ClusterManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.container.v1.GetJSONWebKeysRequest]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4597} - /// [google.container.v1.GetJSONWebKeysResponse]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4634} + /// [google.container.v1.GetJSONWebKeysRequest]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4598} + /// [google.container.v1.GetJSONWebKeysResponse]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4635} /// // clang-format on StatusOr GetJSONWebKeys( @@ -1887,8 +1887,8 @@ class ClusterManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.container.v1.ListUsableSubnetworksRequest]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4910} - /// [google.container.v1.UsableSubnetwork]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4983} + /// [google.container.v1.ListUsableSubnetworksRequest]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4911} + /// [google.container.v1.UsableSubnetwork]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4984} /// // clang-format on StreamRange ListUsableSubnetworks( @@ -1919,8 +1919,8 @@ class ClusterManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.container.v1.CheckAutopilotCompatibilityRequest]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4642} - /// [google.container.v1.CheckAutopilotCompatibilityResponse]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4690} + /// [google.container.v1.CheckAutopilotCompatibilityRequest]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4643} + /// [google.container.v1.CheckAutopilotCompatibilityResponse]: @googleapis_reference_link{google/container/v1/cluster_service.proto#L4691} /// // clang-format on StatusOr diff --git a/google/cloud/dataplex/v1/data_scan_client.h b/google/cloud/dataplex/v1/data_scan_client.h index a3c29dfe2c6ca..f1a9c80860b72 100644 --- a/google/cloud/dataplex/v1/data_scan_client.h +++ b/google/cloud/dataplex/v1/data_scan_client.h @@ -674,7 +674,7 @@ class DataScanServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.dataplex.v1.DataScanJob]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L525} + /// [google.cloud.dataplex.v1.DataScanJob]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L529} /// [google.cloud.dataplex.v1.GetDataScanJobRequest]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L304} /// // clang-format on @@ -704,7 +704,7 @@ class DataScanServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.dataplex.v1.DataScanJob]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L525} + /// [google.cloud.dataplex.v1.DataScanJob]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L529} /// [google.cloud.dataplex.v1.GetDataScanJobRequest]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L304} /// // clang-format on @@ -742,7 +742,7 @@ class DataScanServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.dataplex.v1.DataScanJob]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L525} + /// [google.cloud.dataplex.v1.DataScanJob]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L529} /// [google.cloud.dataplex.v1.ListDataScanJobsRequest]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L333} /// // clang-format on @@ -781,7 +781,7 @@ class DataScanServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.dataplex.v1.DataScanJob]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L525} + /// [google.cloud.dataplex.v1.DataScanJob]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L529} /// [google.cloud.dataplex.v1.ListDataScanJobsRequest]: @googleapis_reference_link{google/cloud/dataplex/v1/datascans.proto#L333} /// // clang-format on diff --git a/google/cloud/discoveryengine/v1/completion_client.cc b/google/cloud/discoveryengine/v1/completion_client.cc index f5746e6c79285..0e42edf63deab 100644 --- a/google/cloud/discoveryengine/v1/completion_client.cc +++ b/google/cloud/discoveryengine/v1/completion_client.cc @@ -102,6 +102,66 @@ CompletionServiceClient::PurgeSuggestionDenyListEntries( operation); } +future> +CompletionServiceClient::ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ImportCompletionSuggestions(request); +} + +StatusOr +CompletionServiceClient::ImportCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ImportCompletionSuggestions(ExperimentalTag{}, + NoAwaitTag{}, request); +} + +future> +CompletionServiceClient::ImportCompletionSuggestions( + ExperimentalTag, google::longrunning::Operation const& operation, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ImportCompletionSuggestions(ExperimentalTag{}, operation); +} + +future> +CompletionServiceClient::PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->PurgeCompletionSuggestions(request); +} + +StatusOr +CompletionServiceClient::PurgeCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->PurgeCompletionSuggestions(ExperimentalTag{}, + NoAwaitTag{}, request); +} + +future> +CompletionServiceClient::PurgeCompletionSuggestions( + ExperimentalTag, google::longrunning::Operation const& operation, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->PurgeCompletionSuggestions(ExperimentalTag{}, operation); +} + GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END } // namespace discoveryengine_v1 } // namespace cloud diff --git a/google/cloud/discoveryengine/v1/completion_client.h b/google/cloud/discoveryengine/v1/completion_client.h index 9290d6d4e9b58..9fc8015b283c5 100644 --- a/google/cloud/discoveryengine/v1/completion_client.h +++ b/google/cloud/discoveryengine/v1/completion_client.h @@ -112,8 +112,8 @@ class CompletionServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.CompleteQueryRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/completion_service.proto#L94} - /// [google.cloud.discoveryengine.v1.CompleteQueryResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/completion_service.proto#L154} + /// [google.cloud.discoveryengine.v1.CompleteQueryRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/completion_service.proto#L132} + /// [google.cloud.discoveryengine.v1.CompleteQueryResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/completion_service.proto#L192} /// // clang-format on StatusOr @@ -153,8 +153,8 @@ class CompletionServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.ImportSuggestionDenyListEntriesRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L606} - /// [google.cloud.discoveryengine.v1.ImportSuggestionDenyListEntriesResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L643} + /// [google.cloud.discoveryengine.v1.ImportSuggestionDenyListEntriesRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L641} + /// [google.cloud.discoveryengine.v1.ImportSuggestionDenyListEntriesResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L678} /// [google.cloud.discoveryengine.v1.SuggestionDenyListEntry]: @googleapis_reference_link{google/cloud/discoveryengine/v1/completion.proto#L32} /// // clang-format on @@ -273,6 +273,158 @@ class CompletionServiceClient { ExperimentalTag, google::longrunning::Operation const& operation, Options opts = {}); + // clang-format off + /// + /// Imports + /// [CompletionSuggestion][google.cloud.discoveryengine.v1.CompletionSuggestion]s + /// for a DataStore. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.discoveryengine.v1.ImportCompletionSuggestionsRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return A [`future`] that becomes satisfied when the LRO + /// ([Long Running Operation]) completes or the polling policy in effect + /// for this call is exhausted. The future is satisfied with an error if + /// the LRO completes with an error or the polling policy is exhausted. + /// In this case the [`StatusOr`] returned by the future contains the + /// error. If the LRO completes successfully the value of the future + /// contains the LRO's result. For this RPC the result is a + /// [google.cloud.discoveryengine.v1.ImportCompletionSuggestionsResponse] proto message. + /// The C++ class representing this message is created by Protobuf, using + /// the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [Long Running Operation]: https://google.aip.dev/151 + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.discoveryengine.v1.CompletionSuggestion]: @googleapis_reference_link{google/cloud/discoveryengine/v1/completion.proto#L55} + /// [google.cloud.discoveryengine.v1.ImportCompletionSuggestionsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L704} + /// [google.cloud.discoveryengine.v1.ImportCompletionSuggestionsResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L744} + /// + // clang-format on + future> + ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief ImportCompletionSuggestions + /// + /// Specifying the [`NoAwaitTag`] immediately returns the + /// [`google::longrunning::Operation`] that corresponds to the Long Running + /// Operation that has been started. No polling for operation status occurs. + /// + /// [`NoAwaitTag`]: @ref google::cloud::NoAwaitTag + /// + // clang-format on + StatusOr ImportCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief ImportCompletionSuggestions + /// + /// This method accepts a `google::longrunning::Operation` that corresponds + /// to a previously started Long Running Operation (LRO) and polls the status + /// of the LRO in the background. + /// + // clang-format on + future> + ImportCompletionSuggestions(ExperimentalTag, + google::longrunning::Operation const& operation, + Options opts = {}); + + // clang-format off + /// + /// Permanently deletes all + /// [CompletionSuggestion][google.cloud.discoveryengine.v1.CompletionSuggestion]s + /// for a DataStore. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.discoveryengine.v1.PurgeCompletionSuggestionsRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return A [`future`] that becomes satisfied when the LRO + /// ([Long Running Operation]) completes or the polling policy in effect + /// for this call is exhausted. The future is satisfied with an error if + /// the LRO completes with an error or the polling policy is exhausted. + /// In this case the [`StatusOr`] returned by the future contains the + /// error. If the LRO completes successfully the value of the future + /// contains the LRO's result. For this RPC the result is a + /// [google.cloud.discoveryengine.v1.PurgeCompletionSuggestionsResponse] proto message. + /// The C++ class representing this message is created by Protobuf, using + /// the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [Long Running Operation]: https://google.aip.dev/151 + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.discoveryengine.v1.CompletionSuggestion]: @googleapis_reference_link{google/cloud/discoveryengine/v1/completion.proto#L55} + /// [google.cloud.discoveryengine.v1.PurgeCompletionSuggestionsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/purge_config.proto#L132} + /// [google.cloud.discoveryengine.v1.PurgeCompletionSuggestionsResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/purge_config.proto#L147} + /// + // clang-format on + future> + PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief PurgeCompletionSuggestions + /// + /// Specifying the [`NoAwaitTag`] immediately returns the + /// [`google::longrunning::Operation`] that corresponds to the Long Running + /// Operation that has been started. No polling for operation status occurs. + /// + /// [`NoAwaitTag`]: @ref google::cloud::NoAwaitTag + /// + // clang-format on + StatusOr PurgeCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief PurgeCompletionSuggestions + /// + /// This method accepts a `google::longrunning::Operation` that corresponds + /// to a previously started Long Running Operation (LRO) and polls the status + /// of the LRO in the background. + /// + // clang-format on + future> + PurgeCompletionSuggestions(ExperimentalTag, + google::longrunning::Operation const& operation, + Options opts = {}); + private: std::shared_ptr connection_; Options options_; diff --git a/google/cloud/discoveryengine/v1/completion_connection.cc b/google/cloud/discoveryengine/v1/completion_connection.cc index 33a8e52cdc97e..98ac19732b556 100644 --- a/google/cloud/discoveryengine/v1/completion_connection.cc +++ b/google/cloud/discoveryengine/v1/completion_connection.cc @@ -103,6 +103,62 @@ CompletionServiceConnection::PurgeSuggestionDenyListEntries( Status(StatusCode::kUnimplemented, "not implemented")); } +future> +CompletionServiceConnection::ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const&) { + return google::cloud::make_ready_future>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +StatusOr +CompletionServiceConnection::ImportCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const&) { + return StatusOr( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +future> +CompletionServiceConnection::ImportCompletionSuggestions( + ExperimentalTag, google::longrunning::Operation const&) { + return google::cloud::make_ready_future>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +future> +CompletionServiceConnection::PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const&) { + return google::cloud::make_ready_future>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +StatusOr +CompletionServiceConnection::PurgeCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const&) { + return StatusOr( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +future> +CompletionServiceConnection::PurgeCompletionSuggestions( + ExperimentalTag, google::longrunning::Operation const&) { + return google::cloud::make_ready_future>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + std::shared_ptr MakeCompletionServiceConnection( Options options) { internal::CheckExpectedOptions> PurgeSuggestionDenyListEntries( ExperimentalTag, google::longrunning::Operation const& operation); + + virtual future> + ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request); + + virtual StatusOr ImportCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request); + + virtual future> + ImportCompletionSuggestions(ExperimentalTag, + google::longrunning::Operation const& operation); + + virtual future> + PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request); + + virtual StatusOr PurgeCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request); + + virtual future> + PurgeCompletionSuggestions(ExperimentalTag, + google::longrunning::Operation const& operation); }; /** diff --git a/google/cloud/discoveryengine/v1/completion_connection_idempotency_policy.cc b/google/cloud/discoveryengine/v1/completion_connection_idempotency_policy.cc index 86b55b16f2ef6..d05119092033b 100644 --- a/google/cloud/discoveryengine/v1/completion_connection_idempotency_policy.cc +++ b/google/cloud/discoveryengine/v1/completion_connection_idempotency_policy.cc @@ -53,6 +53,20 @@ CompletionServiceConnectionIdempotencyPolicy::PurgeSuggestionDenyListEntries( return Idempotency::kNonIdempotent; } +Idempotency +CompletionServiceConnectionIdempotencyPolicy::ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency +CompletionServiceConnectionIdempotencyPolicy::PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const&) { + return Idempotency::kNonIdempotent; +} + std::unique_ptr MakeDefaultCompletionServiceConnectionIdempotencyPolicy() { return std::make_unique(); diff --git a/google/cloud/discoveryengine/v1/completion_connection_idempotency_policy.h b/google/cloud/discoveryengine/v1/completion_connection_idempotency_policy.h index 36314e2b4aba7..11a072d5767dc 100644 --- a/google/cloud/discoveryengine/v1/completion_connection_idempotency_policy.h +++ b/google/cloud/discoveryengine/v1/completion_connection_idempotency_policy.h @@ -47,6 +47,14 @@ class CompletionServiceConnectionIdempotencyPolicy { virtual google::cloud::Idempotency PurgeSuggestionDenyListEntries( google::cloud::discoveryengine::v1:: PurgeSuggestionDenyListEntriesRequest const& request); + + virtual google::cloud::Idempotency ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request); + + virtual google::cloud::Idempotency PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request); }; std::unique_ptr diff --git a/google/cloud/discoveryengine/v1/conversational_search_client.h b/google/cloud/discoveryengine/v1/conversational_search_client.h index 6d15084e7b19e..49c90c7ccc417 100644 --- a/google/cloud/discoveryengine/v1/conversational_search_client.h +++ b/google/cloud/discoveryengine/v1/conversational_search_client.h @@ -519,7 +519,7 @@ class ConversationalSearchServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.discoveryengine.v1.AnswerQueryRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L471} - /// [google.cloud.discoveryengine.v1.AnswerQueryResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L785} + /// [google.cloud.discoveryengine.v1.AnswerQueryResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L820} /// // clang-format on StatusOr AnswerQuery( @@ -546,7 +546,7 @@ class ConversationalSearchServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.discoveryengine.v1.Answer]: @googleapis_reference_link{google/cloud/discoveryengine/v1/answer.proto#L34} - /// [google.cloud.discoveryengine.v1.GetAnswerRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L805} + /// [google.cloud.discoveryengine.v1.GetAnswerRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L840} /// // clang-format on StatusOr GetAnswer( @@ -576,7 +576,7 @@ class ConversationalSearchServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.discoveryengine.v1.Answer]: @googleapis_reference_link{google/cloud/discoveryengine/v1/answer.proto#L34} - /// [google.cloud.discoveryengine.v1.GetAnswerRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L805} + /// [google.cloud.discoveryengine.v1.GetAnswerRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L840} /// // clang-format on StatusOr GetAnswer( @@ -606,7 +606,7 @@ class ConversationalSearchServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.CreateSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L817} + /// [google.cloud.discoveryengine.v1.CreateSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L852} /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} /// // clang-format on @@ -641,7 +641,7 @@ class ConversationalSearchServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.CreateSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L817} + /// [google.cloud.discoveryengine.v1.CreateSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L852} /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} /// // clang-format on @@ -669,7 +669,7 @@ class ConversationalSearchServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.DeleteSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L847} + /// [google.cloud.discoveryengine.v1.DeleteSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L882} /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} /// // clang-format on @@ -699,7 +699,7 @@ class ConversationalSearchServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.DeleteSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L847} + /// [google.cloud.discoveryengine.v1.DeleteSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L882} /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} /// // clang-format on @@ -738,7 +738,7 @@ class ConversationalSearchServiceClient { /// [`Status`]: @ref google::cloud::Status /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} /// [google.cloud.discoveryengine.v1.Session.name]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L67} - /// [google.cloud.discoveryengine.v1.UpdateSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L832} + /// [google.cloud.discoveryengine.v1.UpdateSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L867} /// // clang-format on StatusOr UpdateSession( @@ -773,7 +773,7 @@ class ConversationalSearchServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} - /// [google.cloud.discoveryengine.v1.UpdateSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L832} + /// [google.cloud.discoveryengine.v1.UpdateSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L867} /// // clang-format on StatusOr UpdateSession( @@ -799,7 +799,7 @@ class ConversationalSearchServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.GetSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L859} + /// [google.cloud.discoveryengine.v1.GetSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L894} /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} /// // clang-format on @@ -829,7 +829,7 @@ class ConversationalSearchServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.GetSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L859} + /// [google.cloud.discoveryengine.v1.GetSessionRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L894} /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} /// // clang-format on @@ -866,7 +866,7 @@ class ConversationalSearchServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.ListSessionsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L871} + /// [google.cloud.discoveryengine.v1.ListSessionsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L906} /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} /// // clang-format on @@ -906,7 +906,7 @@ class ConversationalSearchServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.ListSessionsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L871} + /// [google.cloud.discoveryengine.v1.ListSessionsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/conversational_search_service.proto#L906} /// [google.cloud.discoveryengine.v1.Session]: @googleapis_reference_link{google/cloud/discoveryengine/v1/session.proto#L33} /// // clang-format on diff --git a/google/cloud/discoveryengine/v1/document_client.h b/google/cloud/discoveryengine/v1/document_client.h index db45c78a2eae1..43d9594c4f361 100644 --- a/google/cloud/discoveryengine/v1/document_client.h +++ b/google/cloud/discoveryengine/v1/document_client.h @@ -485,8 +485,8 @@ class DocumentServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.discoveryengine.v1.Document]: @googleapis_reference_link{google/cloud/discoveryengine/v1/document.proto#L35} - /// [google.cloud.discoveryengine.v1.ImportDocumentsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L455} - /// [google.cloud.discoveryengine.v1.ImportDocumentsResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L595} + /// [google.cloud.discoveryengine.v1.ImportDocumentsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L487} + /// [google.cloud.discoveryengine.v1.ImportDocumentsResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L630} /// // clang-format on future> diff --git a/google/cloud/discoveryengine/v1/internal/completion_auth_decorator.cc b/google/cloud/discoveryengine/v1/internal/completion_auth_decorator.cc index a813f539307af..f2ff201244e1d 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_auth_decorator.cc +++ b/google/cloud/discoveryengine/v1/internal/completion_auth_decorator.cc @@ -102,6 +102,68 @@ CompletionServiceAuth::PurgeSuggestionDenyListEntries( return child_->PurgeSuggestionDenyListEntries(context, options, request); } +future> +CompletionServiceAuth::AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + using ReturnType = StatusOr; + return auth_->AsyncConfigureContext(std::move(context)) + .then([cq, child = child_, options = std::move(options), + request](future>> + f) mutable { + auto context = f.get(); + if (!context) { + return make_ready_future(ReturnType(std::move(context).status())); + } + return child->AsyncImportCompletionSuggestions( + cq, *std::move(context), std::move(options), request); + }); +} + +StatusOr +CompletionServiceAuth::ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ImportCompletionSuggestions(context, options, request); +} + +future> +CompletionServiceAuth::AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + using ReturnType = StatusOr; + return auth_->AsyncConfigureContext(std::move(context)) + .then([cq, child = child_, options = std::move(options), + request](future>> + f) mutable { + auto context = f.get(); + if (!context) { + return make_ready_future(ReturnType(std::move(context).status())); + } + return child->AsyncPurgeCompletionSuggestions( + cq, *std::move(context), std::move(options), request); + }); +} + +StatusOr +CompletionServiceAuth::PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->PurgeCompletionSuggestions(context, options, request); +} + future> CompletionServiceAuth::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/discoveryengine/v1/internal/completion_auth_decorator.h b/google/cloud/discoveryengine/v1/internal/completion_auth_decorator.h index c3845fe9b5c13..b80850a2adf70 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_auth_decorator.h +++ b/google/cloud/discoveryengine/v1/internal/completion_auth_decorator.h @@ -70,6 +70,32 @@ class CompletionServiceAuth : public CompletionServiceStub { google::cloud::discoveryengine::v1:: PurgeSuggestionDenyListEntriesRequest const& request) override; + future> + AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + StatusOr ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + future> + AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + + StatusOr PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/discoveryengine/v1/internal/completion_connection_impl.cc b/google/cloud/discoveryengine/v1/internal/completion_connection_impl.cc index 952bba6bf7769..29b32e879fec6 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_connection_impl.cc +++ b/google/cloud/discoveryengine/v1/internal/completion_connection_impl.cc @@ -293,6 +293,204 @@ CompletionServiceConnectionImpl::PurgeSuggestionDenyListEntries( polling_policy(*current), __func__); } +future> +CompletionServiceConnectionImpl::ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + auto request_copy = request; + auto const idempotent = + idempotency_policy(*current)->ImportCompletionSuggestions(request_copy); + return google::cloud::internal::AsyncLongRunningOperation< + google::cloud::discoveryengine::v1::ImportCompletionSuggestionsResponse>( + background_->cq(), current, std::move(request_copy), + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + return stub->AsyncImportCompletionSuggestions( + cq, std::move(context), std::move(options), request); + }, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultResponse< + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsResponse>, + retry_policy(*current), backoff_policy(*current), idempotent, + polling_policy(*current), __func__); +} + +StatusOr +CompletionServiceConnectionImpl::ImportCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->ImportCompletionSuggestions(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + return stub_->ImportCompletionSuggestions(context, options, request); + }, + *current, request, __func__); +} + +future> +CompletionServiceConnectionImpl::ImportCompletionSuggestions( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto current = google::cloud::internal::SaveCurrentOptions(); + if (!operation.metadata() + .Is()) { + return make_ready_future>( + internal::InvalidArgumentError( + "operation does not correspond to ImportCompletionSuggestions", + GCP_ERROR_INFO().WithMetadata("operation", + operation.metadata().DebugString()))); + } + + return google::cloud::internal::AsyncAwaitLongRunningOperation< + google::cloud::discoveryengine::v1::ImportCompletionSuggestionsResponse>( + background_->cq(), current, operation, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultResponse< + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsResponse>, + polling_policy(*current), __func__); +} + +future> +CompletionServiceConnectionImpl::PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + auto request_copy = request; + auto const idempotent = + idempotency_policy(*current)->PurgeCompletionSuggestions(request_copy); + return google::cloud::internal::AsyncLongRunningOperation< + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsResponse>( + background_->cq(), current, std::move(request_copy), + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) { + return stub->AsyncPurgeCompletionSuggestions( + cq, std::move(context), std::move(options), request); + }, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultResponse< + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsResponse>, + retry_policy(*current), backoff_policy(*current), idempotent, + polling_policy(*current), __func__); +} + +StatusOr +CompletionServiceConnectionImpl::PurgeCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->PurgeCompletionSuggestions(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) { + return stub_->PurgeCompletionSuggestions(context, options, request); + }, + *current, request, __func__); +} + +future> +CompletionServiceConnectionImpl::PurgeCompletionSuggestions( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto current = google::cloud::internal::SaveCurrentOptions(); + if (!operation.metadata() + .Is()) { + return make_ready_future>( + internal::InvalidArgumentError( + "operation does not correspond to PurgeCompletionSuggestions", + GCP_ERROR_INFO().WithMetadata("operation", + operation.metadata().DebugString()))); + } + + return google::cloud::internal::AsyncAwaitLongRunningOperation< + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsResponse>( + background_->cq(), current, operation, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultResponse< + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsResponse>, + polling_policy(*current), __func__); +} + GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END } // namespace discoveryengine_v1_internal } // namespace cloud diff --git a/google/cloud/discoveryengine/v1/internal/completion_connection_impl.h b/google/cloud/discoveryengine/v1/internal/completion_connection_impl.h index d0a66f9585364..471d33d4eb305 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_connection_impl.h +++ b/google/cloud/discoveryengine/v1/internal/completion_connection_impl.h @@ -89,6 +89,40 @@ class CompletionServiceConnectionImpl ExperimentalTag, google::longrunning::Operation const& operation) override; + future> + ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + StatusOr ImportCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + future> + ImportCompletionSuggestions( + ExperimentalTag, + google::longrunning::Operation const& operation) override; + + future> + PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + + StatusOr PurgeCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + + future> + PurgeCompletionSuggestions( + ExperimentalTag, + google::longrunning::Operation const& operation) override; + private: std::unique_ptr background_; std::shared_ptr stub_; diff --git a/google/cloud/discoveryengine/v1/internal/completion_logging_decorator.cc b/google/cloud/discoveryengine/v1/internal/completion_logging_decorator.cc index 84b19aa3d1256..160d9b043adcc 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_logging_decorator.cc +++ b/google/cloud/discoveryengine/v1/internal/completion_logging_decorator.cc @@ -116,6 +116,74 @@ CompletionServiceLogging::PurgeSuggestionDenyListEntries( context, options, request, __func__, tracing_options_); } +future> +CompletionServiceLogging::AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + return child_->AsyncImportCompletionSuggestions( + cq, std::move(context), std::move(options), request); + }, + cq, std::move(context), std::move(options), request, __func__, + tracing_options_); +} + +StatusOr +CompletionServiceLogging::ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + return child_->ImportCompletionSuggestions(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +future> +CompletionServiceLogging::AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) { + return child_->AsyncPurgeCompletionSuggestions( + cq, std::move(context), std::move(options), request); + }, + cq, std::move(context), std::move(options), request, __func__, + tracing_options_); +} + +StatusOr +CompletionServiceLogging::PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) { + return child_->PurgeCompletionSuggestions(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + future> CompletionServiceLogging::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/discoveryengine/v1/internal/completion_logging_decorator.h b/google/cloud/discoveryengine/v1/internal/completion_logging_decorator.h index 40572dae24d80..351833745fc28 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_logging_decorator.h +++ b/google/cloud/discoveryengine/v1/internal/completion_logging_decorator.h @@ -70,6 +70,32 @@ class CompletionServiceLogging : public CompletionServiceStub { google::cloud::discoveryengine::v1:: PurgeSuggestionDenyListEntriesRequest const& request) override; + future> + AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + StatusOr ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + future> + AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + + StatusOr PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/discoveryengine/v1/internal/completion_metadata_decorator.cc b/google/cloud/discoveryengine/v1/internal/completion_metadata_decorator.cc index 2055a62d06a34..785f9f88ec333 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_metadata_decorator.cc +++ b/google/cloud/discoveryengine/v1/internal/completion_metadata_decorator.cc @@ -98,6 +98,52 @@ CompletionServiceMetadata::PurgeSuggestionDenyListEntries( return child_->PurgeSuggestionDenyListEntries(context, options, request); } +future> +CompletionServiceMetadata::AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + SetMetadata(*context, *options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->AsyncImportCompletionSuggestions(cq, std::move(context), + std::move(options), request); +} + +StatusOr +CompletionServiceMetadata::ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ImportCompletionSuggestions(context, options, request); +} + +future> +CompletionServiceMetadata::AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + SetMetadata(*context, *options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->AsyncPurgeCompletionSuggestions(cq, std::move(context), + std::move(options), request); +} + +StatusOr +CompletionServiceMetadata::PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->PurgeCompletionSuggestions(context, options, request); +} + future> CompletionServiceMetadata::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/discoveryengine/v1/internal/completion_metadata_decorator.h b/google/cloud/discoveryengine/v1/internal/completion_metadata_decorator.h index 263eb0bccd766..a1003f6c1b09d 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_metadata_decorator.h +++ b/google/cloud/discoveryengine/v1/internal/completion_metadata_decorator.h @@ -71,6 +71,32 @@ class CompletionServiceMetadata : public CompletionServiceStub { google::cloud::discoveryengine::v1:: PurgeSuggestionDenyListEntriesRequest const& request) override; + future> + AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + StatusOr ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + future> + AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + + StatusOr PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/discoveryengine/v1/internal/completion_stub.cc b/google/cloud/discoveryengine/v1/internal/completion_stub.cc index c33e40815baaf..56f4b6dca7af1 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_stub.cc +++ b/google/cloud/discoveryengine/v1/internal/completion_stub.cc @@ -113,6 +113,76 @@ DefaultCompletionServiceStub::PurgeSuggestionDenyListEntries( return response; } +future> +DefaultCompletionServiceStub::AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + return internal::MakeUnaryRpcImpl< + google::cloud::discoveryengine::v1::ImportCompletionSuggestionsRequest, + google::longrunning::Operation>( + cq, + [this](grpc::ClientContext* context, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request, + grpc::CompletionQueue* cq) { + return grpc_stub_->AsyncImportCompletionSuggestions(context, request, + cq); + }, + request, std::move(context)); +} + +StatusOr +DefaultCompletionServiceStub::ImportCompletionSuggestions( + grpc::ClientContext& context, Options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + google::longrunning::Operation response; + auto status = + grpc_stub_->ImportCompletionSuggestions(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +future> +DefaultCompletionServiceStub::AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + return internal::MakeUnaryRpcImpl< + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest, + google::longrunning::Operation>( + cq, + [this](grpc::ClientContext* context, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request, + grpc::CompletionQueue* cq) { + return grpc_stub_->AsyncPurgeCompletionSuggestions(context, request, + cq); + }, + request, std::move(context)); +} + +StatusOr +DefaultCompletionServiceStub::PurgeCompletionSuggestions( + grpc::ClientContext& context, Options, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + google::longrunning::Operation response; + auto status = + grpc_stub_->PurgeCompletionSuggestions(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + future> DefaultCompletionServiceStub::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/discoveryengine/v1/internal/completion_stub.h b/google/cloud/discoveryengine/v1/internal/completion_stub.h index a8464e45a20a4..a6cd9fd0f813e 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_stub.h +++ b/google/cloud/discoveryengine/v1/internal/completion_stub.h @@ -71,6 +71,32 @@ class CompletionServiceStub { google::cloud::discoveryengine::v1:: PurgeSuggestionDenyListEntriesRequest const& request) = 0; + virtual future> + AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) = 0; + + virtual StatusOr ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) = 0; + + virtual future> + AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) = 0; + + virtual StatusOr PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) = 0; + virtual future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, @@ -125,6 +151,32 @@ class DefaultCompletionServiceStub : public CompletionServiceStub { google::cloud::discoveryengine::v1:: PurgeSuggestionDenyListEntriesRequest const& request) override; + future> + AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + StatusOr ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + future> + AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + + StatusOr PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/discoveryengine/v1/internal/completion_tracing_connection.cc b/google/cloud/discoveryengine/v1/internal/completion_tracing_connection.cc index 7ce3fd1299ad1..a8282337bdc8a 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_tracing_connection.cc +++ b/google/cloud/discoveryengine/v1/internal/completion_tracing_connection.cc @@ -121,6 +121,84 @@ CompletionServiceTracingConnection::PurgeSuggestionDenyListEntries( child_->PurgeSuggestionDenyListEntries(ExperimentalTag{}, operation)); } +future> +CompletionServiceTracingConnection::ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + auto span = internal::MakeSpan( + "discoveryengine_v1::CompletionServiceConnection::" + "ImportCompletionSuggestions"); + internal::OTelScope scope(span); + return internal::EndSpan(std::move(span), + child_->ImportCompletionSuggestions(request)); +} + +StatusOr +CompletionServiceTracingConnection::ImportCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + auto span = internal::MakeSpan( + "discoveryengine_v1::CompletionServiceConnection::" + "ImportCompletionSuggestions"); + opentelemetry::trace::Scope scope(span); + return internal::EndSpan( + *span, child_->ImportCompletionSuggestions(ExperimentalTag{}, + NoAwaitTag{}, request)); +} + +future> +CompletionServiceTracingConnection::ImportCompletionSuggestions( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto span = internal::MakeSpan( + "discoveryengine_v1::CompletionServiceConnection::" + "ImportCompletionSuggestions"); + internal::OTelScope scope(span); + return internal::EndSpan(std::move(span), child_->ImportCompletionSuggestions( + ExperimentalTag{}, operation)); +} + +future> +CompletionServiceTracingConnection::PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + auto span = internal::MakeSpan( + "discoveryengine_v1::CompletionServiceConnection::" + "PurgeCompletionSuggestions"); + internal::OTelScope scope(span); + return internal::EndSpan(std::move(span), + child_->PurgeCompletionSuggestions(request)); +} + +StatusOr +CompletionServiceTracingConnection::PurgeCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + auto span = internal::MakeSpan( + "discoveryengine_v1::CompletionServiceConnection::" + "PurgeCompletionSuggestions"); + opentelemetry::trace::Scope scope(span); + return internal::EndSpan( + *span, child_->PurgeCompletionSuggestions(ExperimentalTag{}, NoAwaitTag{}, + request)); +} + +future> +CompletionServiceTracingConnection::PurgeCompletionSuggestions( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto span = internal::MakeSpan( + "discoveryengine_v1::CompletionServiceConnection::" + "PurgeCompletionSuggestions"); + internal::OTelScope scope(span); + return internal::EndSpan(std::move(span), child_->PurgeCompletionSuggestions( + ExperimentalTag{}, operation)); +} + #endif // GOOGLE_CLOUD_CPP_HAVE_OPENTELEMETRY std::shared_ptr diff --git a/google/cloud/discoveryengine/v1/internal/completion_tracing_connection.h b/google/cloud/discoveryengine/v1/internal/completion_tracing_connection.h index 3e7f1780c84bd..3ffe0996b380d 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_tracing_connection.h +++ b/google/cloud/discoveryengine/v1/internal/completion_tracing_connection.h @@ -78,6 +78,40 @@ class CompletionServiceTracingConnection ExperimentalTag, google::longrunning::Operation const& operation) override; + future> + ImportCompletionSuggestions( + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + StatusOr ImportCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + future> + ImportCompletionSuggestions( + ExperimentalTag, + google::longrunning::Operation const& operation) override; + + future> + PurgeCompletionSuggestions( + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + + StatusOr PurgeCompletionSuggestions( + ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + + future> + PurgeCompletionSuggestions( + ExperimentalTag, + google::longrunning::Operation const& operation) override; + private: std::shared_ptr child_; }; diff --git a/google/cloud/discoveryengine/v1/internal/completion_tracing_stub.cc b/google/cloud/discoveryengine/v1/internal/completion_tracing_stub.cc index 9d962f76c0ad7..50296020a601d 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_tracing_stub.cc +++ b/google/cloud/discoveryengine/v1/internal/completion_tracing_stub.cc @@ -107,6 +107,70 @@ CompletionServiceTracingStub::PurgeSuggestionDenyListEntries( child_->PurgeSuggestionDenyListEntries(context, options, request)); } +future> +CompletionServiceTracingStub::AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.discoveryengine.v1.CompletionService", + "ImportCompletionSuggestions"); + internal::OTelScope scope(span); + internal::InjectTraceContext(*context, *propagator_); + auto f = child_->AsyncImportCompletionSuggestions( + cq, context, std::move(options), request); + return internal::EndSpan(std::move(context), std::move(span), std::move(f)); +} + +StatusOr +CompletionServiceTracingStub::ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.discoveryengine.v1.CompletionService", + "ImportCompletionSuggestions"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->ImportCompletionSuggestions(context, options, request)); +} + +future> +CompletionServiceTracingStub::AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.discoveryengine.v1.CompletionService", + "PurgeCompletionSuggestions"); + internal::OTelScope scope(span); + internal::InjectTraceContext(*context, *propagator_); + auto f = child_->AsyncPurgeCompletionSuggestions(cq, context, + std::move(options), request); + return internal::EndSpan(std::move(context), std::move(span), std::move(f)); +} + +StatusOr +CompletionServiceTracingStub::PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1::PurgeCompletionSuggestionsRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.discoveryengine.v1.CompletionService", + "PurgeCompletionSuggestions"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->PurgeCompletionSuggestions(context, options, request)); +} + future> CompletionServiceTracingStub::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/discoveryengine/v1/internal/completion_tracing_stub.h b/google/cloud/discoveryengine/v1/internal/completion_tracing_stub.h index fbecde431b8e5..cbb9184ed95e7 100644 --- a/google/cloud/discoveryengine/v1/internal/completion_tracing_stub.h +++ b/google/cloud/discoveryengine/v1/internal/completion_tracing_stub.h @@ -69,6 +69,32 @@ class CompletionServiceTracingStub : public CompletionServiceStub { google::cloud::discoveryengine::v1:: PurgeSuggestionDenyListEntriesRequest const& request) override; + future> + AsyncImportCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + StatusOr ImportCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request) override; + + future> + AsyncPurgeCompletionSuggestions( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + + StatusOr PurgeCompletionSuggestions( + grpc::ClientContext& context, Options options, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/discoveryengine/v1/mocks/mock_completion_connection.h b/google/cloud/discoveryengine/v1/mocks/mock_completion_connection.h index 5921ce9f4bfc5..84ff31a4e9f6f 100644 --- a/google/cloud/discoveryengine/v1/mocks/mock_completion_connection.h +++ b/google/cloud/discoveryengine/v1/mocks/mock_completion_connection.h @@ -102,6 +102,54 @@ class MockCompletionServiceConnection (ExperimentalTag, google::longrunning::Operation const& operation), (override)); + + /// Due to additional overloads for this method + /// `EXPECT_CALL(*mock, ImportCompletionSuggestions)` is now ambiguous. Use + /// `EXPECT_CALL(*mock, ImportCompletionSuggestions(::testing::_))` instead. + MOCK_METHOD(future>, + ImportCompletionSuggestions, + (google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request), + (override)); + + MOCK_METHOD(StatusOr, + ImportCompletionSuggestions, + (ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + ImportCompletionSuggestionsRequest const& request), + (override)); + + MOCK_METHOD(future>, + ImportCompletionSuggestions, + (ExperimentalTag, + google::longrunning::Operation const& operation), + (override)); + + /// Due to additional overloads for this method + /// `EXPECT_CALL(*mock, PurgeCompletionSuggestions)` is now ambiguous. Use + /// `EXPECT_CALL(*mock, PurgeCompletionSuggestions(::testing::_))` instead. + MOCK_METHOD(future>, + PurgeCompletionSuggestions, + (google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request), + (override)); + + MOCK_METHOD(StatusOr, + PurgeCompletionSuggestions, + (ExperimentalTag, NoAwaitTag, + google::cloud::discoveryengine::v1:: + PurgeCompletionSuggestionsRequest const& request), + (override)); + + MOCK_METHOD(future>, + PurgeCompletionSuggestions, + (ExperimentalTag, + google::longrunning::Operation const& operation), + (override)); }; GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END diff --git a/google/cloud/discoveryengine/v1/search_client.h b/google/cloud/discoveryengine/v1/search_client.h index 0edd940bcb5fe..144e1b1d9976b 100644 --- a/google/cloud/discoveryengine/v1/search_client.h +++ b/google/cloud/discoveryengine/v1/search_client.h @@ -118,8 +118,8 @@ class SearchServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.SearchRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/search_service.proto#L62} - /// [google.cloud.discoveryengine.v1.SearchResponse.SearchResult]: @googleapis_reference_link{google/cloud/discoveryengine/v1/search_service.proto#L704} + /// [google.cloud.discoveryengine.v1.SearchRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/search_service.proto#L63} + /// [google.cloud.discoveryengine.v1.SearchResponse.SearchResult]: @googleapis_reference_link{google/cloud/discoveryengine/v1/search_service.proto#L870} /// // clang-format on StreamRange diff --git a/google/cloud/discoveryengine/v1/user_event_client.h b/google/cloud/discoveryengine/v1/user_event_client.h index 2bf143f3a8f91..ed70aeb25666c 100644 --- a/google/cloud/discoveryengine/v1/user_event_client.h +++ b/google/cloud/discoveryengine/v1/user_event_client.h @@ -114,7 +114,7 @@ class UserEventServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.discoveryengine.v1.UserEvent]: @googleapis_reference_link{google/cloud/discoveryengine/v1/user_event.proto#L36} - /// [google.cloud.discoveryengine.v1.WriteUserEventRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/user_event_service.proto#L98} + /// [google.cloud.discoveryengine.v1.WriteUserEventRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/user_event_service.proto#L101} /// // clang-format on StatusOr WriteUserEvent( @@ -149,7 +149,7 @@ class UserEventServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.api.HttpBody]: @googleapis_reference_link{google/api/httpbody.proto#L71} - /// [google.cloud.discoveryengine.v1.CollectUserEventRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/user_event_service.proto#L125} + /// [google.cloud.discoveryengine.v1.CollectUserEventRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/user_event_service.proto#L128} /// // clang-format on StatusOr CollectUserEvent( @@ -193,8 +193,8 @@ class UserEventServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.discoveryengine.v1.ImportUserEventsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L365} - /// [google.cloud.discoveryengine.v1.ImportUserEventsResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L401} + /// [google.cloud.discoveryengine.v1.ImportUserEventsRequest]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L397} + /// [google.cloud.discoveryengine.v1.ImportUserEventsResponse]: @googleapis_reference_link{google/cloud/discoveryengine/v1/import_config.proto#L433} /// // clang-format on future> diff --git a/google/cloud/dlp/v2/dlp_client.cc b/google/cloud/dlp/v2/dlp_client.cc index c57f7775cf174..e4631c59377ec 100644 --- a/google/cloud/dlp/v2/dlp_client.cc +++ b/google/cloud/dlp/v2/dlp_client.cc @@ -688,6 +688,55 @@ DlpServiceClient::GetProjectDataProfile( return connection_->GetProjectDataProfile(request); } +StreamRange +DlpServiceClient::ListFileStoreDataProfiles(std::string const& parent, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request; + request.set_parent(parent); + return connection_->ListFileStoreDataProfiles(request); +} + +StreamRange +DlpServiceClient::ListFileStoreDataProfiles( + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ListFileStoreDataProfiles(std::move(request)); +} + +StatusOr +DlpServiceClient::GetFileStoreDataProfile(std::string const& name, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::privacy::dlp::v2::GetFileStoreDataProfileRequest request; + request.set_name(name); + return connection_->GetFileStoreDataProfile(request); +} + +StatusOr +DlpServiceClient::GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->GetFileStoreDataProfile(request); +} + +Status DlpServiceClient::DeleteFileStoreDataProfile(std::string const& name, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest request; + request.set_name(name); + return connection_->DeleteFileStoreDataProfile(request); +} + +Status DlpServiceClient::DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->DeleteFileStoreDataProfile(request); +} + StatusOr DlpServiceClient::GetTableDataProfile(std::string const& name, Options opts) { internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); diff --git a/google/cloud/dlp/v2/dlp_client.h b/google/cloud/dlp/v2/dlp_client.h index bbe3ab42f384e..7851922b2db4e 100644 --- a/google/cloud/dlp/v2/dlp_client.h +++ b/google/cloud/dlp/v2/dlp_client.h @@ -125,8 +125,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.InspectContentRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1721} - /// [google.privacy.dlp.v2.InspectContentResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1761} + /// [google.privacy.dlp.v2.InspectContentRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1768} + /// [google.privacy.dlp.v2.InspectContentResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1808} /// // clang-format on StatusOr InspectContent( @@ -164,8 +164,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.RedactImageRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1495} - /// [google.privacy.dlp.v2.RedactImageResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1566} + /// [google.privacy.dlp.v2.RedactImageRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1542} + /// [google.privacy.dlp.v2.RedactImageResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1613} /// // clang-format on StatusOr RedactImage( @@ -203,8 +203,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeidentifyContentRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1580} - /// [google.privacy.dlp.v2.DeidentifyContentResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1640} + /// [google.privacy.dlp.v2.DeidentifyContentRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1627} + /// [google.privacy.dlp.v2.DeidentifyContentResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1687} /// // clang-format on StatusOr @@ -238,8 +238,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ReidentifyContentRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1649} - /// [google.privacy.dlp.v2.ReidentifyContentResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1712} + /// [google.privacy.dlp.v2.ReidentifyContentRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1696} + /// [google.privacy.dlp.v2.ReidentifyContentResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L1759} /// // clang-format on StatusOr @@ -272,8 +272,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ListInfoTypesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L2200} - /// [google.privacy.dlp.v2.ListInfoTypesResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L2222} + /// [google.privacy.dlp.v2.ListInfoTypesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L2256} + /// [google.privacy.dlp.v2.ListInfoTypesResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L2278} /// // clang-format on StatusOr ListInfoTypes( @@ -305,8 +305,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ListInfoTypesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L2200} - /// [google.privacy.dlp.v2.ListInfoTypesResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L2222} + /// [google.privacy.dlp.v2.ListInfoTypesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L2256} + /// [google.privacy.dlp.v2.ListInfoTypesResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L2278} /// // clang-format on StatusOr ListInfoTypes( @@ -327,13 +327,13 @@ class DlpServiceClient { /// (project or organization) and whether you have [specified a processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID - /// + Organizations scope, location specified:
+ /// + Organizations scope, location specified: /// `organizations/`ORG_ID`/locations/`LOCATION_ID - /// + Organizations scope, no location specified (defaults to global):
+ /// + Organizations scope, no location specified (defaults to global): /// `organizations/`ORG_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -355,8 +355,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4204} - /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3861} + /// [google.privacy.dlp.v2.CreateInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4276} + /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3918} /// // clang-format on StatusOr CreateInspectTemplate( @@ -391,8 +391,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4204} - /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3861} + /// [google.privacy.dlp.v2.CreateInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4276} + /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3918} /// // clang-format on StatusOr CreateInspectTemplate( @@ -424,8 +424,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3861} - /// [google.privacy.dlp.v2.UpdateInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4246} + /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3918} + /// [google.privacy.dlp.v2.UpdateInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4318} /// // clang-format on StatusOr UpdateInspectTemplate( @@ -459,8 +459,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3861} - /// [google.privacy.dlp.v2.UpdateInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4246} + /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3918} + /// [google.privacy.dlp.v2.UpdateInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4318} /// // clang-format on StatusOr UpdateInspectTemplate( @@ -490,8 +490,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4265} - /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3861} + /// [google.privacy.dlp.v2.GetInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4337} + /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3918} /// // clang-format on StatusOr GetInspectTemplate( @@ -523,8 +523,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4265} - /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3861} + /// [google.privacy.dlp.v2.GetInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4337} + /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3918} /// // clang-format on StatusOr GetInspectTemplate( @@ -544,13 +544,13 @@ class DlpServiceClient { /// (project or organization) and whether you have [specified a processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID - /// + Organizations scope, location specified:
+ /// + Organizations scope, location specified: /// `organizations/`ORG_ID`/locations/`LOCATION_ID - /// + Organizations scope, no location specified (defaults to global):
+ /// + Organizations scope, no location specified (defaults to global): /// `organizations/`ORG_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -580,8 +580,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3861} - /// [google.privacy.dlp.v2.ListInspectTemplatesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4278} + /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3918} + /// [google.privacy.dlp.v2.ListInspectTemplatesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4350} /// // clang-format on StreamRange ListInspectTemplates( @@ -622,8 +622,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3861} - /// [google.privacy.dlp.v2.ListInspectTemplatesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4278} + /// [google.privacy.dlp.v2.InspectTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3918} + /// [google.privacy.dlp.v2.ListInspectTemplatesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4350} /// // clang-format on StreamRange ListInspectTemplates( @@ -651,7 +651,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4344} + /// [google.privacy.dlp.v2.DeleteInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4416} /// // clang-format on Status DeleteInspectTemplate(std::string const& name, Options opts = {}); @@ -680,7 +680,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4344} + /// [google.privacy.dlp.v2.DeleteInspectTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4416} /// // clang-format on Status DeleteInspectTemplate( @@ -701,13 +701,13 @@ class DlpServiceClient { /// (project or organization) and whether you have [specified a processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID - /// + Organizations scope, location specified:
+ /// + Organizations scope, location specified: /// `organizations/`ORG_ID`/locations/`LOCATION_ID - /// + Organizations scope, no location specified (defaults to global):
+ /// + Organizations scope, no location specified (defaults to global): /// `organizations/`ORG_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -729,8 +729,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5632} - /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3899} + /// [google.privacy.dlp.v2.CreateDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5951} + /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3956} /// // clang-format on StatusOr @@ -766,8 +766,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5632} - /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3899} + /// [google.privacy.dlp.v2.CreateDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5951} + /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3956} /// // clang-format on StatusOr @@ -801,8 +801,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3899} - /// [google.privacy.dlp.v2.UpdateDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5675} + /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3956} + /// [google.privacy.dlp.v2.UpdateDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5994} /// // clang-format on StatusOr @@ -837,8 +837,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3899} - /// [google.privacy.dlp.v2.UpdateDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5675} + /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3956} + /// [google.privacy.dlp.v2.UpdateDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5994} /// // clang-format on StatusOr @@ -869,8 +869,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3899} - /// [google.privacy.dlp.v2.GetDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5695} + /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3956} + /// [google.privacy.dlp.v2.GetDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6014} /// // clang-format on StatusOr GetDeidentifyTemplate( @@ -902,8 +902,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3899} - /// [google.privacy.dlp.v2.GetDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5695} + /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3956} + /// [google.privacy.dlp.v2.GetDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6014} /// // clang-format on StatusOr GetDeidentifyTemplate( @@ -923,13 +923,13 @@ class DlpServiceClient { /// (project or organization) and whether you have [specified a processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID - /// + Organizations scope, location specified:
+ /// + Organizations scope, location specified: /// `organizations/`ORG_ID`/locations/`LOCATION_ID - /// + Organizations scope, no location specified (defaults to global):
+ /// + Organizations scope, no location specified (defaults to global): /// `organizations/`ORG_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -959,8 +959,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3899} - /// [google.privacy.dlp.v2.ListDeidentifyTemplatesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5708} + /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3956} + /// [google.privacy.dlp.v2.ListDeidentifyTemplatesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6027} /// // clang-format on StreamRange @@ -1001,8 +1001,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3899} - /// [google.privacy.dlp.v2.ListDeidentifyTemplatesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5708} + /// [google.privacy.dlp.v2.DeidentifyTemplate]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3956} + /// [google.privacy.dlp.v2.ListDeidentifyTemplatesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6027} /// // clang-format on StreamRange @@ -1032,7 +1032,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5775} + /// [google.privacy.dlp.v2.DeleteDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6094} /// // clang-format on Status DeleteDeidentifyTemplate(std::string const& name, Options opts = {}); @@ -1061,7 +1061,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5775} + /// [google.privacy.dlp.v2.DeleteDeidentifyTemplateRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6094} /// // clang-format on Status DeleteDeidentifyTemplate( @@ -1082,9 +1082,9 @@ class DlpServiceClient { /// processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -1106,8 +1106,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4357} - /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3948} + /// [google.privacy.dlp.v2.CreateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4429} + /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4020} /// // clang-format on StatusOr CreateJobTrigger( @@ -1142,8 +1142,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4357} - /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3948} + /// [google.privacy.dlp.v2.CreateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4429} + /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4020} /// // clang-format on StatusOr CreateJobTrigger( @@ -1174,8 +1174,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3948} - /// [google.privacy.dlp.v2.UpdateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4405} + /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4020} + /// [google.privacy.dlp.v2.UpdateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4477} /// // clang-format on StatusOr UpdateJobTrigger( @@ -1209,8 +1209,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3948} - /// [google.privacy.dlp.v2.UpdateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4405} + /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4020} + /// [google.privacy.dlp.v2.UpdateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4477} /// // clang-format on StatusOr UpdateJobTrigger( @@ -1238,8 +1238,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.HybridInspectJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6057} - /// [google.privacy.dlp.v2.HybridInspectResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6135} + /// [google.privacy.dlp.v2.HybridInspectJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6376} + /// [google.privacy.dlp.v2.HybridInspectResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6455} /// // clang-format on StatusOr @@ -1270,8 +1270,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.HybridInspectJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6057} - /// [google.privacy.dlp.v2.HybridInspectResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6135} + /// [google.privacy.dlp.v2.HybridInspectJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6376} + /// [google.privacy.dlp.v2.HybridInspectResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6455} /// // clang-format on StatusOr @@ -1301,8 +1301,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4421} - /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3948} + /// [google.privacy.dlp.v2.GetJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4493} + /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4020} /// // clang-format on StatusOr GetJobTrigger( @@ -1334,8 +1334,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4421} - /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3948} + /// [google.privacy.dlp.v2.GetJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4493} + /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4020} /// // clang-format on StatusOr GetJobTrigger( @@ -1355,9 +1355,9 @@ class DlpServiceClient { /// processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -1387,8 +1387,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3948} - /// [google.privacy.dlp.v2.ListJobTriggersRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4601} + /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4020} + /// [google.privacy.dlp.v2.ListJobTriggersRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4678} /// // clang-format on StreamRange ListJobTriggers( @@ -1429,8 +1429,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L3948} - /// [google.privacy.dlp.v2.ListJobTriggersRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4601} + /// [google.privacy.dlp.v2.JobTrigger]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4020} + /// [google.privacy.dlp.v2.ListJobTriggersRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4678} /// // clang-format on StreamRange ListJobTriggers( @@ -1457,7 +1457,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4694} + /// [google.privacy.dlp.v2.DeleteJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4771} /// // clang-format on Status DeleteJobTrigger(std::string const& name, Options opts = {}); @@ -1486,7 +1486,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4694} + /// [google.privacy.dlp.v2.DeleteJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4771} /// // clang-format on Status DeleteJobTrigger( @@ -1517,8 +1517,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ActivateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4395} - /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5427} + /// [google.privacy.dlp.v2.ActivateJobTriggerRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4467} + /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5746} /// // clang-format on StatusOr ActivateJobTrigger( @@ -1531,8 +1531,13 @@ class DlpServiceClient { /// /// @param parent Required. Parent resource name. /// @n - /// The format of this value is as follows: - /// `projects/`PROJECT_ID`/locations/`LOCATION_ID + /// The format of this value varies depending on the scope of the request + /// (project or organization): + /// @n + /// + Projects scope: + /// `projects/`PROJECT_ID`/locations/`LOCATION_ID + /// + Organizations scope: + /// `organizations/`ORG_ID`/locations/`LOCATION_ID /// @n /// The following example `parent` string specifies a parent project with the /// identifier `example-project`, and specifies the `europe-west3` location @@ -1553,8 +1558,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4431} - /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4940} + /// [google.privacy.dlp.v2.CreateDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4503} + /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5020} /// // clang-format on StatusOr CreateDiscoveryConfig( @@ -1585,8 +1590,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4431} - /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4940} + /// [google.privacy.dlp.v2.CreateDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4503} + /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5020} /// // clang-format on StatusOr CreateDiscoveryConfig( @@ -1614,8 +1619,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4940} - /// [google.privacy.dlp.v2.UpdateDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4460} + /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5020} + /// [google.privacy.dlp.v2.UpdateDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4537} /// // clang-format on StatusOr UpdateDiscoveryConfig( @@ -1646,8 +1651,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4940} - /// [google.privacy.dlp.v2.UpdateDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4460} + /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5020} + /// [google.privacy.dlp.v2.UpdateDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4537} /// // clang-format on StatusOr UpdateDiscoveryConfig( @@ -1673,8 +1678,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4940} - /// [google.privacy.dlp.v2.GetDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4478} + /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5020} + /// [google.privacy.dlp.v2.GetDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4555} /// // clang-format on StatusOr GetDiscoveryConfig( @@ -1703,8 +1708,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4940} - /// [google.privacy.dlp.v2.GetDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4478} + /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5020} + /// [google.privacy.dlp.v2.GetDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4555} /// // clang-format on StatusOr GetDiscoveryConfig( @@ -1747,8 +1752,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4940} - /// [google.privacy.dlp.v2.ListDiscoveryConfigsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4490} + /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5020} + /// [google.privacy.dlp.v2.ListDiscoveryConfigsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4567} /// // clang-format on StreamRange ListDiscoveryConfigs( @@ -1786,8 +1791,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4940} - /// [google.privacy.dlp.v2.ListDiscoveryConfigsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4490} + /// [google.privacy.dlp.v2.DiscoveryConfig]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5020} + /// [google.privacy.dlp.v2.ListDiscoveryConfigsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4567} /// // clang-format on StreamRange ListDiscoveryConfigs( @@ -1811,7 +1816,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4542} + /// [google.privacy.dlp.v2.DeleteDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4619} /// // clang-format on Status DeleteDiscoveryConfig(std::string const& name, Options opts = {}); @@ -1837,7 +1842,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4542} + /// [google.privacy.dlp.v2.DeleteDiscoveryConfigRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4619} /// // clang-format on Status DeleteDiscoveryConfig( @@ -1863,9 +1868,9 @@ class DlpServiceClient { /// processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -1887,8 +1892,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4556} - /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5427} + /// [google.privacy.dlp.v2.CreateDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4633} + /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5746} /// // clang-format on StatusOr CreateDlpJob( @@ -1915,9 +1920,9 @@ class DlpServiceClient { /// processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -1940,8 +1945,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4556} - /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5427} + /// [google.privacy.dlp.v2.CreateDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4633} + /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5746} /// // clang-format on StatusOr CreateDlpJob( @@ -1981,8 +1986,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4556} - /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5427} + /// [google.privacy.dlp.v2.CreateDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L4633} + /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5746} /// // clang-format on StatusOr CreateDlpJob( @@ -2004,9 +2009,9 @@ class DlpServiceClient { /// processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -2036,8 +2041,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5427} - /// [google.privacy.dlp.v2.ListDlpJobsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5513} + /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5746} + /// [google.privacy.dlp.v2.ListDlpJobsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5832} /// // clang-format on StreamRange ListDlpJobs( @@ -2080,8 +2085,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5427} - /// [google.privacy.dlp.v2.ListDlpJobsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5513} + /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5746} + /// [google.privacy.dlp.v2.ListDlpJobsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5832} /// // clang-format on StreamRange ListDlpJobs( @@ -2110,8 +2115,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5427} - /// [google.privacy.dlp.v2.GetDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5504} + /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5746} + /// [google.privacy.dlp.v2.GetDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5823} /// // clang-format on StatusOr GetDlpJob(std::string const& name, @@ -2145,8 +2150,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5427} - /// [google.privacy.dlp.v2.GetDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5504} + /// [google.privacy.dlp.v2.DlpJob]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5746} + /// [google.privacy.dlp.v2.GetDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5823} /// // clang-format on StatusOr GetDlpJob( @@ -2176,7 +2181,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5623} + /// [google.privacy.dlp.v2.DeleteDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5942} /// // clang-format on Status DeleteDlpJob(std::string const& name, Options opts = {}); @@ -2209,7 +2214,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5623} + /// [google.privacy.dlp.v2.DeleteDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5942} /// // clang-format on Status DeleteDlpJob( @@ -2244,7 +2249,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CancelDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5605} + /// [google.privacy.dlp.v2.CancelDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5924} /// // clang-format on Status CancelDlpJob( @@ -2264,13 +2269,13 @@ class DlpServiceClient { /// (project or organization) and whether you have [specified a processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID - /// + Organizations scope, location specified:
+ /// + Organizations scope, location specified: /// `organizations/`ORG_ID`/locations/`LOCATION_ID - /// + Organizations scope, no location specified (defaults to global):
+ /// + Organizations scope, no location specified (defaults to global): /// `organizations/`ORG_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -2292,8 +2297,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5905} - /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5884} + /// [google.privacy.dlp.v2.CreateStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6224} + /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6203} /// // clang-format on StatusOr CreateStoredInfoType( @@ -2327,8 +2332,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.CreateStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5905} - /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5884} + /// [google.privacy.dlp.v2.CreateStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6224} + /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6203} /// // clang-format on StatusOr CreateStoredInfoType( @@ -2363,8 +2368,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5884} - /// [google.privacy.dlp.v2.UpdateStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5947} + /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6203} + /// [google.privacy.dlp.v2.UpdateStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6266} /// // clang-format on StatusOr UpdateStoredInfoType( @@ -2399,8 +2404,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5884} - /// [google.privacy.dlp.v2.UpdateStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5947} + /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6203} + /// [google.privacy.dlp.v2.UpdateStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6266} /// // clang-format on StatusOr UpdateStoredInfoType( @@ -2430,8 +2435,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5968} - /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5884} + /// [google.privacy.dlp.v2.GetStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6287} + /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6203} /// // clang-format on StatusOr GetStoredInfoType( @@ -2463,8 +2468,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5968} - /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5884} + /// [google.privacy.dlp.v2.GetStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6287} + /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6203} /// // clang-format on StatusOr GetStoredInfoType( @@ -2484,9 +2489,9 @@ class DlpServiceClient { /// (project or organization) and whether you have [specified a processing /// location](https://cloud.google.com/sensitive-data-protection/docs/specifying-location): /// @n - /// + Projects scope, location specified:
+ /// + Projects scope, location specified: /// `projects/`PROJECT_ID`/locations/`LOCATION_ID - /// + Projects scope, no location specified (defaults to global):
+ /// + Projects scope, no location specified (defaults to global): /// `projects/`PROJECT_ID /// @n /// The following example `parent` string specifies a parent project with the @@ -2516,8 +2521,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ListStoredInfoTypesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5981} - /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5884} + /// [google.privacy.dlp.v2.ListStoredInfoTypesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6300} + /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6203} /// // clang-format on StreamRange ListStoredInfoTypes( @@ -2558,8 +2563,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ListStoredInfoTypesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5981} - /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5884} + /// [google.privacy.dlp.v2.ListStoredInfoTypesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6300} + /// [google.privacy.dlp.v2.StoredInfoType]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6203} /// // clang-format on StreamRange ListStoredInfoTypes( @@ -2587,7 +2592,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6044} + /// [google.privacy.dlp.v2.DeleteStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6363} /// // clang-format on Status DeleteStoredInfoType(std::string const& name, Options opts = {}); @@ -2616,7 +2621,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6044} + /// [google.privacy.dlp.v2.DeleteStoredInfoTypeRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6363} /// // clang-format on Status DeleteStoredInfoType( @@ -2650,8 +2655,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ListProjectDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6260} - /// [google.privacy.dlp.v2.ProjectDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6520} + /// [google.privacy.dlp.v2.ListProjectDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6580} + /// [google.privacy.dlp.v2.ProjectDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6844} /// // clang-format on StreamRange @@ -2689,8 +2694,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ListProjectDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6260} - /// [google.privacy.dlp.v2.ProjectDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6520} + /// [google.privacy.dlp.v2.ListProjectDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6580} + /// [google.privacy.dlp.v2.ProjectDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6844} /// // clang-format on StreamRange @@ -2727,8 +2732,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ListTableDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6328} - /// [google.privacy.dlp.v2.TableDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6588} + /// [google.privacy.dlp.v2.ListTableDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6648} + /// [google.privacy.dlp.v2.TableDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6918} /// // clang-format on StreamRange ListTableDataProfiles( @@ -2766,8 +2771,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ListTableDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6328} - /// [google.privacy.dlp.v2.TableDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6588} + /// [google.privacy.dlp.v2.ListTableDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6648} + /// [google.privacy.dlp.v2.TableDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6918} /// // clang-format on StreamRange ListTableDataProfiles( @@ -2803,8 +2808,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ColumnDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6778} - /// [google.privacy.dlp.v2.ListColumnDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6409} + /// [google.privacy.dlp.v2.ColumnDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7108} + /// [google.privacy.dlp.v2.ListColumnDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6729} /// // clang-format on StreamRange @@ -2842,8 +2847,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ColumnDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6778} - /// [google.privacy.dlp.v2.ListColumnDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6409} + /// [google.privacy.dlp.v2.ColumnDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7108} + /// [google.privacy.dlp.v2.ListColumnDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6729} /// // clang-format on StreamRange @@ -2870,8 +2875,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetProjectDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6940} - /// [google.privacy.dlp.v2.ProjectDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6520} + /// [google.privacy.dlp.v2.GetProjectDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7428} + /// [google.privacy.dlp.v2.ProjectDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6844} /// // clang-format on StatusOr GetProjectDataProfile( @@ -2900,14 +2905,201 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetProjectDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6940} - /// [google.privacy.dlp.v2.ProjectDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6520} + /// [google.privacy.dlp.v2.GetProjectDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7428} + /// [google.privacy.dlp.v2.ProjectDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6844} /// // clang-format on StatusOr GetProjectDataProfile( google::privacy::dlp::v2::GetProjectDataProfileRequest const& request, Options opts = {}); + // clang-format off + /// + /// Lists file store data profiles for an organization. + /// + /// @param parent Required. Resource name of the organization or project, for + /// example `organizations/433245324/locations/europe` or + /// `projects/project-id/locations/asia`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.privacy.dlp.v2.FileStoreDataProfile], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.privacy.dlp.v2.FileStoreDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7272} + /// [google.privacy.dlp.v2.ListFileStoreDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7453} + /// + // clang-format on + StreamRange + ListFileStoreDataProfiles(std::string const& parent, Options opts = {}); + + // clang-format off + /// + /// Lists file store data profiles for an organization. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.privacy.dlp.v2.ListFileStoreDataProfilesRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.privacy.dlp.v2.FileStoreDataProfile], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.privacy.dlp.v2.FileStoreDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7272} + /// [google.privacy.dlp.v2.ListFileStoreDataProfilesRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7453} + /// + // clang-format on + StreamRange + ListFileStoreDataProfiles( + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request, + Options opts = {}); + + // clang-format off + /// + /// Gets a file store data profile. + /// + /// @param name Required. Resource name, for example + /// `organizations/12345/locations/us/fileStoreDataProfiles/53234423`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.privacy.dlp.v2.FileStoreDataProfile]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.privacy.dlp.v2.FileStoreDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7272} + /// [google.privacy.dlp.v2.GetFileStoreDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7440} + /// + // clang-format on + StatusOr + GetFileStoreDataProfile(std::string const& name, Options opts = {}); + + // clang-format off + /// + /// Gets a file store data profile. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.privacy.dlp.v2.GetFileStoreDataProfileRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.privacy.dlp.v2.FileStoreDataProfile]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.privacy.dlp.v2.FileStoreDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7272} + /// [google.privacy.dlp.v2.GetFileStoreDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7440} + /// + // clang-format on + StatusOr + GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Delete a FileStoreDataProfile. Will not prevent the profile from being + /// regenerated if the resource is still included in a discovery configuration. + /// + /// @param name Required. Resource name of the file store data profile. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [`Status`] object. If the request failed, the + /// status contains the details of the failure. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.privacy.dlp.v2.DeleteFileStoreDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7535} + /// + // clang-format on + Status DeleteFileStoreDataProfile(std::string const& name, Options opts = {}); + + // clang-format off + /// + /// Delete a FileStoreDataProfile. Will not prevent the profile from being + /// regenerated if the resource is still included in a discovery configuration. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.privacy.dlp.v2.DeleteFileStoreDataProfileRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [`Status`] object. If the request failed, the + /// status contains the details of the failure. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.privacy.dlp.v2.DeleteFileStoreDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7535} + /// + // clang-format on + Status DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request, + Options opts = {}); + // clang-format off /// /// Gets a table data profile. @@ -2927,8 +3119,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetTableDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6952} - /// [google.privacy.dlp.v2.TableDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6588} + /// [google.privacy.dlp.v2.GetTableDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7546} + /// [google.privacy.dlp.v2.TableDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6918} /// // clang-format on StatusOr GetTableDataProfile( @@ -2957,8 +3149,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.GetTableDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6952} - /// [google.privacy.dlp.v2.TableDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6588} + /// [google.privacy.dlp.v2.GetTableDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7546} + /// [google.privacy.dlp.v2.TableDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6918} /// // clang-format on StatusOr GetTableDataProfile( @@ -2984,8 +3176,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ColumnDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6778} - /// [google.privacy.dlp.v2.GetColumnDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6964} + /// [google.privacy.dlp.v2.ColumnDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7108} + /// [google.privacy.dlp.v2.GetColumnDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7558} /// // clang-format on StatusOr GetColumnDataProfile( @@ -3014,8 +3206,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.ColumnDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6778} - /// [google.privacy.dlp.v2.GetColumnDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6964} + /// [google.privacy.dlp.v2.ColumnDataProfile]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7108} + /// [google.privacy.dlp.v2.GetColumnDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7558} /// // clang-format on StatusOr GetColumnDataProfile( @@ -3039,7 +3231,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteTableDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7275} + /// [google.privacy.dlp.v2.DeleteTableDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7874} /// // clang-format on Status DeleteTableDataProfile(std::string const& name, Options opts = {}); @@ -3066,7 +3258,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteTableDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7275} + /// [google.privacy.dlp.v2.DeleteTableDataProfileRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7874} /// // clang-format on Status DeleteTableDataProfile( @@ -3094,8 +3286,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.HybridInspectDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6070} - /// [google.privacy.dlp.v2.HybridInspectResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6135} + /// [google.privacy.dlp.v2.HybridInspectDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6389} + /// [google.privacy.dlp.v2.HybridInspectResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6455} /// // clang-format on StatusOr HybridInspectDlpJob( @@ -3126,8 +3318,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.HybridInspectDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6070} - /// [google.privacy.dlp.v2.HybridInspectResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6135} + /// [google.privacy.dlp.v2.HybridInspectDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6389} + /// [google.privacy.dlp.v2.HybridInspectResponse]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L6455} /// // clang-format on StatusOr HybridInspectDlpJob( @@ -3156,7 +3348,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.FinishDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5614} + /// [google.privacy.dlp.v2.FinishDlpJobRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L5933} /// // clang-format on Status FinishDlpJob( @@ -3183,8 +3375,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.CreateConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7040} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.CreateConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7639} /// // clang-format on StatusOr CreateConnection( @@ -3215,8 +3407,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.CreateConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7040} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.CreateConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7639} /// // clang-format on StatusOr CreateConnection( @@ -3242,8 +3434,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.GetConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7055} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.GetConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7654} /// // clang-format on StatusOr GetConnection( @@ -3272,8 +3464,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.GetConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7055} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.GetConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7654} /// // clang-format on StatusOr GetConnection( @@ -3308,8 +3500,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.ListConnectionsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7065} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.ListConnectionsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7664} /// // clang-format on StreamRange ListConnections( @@ -3347,8 +3539,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.ListConnectionsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7065} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.ListConnectionsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7664} /// // clang-format on StreamRange ListConnections( @@ -3383,8 +3575,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.SearchConnectionsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7087} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.SearchConnectionsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7686} /// // clang-format on StreamRange SearchConnections( @@ -3422,8 +3614,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.SearchConnectionsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7087} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.SearchConnectionsRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7686} /// // clang-format on StreamRange SearchConnections( @@ -3447,7 +3639,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7148} + /// [google.privacy.dlp.v2.DeleteConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7747} /// // clang-format on Status DeleteConnection(std::string const& name, Options opts = {}); @@ -3473,7 +3665,7 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.DeleteConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7148} + /// [google.privacy.dlp.v2.DeleteConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7747} /// // clang-format on Status DeleteConnection( @@ -3499,8 +3691,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.UpdateConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7131} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.UpdateConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7730} /// // clang-format on StatusOr UpdateConnection( @@ -3529,8 +3721,8 @@ class DlpServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7159} - /// [google.privacy.dlp.v2.UpdateConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7131} + /// [google.privacy.dlp.v2.Connection]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7758} + /// [google.privacy.dlp.v2.UpdateConnectionRequest]: @googleapis_reference_link{google/privacy/dlp/v2/dlp.proto#L7730} /// // clang-format on StatusOr UpdateConnection( diff --git a/google/cloud/dlp/v2/dlp_connection.cc b/google/cloud/dlp/v2/dlp_connection.cc index 4b89163a2bb2b..57f29d1bbde9a 100644 --- a/google/cloud/dlp/v2/dlp_connection.cc +++ b/google/cloud/dlp/v2/dlp_connection.cc @@ -292,6 +292,25 @@ DlpServiceConnection::GetProjectDataProfile( return Status(StatusCode::kUnimplemented, "not implemented"); } +StreamRange +DlpServiceConnection::ListFileStoreDataProfiles( + google::privacy::dlp::v2:: + ListFileStoreDataProfilesRequest) { // NOLINT(performance-unnecessary-value-param) + return google::cloud::internal::MakeUnimplementedPaginationRange< + StreamRange>(); +} + +StatusOr +DlpServiceConnection::GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +Status DlpServiceConnection::DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + StatusOr DlpServiceConnection::GetTableDataProfile( google::privacy::dlp::v2::GetTableDataProfileRequest const&) { diff --git a/google/cloud/dlp/v2/dlp_connection.h b/google/cloud/dlp/v2/dlp_connection.h index 3dc609cd64fab..f81ddfebca930 100644 --- a/google/cloud/dlp/v2/dlp_connection.h +++ b/google/cloud/dlp/v2/dlp_connection.h @@ -328,6 +328,18 @@ class DlpServiceConnection { GetProjectDataProfile( google::privacy::dlp::v2::GetProjectDataProfileRequest const& request); + virtual StreamRange + ListFileStoreDataProfiles( + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request); + + virtual StatusOr + GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request); + + virtual Status DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request); + virtual StatusOr GetTableDataProfile( google::privacy::dlp::v2::GetTableDataProfileRequest const& request); diff --git a/google/cloud/dlp/v2/dlp_connection_idempotency_policy.cc b/google/cloud/dlp/v2/dlp_connection_idempotency_policy.cc index 779403d039bfb..4caade1d48c66 100644 --- a/google/cloud/dlp/v2/dlp_connection_idempotency_policy.cc +++ b/google/cloud/dlp/v2/dlp_connection_idempotency_policy.cc @@ -239,6 +239,21 @@ Idempotency DlpServiceConnectionIdempotencyPolicy::GetProjectDataProfile( return Idempotency::kIdempotent; } +Idempotency DlpServiceConnectionIdempotencyPolicy::ListFileStoreDataProfiles( + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest) { // NOLINT + return Idempotency::kIdempotent; +} + +Idempotency DlpServiceConnectionIdempotencyPolicy::GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const&) { + return Idempotency::kIdempotent; +} + +Idempotency DlpServiceConnectionIdempotencyPolicy::DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const&) { + return Idempotency::kNonIdempotent; +} + Idempotency DlpServiceConnectionIdempotencyPolicy::GetTableDataProfile( google::privacy::dlp::v2::GetTableDataProfileRequest const&) { return Idempotency::kIdempotent; diff --git a/google/cloud/dlp/v2/dlp_connection_idempotency_policy.h b/google/cloud/dlp/v2/dlp_connection_idempotency_policy.h index 6a2fe69b426f5..a5604c4f0867e 100644 --- a/google/cloud/dlp/v2/dlp_connection_idempotency_policy.h +++ b/google/cloud/dlp/v2/dlp_connection_idempotency_policy.h @@ -159,6 +159,16 @@ class DlpServiceConnectionIdempotencyPolicy { virtual google::cloud::Idempotency GetProjectDataProfile( google::privacy::dlp::v2::GetProjectDataProfileRequest const& request); + virtual google::cloud::Idempotency ListFileStoreDataProfiles( + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request); + + virtual google::cloud::Idempotency GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request); + + virtual google::cloud::Idempotency DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request); + virtual google::cloud::Idempotency GetTableDataProfile( google::privacy::dlp::v2::GetTableDataProfileRequest const& request); diff --git a/google/cloud/dlp/v2/internal/dlp_auth_decorator.cc b/google/cloud/dlp/v2/internal/dlp_auth_decorator.cc index 5211d8d8a965a..ea054408d0d19 100644 --- a/google/cloud/dlp/v2/internal/dlp_auth_decorator.cc +++ b/google/cloud/dlp/v2/internal/dlp_auth_decorator.cc @@ -387,6 +387,33 @@ DlpServiceAuth::GetProjectDataProfile( return child_->GetProjectDataProfile(context, options, request); } +StatusOr +DlpServiceAuth::ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ListFileStoreDataProfiles(context, options, request); +} + +StatusOr +DlpServiceAuth::GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->GetFileStoreDataProfile(context, options, request); +} + +Status DlpServiceAuth::DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->DeleteFileStoreDataProfile(context, options, request); +} + StatusOr DlpServiceAuth::GetTableDataProfile( grpc::ClientContext& context, Options const& options, diff --git a/google/cloud/dlp/v2/internal/dlp_auth_decorator.h b/google/cloud/dlp/v2/internal/dlp_auth_decorator.h index 3660a7716a9c8..d5c736a5b101a 100644 --- a/google/cloud/dlp/v2/internal/dlp_auth_decorator.h +++ b/google/cloud/dlp/v2/internal/dlp_auth_decorator.h @@ -243,6 +243,23 @@ class DlpServiceAuth : public DlpServiceStub { google::privacy::dlp::v2::GetProjectDataProfileRequest const& request) override; + StatusOr + ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) + override; + + StatusOr + GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) + override; + + Status DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) override; + StatusOr GetTableDataProfile( grpc::ClientContext& context, Options const& options, google::privacy::dlp::v2::GetTableDataProfileRequest const& request) diff --git a/google/cloud/dlp/v2/internal/dlp_connection_impl.cc b/google/cloud/dlp/v2/internal/dlp_connection_impl.cc index 85b5ee20ec2dd..a9c95e42ceb80 100644 --- a/google/cloud/dlp/v2/internal/dlp_connection_impl.cc +++ b/google/cloud/dlp/v2/internal/dlp_connection_impl.cc @@ -832,6 +832,71 @@ DlpServiceConnectionImpl::GetProjectDataProfile( *current, request, __func__); } +StreamRange +DlpServiceConnectionImpl::ListFileStoreDataProfiles( + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = + idempotency_policy(*current)->ListFileStoreDataProfiles(request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange< + StreamRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& r) { + return google::cloud::internal::RetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub](grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2:: + ListFileStoreDataProfilesRequest const& request) { + return stub->ListFileStoreDataProfiles(context, options, request); + }, + options, r, function_name); + }, + [](google::privacy::dlp::v2::ListFileStoreDataProfilesResponse r) { + std::vector result( + r.file_store_data_profiles().size()); + auto& messages = *r.mutable_file_store_data_profiles(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + +StatusOr +DlpServiceConnectionImpl::GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->GetFileStoreDataProfile(request), + [this](grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& + request) { + return stub_->GetFileStoreDataProfile(context, options, request); + }, + *current, request, __func__); +} + +Status DlpServiceConnectionImpl::DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->DeleteFileStoreDataProfile(request), + [this](grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) { + return stub_->DeleteFileStoreDataProfile(context, options, request); + }, + *current, request, __func__); +} + StatusOr DlpServiceConnectionImpl::GetTableDataProfile( google::privacy::dlp::v2::GetTableDataProfileRequest const& request) { diff --git a/google/cloud/dlp/v2/internal/dlp_connection_impl.h b/google/cloud/dlp/v2/internal/dlp_connection_impl.h index 658e04b43910b..b980272f06ab8 100644 --- a/google/cloud/dlp/v2/internal/dlp_connection_impl.h +++ b/google/cloud/dlp/v2/internal/dlp_connection_impl.h @@ -202,6 +202,20 @@ class DlpServiceConnectionImpl : public dlp_v2::DlpServiceConnection { google::privacy::dlp::v2::GetProjectDataProfileRequest const& request) override; + StreamRange + ListFileStoreDataProfiles( + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request) + override; + + StatusOr + GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) + override; + + Status DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) override; + StatusOr GetTableDataProfile( google::privacy::dlp::v2::GetTableDataProfileRequest const& request) override; diff --git a/google/cloud/dlp/v2/internal/dlp_logging_decorator.cc b/google/cloud/dlp/v2/internal/dlp_logging_decorator.cc index d18fbd41e8835..68639c1758a10 100644 --- a/google/cloud/dlp/v2/internal/dlp_logging_decorator.cc +++ b/google/cloud/dlp/v2/internal/dlp_logging_decorator.cc @@ -543,6 +543,45 @@ DlpServiceLogging::GetProjectDataProfile( context, options, request, __func__, tracing_options_); } +StatusOr +DlpServiceLogging::ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& + request) { + return child_->ListFileStoreDataProfiles(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +DlpServiceLogging::GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& + request) { + return child_->GetFileStoreDataProfile(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +Status DlpServiceLogging::DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) { + return child_->DeleteFileStoreDataProfile(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + StatusOr DlpServiceLogging::GetTableDataProfile( grpc::ClientContext& context, Options const& options, diff --git a/google/cloud/dlp/v2/internal/dlp_logging_decorator.h b/google/cloud/dlp/v2/internal/dlp_logging_decorator.h index a0511707299e0..2b0d569ca7d2d 100644 --- a/google/cloud/dlp/v2/internal/dlp_logging_decorator.h +++ b/google/cloud/dlp/v2/internal/dlp_logging_decorator.h @@ -243,6 +243,23 @@ class DlpServiceLogging : public DlpServiceStub { google::privacy::dlp::v2::GetProjectDataProfileRequest const& request) override; + StatusOr + ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) + override; + + StatusOr + GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) + override; + + Status DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) override; + StatusOr GetTableDataProfile( grpc::ClientContext& context, Options const& options, google::privacy::dlp::v2::GetTableDataProfileRequest const& request) diff --git a/google/cloud/dlp/v2/internal/dlp_metadata_decorator.cc b/google/cloud/dlp/v2/internal/dlp_metadata_decorator.cc index 3328a82ecabcb..9c1d3cbb5e24f 100644 --- a/google/cloud/dlp/v2/internal/dlp_metadata_decorator.cc +++ b/google/cloud/dlp/v2/internal/dlp_metadata_decorator.cc @@ -401,6 +401,33 @@ DlpServiceMetadata::GetProjectDataProfile( return child_->GetProjectDataProfile(context, options, request); } +StatusOr +DlpServiceMetadata::ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ListFileStoreDataProfiles(context, options, request); +} + +StatusOr +DlpServiceMetadata::GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->GetFileStoreDataProfile(context, options, request); +} + +Status DlpServiceMetadata::DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->DeleteFileStoreDataProfile(context, options, request); +} + StatusOr DlpServiceMetadata::GetTableDataProfile( grpc::ClientContext& context, Options const& options, diff --git a/google/cloud/dlp/v2/internal/dlp_metadata_decorator.h b/google/cloud/dlp/v2/internal/dlp_metadata_decorator.h index 62208053460bc..5b37d8caa9607 100644 --- a/google/cloud/dlp/v2/internal/dlp_metadata_decorator.h +++ b/google/cloud/dlp/v2/internal/dlp_metadata_decorator.h @@ -243,6 +243,23 @@ class DlpServiceMetadata : public DlpServiceStub { google::privacy::dlp::v2::GetProjectDataProfileRequest const& request) override; + StatusOr + ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) + override; + + StatusOr + GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) + override; + + Status DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) override; + StatusOr GetTableDataProfile( grpc::ClientContext& context, Options const& options, google::privacy::dlp::v2::GetTableDataProfileRequest const& request) diff --git a/google/cloud/dlp/v2/internal/dlp_stub.cc b/google/cloud/dlp/v2/internal/dlp_stub.cc index f2d81ba527743..4a305fa973459 100644 --- a/google/cloud/dlp/v2/internal/dlp_stub.cc +++ b/google/cloud/dlp/v2/internal/dlp_stub.cc @@ -520,6 +520,45 @@ DefaultDlpServiceStub::GetProjectDataProfile( return response; } +StatusOr +DefaultDlpServiceStub::ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const&, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) { + google::privacy::dlp::v2::ListFileStoreDataProfilesResponse response; + auto status = + grpc_stub_->ListFileStoreDataProfiles(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultDlpServiceStub::GetFileStoreDataProfile( + grpc::ClientContext& context, Options const&, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) { + google::privacy::dlp::v2::FileStoreDataProfile response; + auto status = + grpc_stub_->GetFileStoreDataProfile(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +Status DefaultDlpServiceStub::DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const&, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) { + google::protobuf::Empty response; + auto status = + grpc_stub_->DeleteFileStoreDataProfile(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return google::cloud::Status(); +} + StatusOr DefaultDlpServiceStub::GetTableDataProfile( grpc::ClientContext& context, Options const&, diff --git a/google/cloud/dlp/v2/internal/dlp_stub.h b/google/cloud/dlp/v2/internal/dlp_stub.h index b3b15b773b14a..360fbe7f6a7eb 100644 --- a/google/cloud/dlp/v2/internal/dlp_stub.h +++ b/google/cloud/dlp/v2/internal/dlp_stub.h @@ -240,6 +240,23 @@ class DlpServiceStub { google::privacy::dlp::v2::GetProjectDataProfileRequest const& request) = 0; + virtual StatusOr + ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& + request) = 0; + + virtual StatusOr + GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& + request) = 0; + + virtual Status DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) = 0; + virtual StatusOr GetTableDataProfile( grpc::ClientContext& context, Options const& options, @@ -503,6 +520,23 @@ class DefaultDlpServiceStub : public DlpServiceStub { google::privacy::dlp::v2::GetProjectDataProfileRequest const& request) override; + StatusOr + ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) + override; + + StatusOr + GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) + override; + + Status DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) override; + StatusOr GetTableDataProfile( grpc::ClientContext& context, Options const& options, google::privacy::dlp::v2::GetTableDataProfileRequest const& request) diff --git a/google/cloud/dlp/v2/internal/dlp_tracing_connection.cc b/google/cloud/dlp/v2/internal/dlp_tracing_connection.cc index 654cad6dc7e86..748eaf3957d37 100644 --- a/google/cloud/dlp/v2/internal/dlp_tracing_connection.cc +++ b/google/cloud/dlp/v2/internal/dlp_tracing_connection.cc @@ -411,6 +411,36 @@ DlpServiceTracingConnection::GetProjectDataProfile( return internal::EndSpan(*span, child_->GetProjectDataProfile(request)); } +StreamRange +DlpServiceTracingConnection::ListFileStoreDataProfiles( + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request) { + auto span = internal::MakeSpan( + "dlp_v2::DlpServiceConnection::ListFileStoreDataProfiles"); + internal::OTelScope scope(span); + auto sr = child_->ListFileStoreDataProfiles(std::move(request)); + return internal::MakeTracedStreamRange< + google::privacy::dlp::v2::FileStoreDataProfile>(std::move(span), + std::move(sr)); +} + +StatusOr +DlpServiceTracingConnection::GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) { + auto span = internal::MakeSpan( + "dlp_v2::DlpServiceConnection::GetFileStoreDataProfile"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->GetFileStoreDataProfile(request)); +} + +Status DlpServiceTracingConnection::DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) { + auto span = internal::MakeSpan( + "dlp_v2::DlpServiceConnection::DeleteFileStoreDataProfile"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->DeleteFileStoreDataProfile(request)); +} + StatusOr DlpServiceTracingConnection::GetTableDataProfile( google::privacy::dlp::v2::GetTableDataProfileRequest const& request) { diff --git a/google/cloud/dlp/v2/internal/dlp_tracing_connection.h b/google/cloud/dlp/v2/internal/dlp_tracing_connection.h index 66f862e8342a9..70f88970265c6 100644 --- a/google/cloud/dlp/v2/internal/dlp_tracing_connection.h +++ b/google/cloud/dlp/v2/internal/dlp_tracing_connection.h @@ -194,6 +194,20 @@ class DlpServiceTracingConnection : public dlp_v2::DlpServiceConnection { google::privacy::dlp::v2::GetProjectDataProfileRequest const& request) override; + StreamRange + ListFileStoreDataProfiles( + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request) + override; + + StatusOr + GetFileStoreDataProfile( + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) + override; + + Status DeleteFileStoreDataProfile( + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) override; + StatusOr GetTableDataProfile( google::privacy::dlp::v2::GetTableDataProfileRequest const& request) override; diff --git a/google/cloud/dlp/v2/internal/dlp_tracing_stub.cc b/google/cloud/dlp/v2/internal/dlp_tracing_stub.cc index bd69dc12af7bb..ff21600cbfe06 100644 --- a/google/cloud/dlp/v2/internal/dlp_tracing_stub.cc +++ b/google/cloud/dlp/v2/internal/dlp_tracing_stub.cc @@ -521,6 +521,45 @@ DlpServiceTracingStub::GetProjectDataProfile( context, *span, child_->GetProjectDataProfile(context, options, request)); } +StatusOr +DlpServiceTracingStub::ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) { + auto span = internal::MakeSpanGrpc("google.privacy.dlp.v2.DlpService", + "ListFileStoreDataProfiles"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->ListFileStoreDataProfiles(context, options, request)); +} + +StatusOr +DlpServiceTracingStub::GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) { + auto span = internal::MakeSpanGrpc("google.privacy.dlp.v2.DlpService", + "GetFileStoreDataProfile"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->GetFileStoreDataProfile(context, options, request)); +} + +Status DlpServiceTracingStub::DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) { + auto span = internal::MakeSpanGrpc("google.privacy.dlp.v2.DlpService", + "DeleteFileStoreDataProfile"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->DeleteFileStoreDataProfile(context, options, request)); +} + StatusOr DlpServiceTracingStub::GetTableDataProfile( grpc::ClientContext& context, Options const& options, diff --git a/google/cloud/dlp/v2/internal/dlp_tracing_stub.h b/google/cloud/dlp/v2/internal/dlp_tracing_stub.h index 613b4e8637488..b0096b3daa861 100644 --- a/google/cloud/dlp/v2/internal/dlp_tracing_stub.h +++ b/google/cloud/dlp/v2/internal/dlp_tracing_stub.h @@ -242,6 +242,23 @@ class DlpServiceTracingStub : public DlpServiceStub { google::privacy::dlp::v2::GetProjectDataProfileRequest const& request) override; + StatusOr + ListFileStoreDataProfiles( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::ListFileStoreDataProfilesRequest const& request) + override; + + StatusOr + GetFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request) + override; + + Status DeleteFileStoreDataProfile( + grpc::ClientContext& context, Options const& options, + google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request) override; + StatusOr GetTableDataProfile( grpc::ClientContext& context, Options const& options, google::privacy::dlp::v2::GetTableDataProfileRequest const& request) diff --git a/google/cloud/dlp/v2/mocks/mock_dlp_connection.h b/google/cloud/dlp/v2/mocks/mock_dlp_connection.h index 3967acaa40954..9fa8aaebbb0dd 100644 --- a/google/cloud/dlp/v2/mocks/mock_dlp_connection.h +++ b/google/cloud/dlp/v2/mocks/mock_dlp_connection.h @@ -258,6 +258,24 @@ class MockDlpServiceConnection : public dlp_v2::DlpServiceConnection { (google::privacy::dlp::v2::GetProjectDataProfileRequest const& request), (override)); + MOCK_METHOD( + (StreamRange), + ListFileStoreDataProfiles, + (google::privacy::dlp::v2::ListFileStoreDataProfilesRequest request), + (override)); + + MOCK_METHOD( + StatusOr, + GetFileStoreDataProfile, + (google::privacy::dlp::v2::GetFileStoreDataProfileRequest const& request), + (override)); + + MOCK_METHOD( + Status, DeleteFileStoreDataProfile, + (google::privacy::dlp::v2::DeleteFileStoreDataProfileRequest const& + request), + (override)); + MOCK_METHOD( StatusOr, GetTableDataProfile, (google::privacy::dlp::v2::GetTableDataProfileRequest const& request), diff --git a/google/cloud/edgecontainer/v1/edge_container_client.h b/google/cloud/edgecontainer/v1/edge_container_client.h index dd54e86d8d20a..c76b56afb7a5e 100644 --- a/google/cloud/edgecontainer/v1/edge_container_client.h +++ b/google/cloud/edgecontainer/v1/edge_container_client.h @@ -117,8 +117,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.ListClustersRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L288} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.ListClustersRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L291} /// // clang-format on StreamRange ListClusters( @@ -156,8 +156,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.ListClustersRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L288} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.ListClustersRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L291} /// // clang-format on StreamRange ListClusters( @@ -182,8 +182,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.GetClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L324} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.GetClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L327} /// // clang-format on StatusOr GetCluster( @@ -212,8 +212,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.GetClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L324} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.GetClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L327} /// // clang-format on StatusOr GetCluster( @@ -247,8 +247,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.CreateClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L335} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.CreateClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L338} /// // clang-format on future> CreateCluster( @@ -302,8 +302,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.CreateClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L335} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.CreateClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L338} /// // clang-format on future> CreateCluster( @@ -369,8 +369,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.UpdateClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L357} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.UpdateClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L360} /// // clang-format on future> UpdateCluster( @@ -423,8 +423,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.UpdateClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L357} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.UpdateClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L360} /// // clang-format on future> UpdateCluster( @@ -487,8 +487,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.UpgradeClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L375} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.UpgradeClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L378} /// // clang-format on future> UpgradeCluster( @@ -545,8 +545,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L53} - /// [google.cloud.edgecontainer.v1.UpgradeClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L375} + /// [google.cloud.edgecontainer.v1.Cluster]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L56} + /// [google.cloud.edgecontainer.v1.UpgradeClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L378} /// // clang-format on future> UpgradeCluster( @@ -607,8 +607,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.DeleteClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L408} - /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L257} + /// [google.cloud.edgecontainer.v1.DeleteClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L411} + /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L260} /// // clang-format on future> @@ -658,8 +658,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.DeleteClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L408} - /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L257} + /// [google.cloud.edgecontainer.v1.DeleteClusterRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L411} + /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L260} /// // clang-format on future> @@ -715,8 +715,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GenerateAccessTokenRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L424} - /// [google.cloud.edgecontainer.v1.GenerateAccessTokenResponse]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L435} + /// [google.cloud.edgecontainer.v1.GenerateAccessTokenRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L427} + /// [google.cloud.edgecontainer.v1.GenerateAccessTokenResponse]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L438} /// // clang-format on StatusOr @@ -745,8 +745,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GenerateAccessTokenRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L424} - /// [google.cloud.edgecontainer.v1.GenerateAccessTokenResponse]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L435} + /// [google.cloud.edgecontainer.v1.GenerateAccessTokenRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L427} + /// [google.cloud.edgecontainer.v1.GenerateAccessTokenResponse]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L438} /// // clang-format on StatusOr @@ -773,8 +773,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GenerateOfflineCredentialRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L445} - /// [google.cloud.edgecontainer.v1.GenerateOfflineCredentialResponse]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L456} + /// [google.cloud.edgecontainer.v1.GenerateOfflineCredentialRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L448} + /// [google.cloud.edgecontainer.v1.GenerateOfflineCredentialResponse]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L459} /// // clang-format on StatusOr @@ -803,8 +803,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GenerateOfflineCredentialRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L445} - /// [google.cloud.edgecontainer.v1.GenerateOfflineCredentialResponse]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L456} + /// [google.cloud.edgecontainer.v1.GenerateOfflineCredentialRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L448} + /// [google.cloud.edgecontainer.v1.GenerateOfflineCredentialResponse]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L459} /// // clang-format on StatusOr @@ -840,8 +840,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.ListNodePoolsRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L472} - /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L450} + /// [google.cloud.edgecontainer.v1.ListNodePoolsRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L475} + /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L453} /// // clang-format on StreamRange ListNodePools( @@ -879,8 +879,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.ListNodePoolsRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L472} - /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L450} + /// [google.cloud.edgecontainer.v1.ListNodePoolsRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L475} + /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L453} /// // clang-format on StreamRange ListNodePools( @@ -905,8 +905,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GetNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L507} - /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L450} + /// [google.cloud.edgecontainer.v1.GetNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L510} + /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L453} /// // clang-format on StatusOr GetNodePool( @@ -935,8 +935,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GetNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L507} - /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L450} + /// [google.cloud.edgecontainer.v1.GetNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L510} + /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L453} /// // clang-format on StatusOr GetNodePool( @@ -970,8 +970,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.CreateNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L518} - /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L450} + /// [google.cloud.edgecontainer.v1.CreateNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L521} + /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L453} /// // clang-format on future> CreateNodePool( @@ -1025,8 +1025,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.CreateNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L518} - /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L450} + /// [google.cloud.edgecontainer.v1.CreateNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L521} + /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L453} /// // clang-format on future> CreateNodePool( @@ -1092,8 +1092,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L450} - /// [google.cloud.edgecontainer.v1.UpdateNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L540} + /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L453} + /// [google.cloud.edgecontainer.v1.UpdateNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L543} /// // clang-format on future> UpdateNodePool( @@ -1146,8 +1146,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L450} - /// [google.cloud.edgecontainer.v1.UpdateNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L540} + /// [google.cloud.edgecontainer.v1.NodePool]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L453} + /// [google.cloud.edgecontainer.v1.UpdateNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L543} /// // clang-format on future> UpdateNodePool( @@ -1208,8 +1208,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.DeleteNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L558} - /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L257} + /// [google.cloud.edgecontainer.v1.DeleteNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L561} + /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L260} /// // clang-format on future> @@ -1259,8 +1259,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.DeleteNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L558} - /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L257} + /// [google.cloud.edgecontainer.v1.DeleteNodePoolRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L561} + /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L260} /// // clang-format on future> @@ -1325,8 +1325,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.ListMachinesRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L574} - /// [google.cloud.edgecontainer.v1.Machine]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L543} + /// [google.cloud.edgecontainer.v1.ListMachinesRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L577} + /// [google.cloud.edgecontainer.v1.Machine]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L546} /// // clang-format on StreamRange ListMachines( @@ -1364,8 +1364,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.ListMachinesRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L574} - /// [google.cloud.edgecontainer.v1.Machine]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L543} + /// [google.cloud.edgecontainer.v1.ListMachinesRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L577} + /// [google.cloud.edgecontainer.v1.Machine]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L546} /// // clang-format on StreamRange ListMachines( @@ -1390,8 +1390,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GetMachineRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L609} - /// [google.cloud.edgecontainer.v1.Machine]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L543} + /// [google.cloud.edgecontainer.v1.GetMachineRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L612} + /// [google.cloud.edgecontainer.v1.Machine]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L546} /// // clang-format on StatusOr GetMachine( @@ -1420,8 +1420,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GetMachineRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L609} - /// [google.cloud.edgecontainer.v1.Machine]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L543} + /// [google.cloud.edgecontainer.v1.GetMachineRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L612} + /// [google.cloud.edgecontainer.v1.Machine]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L546} /// // clang-format on StatusOr GetMachine( @@ -1456,8 +1456,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.ListVpnConnectionsRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L620} - /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L590} + /// [google.cloud.edgecontainer.v1.ListVpnConnectionsRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L623} + /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L593} /// // clang-format on StreamRange @@ -1495,8 +1495,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.ListVpnConnectionsRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L620} - /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L590} + /// [google.cloud.edgecontainer.v1.ListVpnConnectionsRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L623} + /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L593} /// // clang-format on StreamRange @@ -1522,8 +1522,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GetVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L656} - /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L590} + /// [google.cloud.edgecontainer.v1.GetVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L659} + /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L593} /// // clang-format on StatusOr GetVpnConnection( @@ -1552,8 +1552,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GetVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L656} - /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L590} + /// [google.cloud.edgecontainer.v1.GetVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L659} + /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L593} /// // clang-format on StatusOr GetVpnConnection( @@ -1587,8 +1587,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.CreateVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L667} - /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L590} + /// [google.cloud.edgecontainer.v1.CreateVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L670} + /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L593} /// // clang-format on future> @@ -1643,8 +1643,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.CreateVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L667} - /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L590} + /// [google.cloud.edgecontainer.v1.CreateVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L670} + /// [google.cloud.edgecontainer.v1.VpnConnection]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L593} /// // clang-format on future> @@ -1709,8 +1709,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.DeleteVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L689} - /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L257} + /// [google.cloud.edgecontainer.v1.DeleteVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L692} + /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L260} /// // clang-format on future> @@ -1760,8 +1760,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.DeleteVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L689} - /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L257} + /// [google.cloud.edgecontainer.v1.DeleteVpnConnectionRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L692} + /// [google.cloud.edgecontainer.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L260} /// // clang-format on future> @@ -1820,8 +1820,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GetServerConfigRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L705} - /// [google.cloud.edgecontainer.v1.ServerConfig]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L794} + /// [google.cloud.edgecontainer.v1.GetServerConfigRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L708} + /// [google.cloud.edgecontainer.v1.ServerConfig]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L797} /// // clang-format on StatusOr GetServerConfig( @@ -1850,8 +1850,8 @@ class EdgeContainerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgecontainer.v1.GetServerConfigRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L705} - /// [google.cloud.edgecontainer.v1.ServerConfig]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L794} + /// [google.cloud.edgecontainer.v1.GetServerConfigRequest]: @googleapis_reference_link{google/cloud/edgecontainer/v1/service.proto#L708} + /// [google.cloud.edgecontainer.v1.ServerConfig]: @googleapis_reference_link{google/cloud/edgecontainer/v1/resources.proto#L797} /// // clang-format on StatusOr GetServerConfig( diff --git a/google/cloud/edgenetwork/v1/edge_network_client.h b/google/cloud/edgenetwork/v1/edge_network_client.h index bae02dd5af0ac..26cde320dd6ca 100644 --- a/google/cloud/edgenetwork/v1/edge_network_client.h +++ b/google/cloud/edgenetwork/v1/edge_network_client.h @@ -1221,7 +1221,7 @@ class EdgeNetworkClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgenetwork.v1.Interconnect]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L162} + /// [google.cloud.edgenetwork.v1.Interconnect]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L185} /// [google.cloud.edgenetwork.v1.ListInterconnectsRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L616} /// // clang-format on @@ -1260,7 +1260,7 @@ class EdgeNetworkClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgenetwork.v1.Interconnect]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L162} + /// [google.cloud.edgenetwork.v1.Interconnect]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L185} /// [google.cloud.edgenetwork.v1.ListInterconnectsRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L616} /// // clang-format on @@ -1287,7 +1287,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.GetInterconnectRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L652} - /// [google.cloud.edgenetwork.v1.Interconnect]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L162} + /// [google.cloud.edgenetwork.v1.Interconnect]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L185} /// // clang-format on StatusOr GetInterconnect( @@ -1317,7 +1317,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.GetInterconnectRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L652} - /// [google.cloud.edgenetwork.v1.Interconnect]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L162} + /// [google.cloud.edgenetwork.v1.Interconnect]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L185} /// // clang-format on StatusOr GetInterconnect( @@ -1409,7 +1409,7 @@ class EdgeNetworkClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L214} + /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L237} /// [google.cloud.edgenetwork.v1.ListInterconnectAttachmentsRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L663} /// // clang-format on @@ -1448,7 +1448,7 @@ class EdgeNetworkClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L214} + /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L237} /// [google.cloud.edgenetwork.v1.ListInterconnectAttachmentsRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L663} /// // clang-format on @@ -1477,7 +1477,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.GetInterconnectAttachmentRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L699} - /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L214} + /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L237} /// // clang-format on StatusOr @@ -1507,7 +1507,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.GetInterconnectAttachmentRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L699} - /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L214} + /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L237} /// // clang-format on StatusOr @@ -1546,7 +1546,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.CreateInterconnectAttachmentRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L710} - /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L214} + /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L237} /// // clang-format on future> @@ -1604,7 +1604,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.CreateInterconnectAttachmentRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L710} - /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L214} + /// [google.cloud.edgenetwork.v1.InterconnectAttachment]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L237} /// // clang-format on future> @@ -1789,7 +1789,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.ListRoutersRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L772} - /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L270} + /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L293} /// // clang-format on StreamRange ListRouters( @@ -1828,7 +1828,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.ListRoutersRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L772} - /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L270} + /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L293} /// // clang-format on StreamRange ListRouters( @@ -1854,7 +1854,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.GetRouterRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L808} - /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L270} + /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L293} /// // clang-format on StatusOr GetRouter( @@ -1884,7 +1884,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.GetRouterRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L808} - /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L270} + /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L293} /// // clang-format on StatusOr GetRouter( @@ -1978,7 +1978,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.CreateRouterRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L819} - /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L270} + /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L293} /// // clang-format on future> CreateRouter( @@ -2033,7 +2033,7 @@ class EdgeNetworkClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.edgenetwork.v1.CreateRouterRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L819} - /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L270} + /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L293} /// // clang-format on future> CreateRouter( @@ -2099,7 +2099,7 @@ class EdgeNetworkClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L270} + /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L293} /// [google.cloud.edgenetwork.v1.UpdateRouterRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L853} /// // clang-format on @@ -2153,7 +2153,7 @@ class EdgeNetworkClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L270} + /// [google.cloud.edgenetwork.v1.Router]: @googleapis_reference_link{google/cloud/edgenetwork/v1/resources.proto#L293} /// [google.cloud.edgenetwork.v1.UpdateRouterRequest]: @googleapis_reference_link{google/cloud/edgenetwork/v1/service.proto#L853} /// // clang-format on diff --git a/google/cloud/osconfig/agentendpoint/v1/agent_endpoint_client.h b/google/cloud/osconfig/agentendpoint/v1/agent_endpoint_client.h index 8504ed9bccdc0..af4fa13ab7dc3 100644 --- a/google/cloud/osconfig/agentendpoint/v1/agent_endpoint_client.h +++ b/google/cloud/osconfig/agentendpoint/v1/agent_endpoint_client.h @@ -108,8 +108,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.ReceiveTaskNotificationRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L66} - /// [google.cloud.osconfig.agentendpoint.v1.ReceiveTaskNotificationResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L78} + /// [google.cloud.osconfig.agentendpoint.v1.ReceiveTaskNotificationRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L75} + /// [google.cloud.osconfig.agentendpoint.v1.ReceiveTaskNotificationResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L87} /// // clang-format on StreamRange @@ -200,8 +200,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.StartNextTaskRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L83} - /// [google.cloud.osconfig.agentendpoint.v1.StartNextTaskResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L91} + /// [google.cloud.osconfig.agentendpoint.v1.StartNextTaskRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L90} + /// [google.cloud.osconfig.agentendpoint.v1.StartNextTaskResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L98} /// // clang-format on StatusOr @@ -222,9 +222,9 @@ class AgentEndpointServiceClient { /// @n /// Progress must include the appropriate message based on this enum as /// specified below: - /// APPLY_PATCHES = ApplyPatchesTaskProgress - /// EXEC_STEP = Progress not supported for this type. - /// APPLY_CONFIG_TASK = ApplyConfigTaskProgress + /// `APPLY_PATCHES` = ApplyPatchesTaskProgress + /// `EXEC_STEP` = Progress not supported for this type. + /// `APPLY_CONFIG_TASK` = ApplyConfigTaskProgress /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return the result of the RPC. The response message type @@ -238,8 +238,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskProgressRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L98} - /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskProgressResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L130} + /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskProgressRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L105} + /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskProgressResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L137} /// // clang-format on StatusOr< @@ -272,8 +272,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskProgressRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L98} - /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskProgressResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L130} + /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskProgressRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L105} + /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskProgressResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L137} /// // clang-format on StatusOr< @@ -312,8 +312,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskCompleteRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L136} - /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskCompleteResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L171} + /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskCompleteRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L143} + /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskCompleteResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L178} /// // clang-format on StatusOr< @@ -347,8 +347,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskCompleteRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L136} - /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskCompleteResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L171} + /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskCompleteRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L143} + /// [google.cloud.osconfig.agentendpoint.v1.ReportTaskCompleteResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L178} /// // clang-format on StatusOr< @@ -382,8 +382,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.RegisterAgentRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L176} - /// [google.cloud.osconfig.agentendpoint.v1.RegisterAgentResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L208} + /// [google.cloud.osconfig.agentendpoint.v1.RegisterAgentRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L181} + /// [google.cloud.osconfig.agentendpoint.v1.RegisterAgentResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L214} /// // clang-format on StatusOr @@ -415,8 +415,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.RegisterAgentRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L176} - /// [google.cloud.osconfig.agentendpoint.v1.RegisterAgentResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L208} + /// [google.cloud.osconfig.agentendpoint.v1.RegisterAgentRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L181} + /// [google.cloud.osconfig.agentendpoint.v1.RegisterAgentResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L214} /// // clang-format on StatusOr @@ -432,11 +432,11 @@ class AgentEndpointServiceClient { /// @param instance_id_token Required. This is the Compute Engine instance identity token described in /// https://cloud.google.com/compute/docs/instances/verifying-instance-identity /// where the audience is 'osconfig.googleapis.com' and the format is 'full'. - /// @param inventory_checksum Required. This is a client created checksum that should be generated based on the - /// contents of the reported inventory. This will be used by the service to - /// determine if it has the latest version of inventory. - /// @param inventory Optional. This is the details of the inventory. Should only be provided if the - /// inventory has changed since the last report, or if instructed by the + /// @param inventory_checksum Required. This is a client created checksum that should be generated based + /// on the contents of the reported inventory. This will be used by the + /// service to determine if it has the latest version of inventory. + /// @param inventory Optional. This is the details of the inventory. Should only be provided if + /// the inventory has changed since the last report, or if instructed by the /// service to provide full inventory. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. @@ -451,8 +451,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.ReportInventoryRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L213} - /// [google.cloud.osconfig.agentendpoint.v1.ReportInventoryResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L231} + /// [google.cloud.osconfig.agentendpoint.v1.ReportInventoryRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L217} + /// [google.cloud.osconfig.agentendpoint.v1.ReportInventoryResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L235} /// // clang-format on StatusOr @@ -485,8 +485,8 @@ class AgentEndpointServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.osconfig.agentendpoint.v1.ReportInventoryRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L213} - /// [google.cloud.osconfig.agentendpoint.v1.ReportInventoryResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L231} + /// [google.cloud.osconfig.agentendpoint.v1.ReportInventoryRequest]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L217} + /// [google.cloud.osconfig.agentendpoint.v1.ReportInventoryResponse]: @googleapis_reference_link{google/cloud/osconfig/agentendpoint/v1/agentendpoint.proto#L235} /// // clang-format on StatusOr diff --git a/google/cloud/pubsub/admin/subscription_admin_client.h b/google/cloud/pubsub/admin/subscription_admin_client.h index 3cc17d663194f..7c2c663b784fa 100644 --- a/google/cloud/pubsub/admin/subscription_admin_client.h +++ b/google/cloud/pubsub/admin/subscription_admin_client.h @@ -211,7 +211,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.GetSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1284} + /// [google.pubsub.v1.GetSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1288} /// [google.pubsub.v1.Subscription]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L757} /// // clang-format on @@ -241,7 +241,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.GetSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1284} + /// [google.pubsub.v1.GetSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1288} /// [google.pubsub.v1.Subscription]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L757} /// // clang-format on @@ -272,7 +272,7 @@ class SubscriptionAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.pubsub.v1.Subscription]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L757} - /// [google.pubsub.v1.UpdateSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1296} + /// [google.pubsub.v1.UpdateSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1300} /// // clang-format on StatusOr UpdateSubscription( @@ -305,7 +305,7 @@ class SubscriptionAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.pubsub.v1.Subscription]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L757} - /// [google.pubsub.v1.UpdateSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1296} + /// [google.pubsub.v1.UpdateSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1300} /// // clang-format on StatusOr UpdateSubscription( @@ -340,7 +340,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.ListSubscriptionsRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1307} + /// [google.pubsub.v1.ListSubscriptionsRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1311} /// [google.pubsub.v1.Subscription]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L757} /// // clang-format on @@ -379,7 +379,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.ListSubscriptionsRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1307} + /// [google.pubsub.v1.ListSubscriptionsRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1311} /// [google.pubsub.v1.Subscription]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L757} /// // clang-format on @@ -407,7 +407,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.DeleteSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1339} + /// [google.pubsub.v1.DeleteSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1343} /// // clang-format on Status DeleteSubscription(std::string const& subscription, Options opts = {}); @@ -437,7 +437,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.DeleteSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1339} + /// [google.pubsub.v1.DeleteSubscriptionRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1343} /// // clang-format on Status DeleteSubscription( @@ -472,7 +472,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.ModifyPushConfigRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1351} + /// [google.pubsub.v1.ModifyPushConfigRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1355} /// // clang-format on Status ModifyPushConfig(std::string const& subscription, @@ -505,7 +505,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.ModifyPushConfigRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1351} + /// [google.pubsub.v1.ModifyPushConfigRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1355} /// // clang-format on Status ModifyPushConfig( @@ -535,8 +535,8 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.GetSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1690} - /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1655} + /// [google.pubsub.v1.GetSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1694} + /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1659} /// // clang-format on StatusOr GetSnapshot( @@ -569,8 +569,8 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.GetSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1690} - /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1655} + /// [google.pubsub.v1.GetSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1694} + /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1659} /// // clang-format on StatusOr GetSnapshot( @@ -608,8 +608,8 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.ListSnapshotsRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1700} - /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1655} + /// [google.pubsub.v1.ListSnapshotsRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1704} + /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1659} /// // clang-format on StreamRange ListSnapshots( @@ -651,8 +651,8 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.ListSnapshotsRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1700} - /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1655} + /// [google.pubsub.v1.ListSnapshotsRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1704} + /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1659} /// // clang-format on StreamRange ListSnapshots( @@ -705,8 +705,8 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.CreateSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1606} - /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1655} + /// [google.pubsub.v1.CreateSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1610} + /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1659} /// // clang-format on StatusOr CreateSnapshot( @@ -751,8 +751,8 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.CreateSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1606} - /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1655} + /// [google.pubsub.v1.CreateSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1610} + /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1659} /// // clang-format on StatusOr CreateSnapshot( @@ -784,8 +784,8 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1655} - /// [google.pubsub.v1.UpdateSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1640} + /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1659} + /// [google.pubsub.v1.UpdateSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1644} /// // clang-format on StatusOr UpdateSnapshot( @@ -820,8 +820,8 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1655} - /// [google.pubsub.v1.UpdateSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1640} + /// [google.pubsub.v1.Snapshot]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1659} + /// [google.pubsub.v1.UpdateSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1644} /// // clang-format on StatusOr UpdateSnapshot( @@ -853,7 +853,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.DeleteSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1731} + /// [google.pubsub.v1.DeleteSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1735} /// // clang-format on Status DeleteSnapshot(std::string const& snapshot, Options opts = {}); @@ -887,7 +887,7 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.DeleteSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1731} + /// [google.pubsub.v1.DeleteSnapshotRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1735} /// // clang-format on Status DeleteSnapshot( @@ -923,8 +923,8 @@ class SubscriptionAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.pubsub.v1.SeekRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1741} - /// [google.pubsub.v1.SeekResponse]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1777} + /// [google.pubsub.v1.SeekRequest]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1745} + /// [google.pubsub.v1.SeekResponse]: @googleapis_reference_link{google/pubsub/v1/pubsub.proto#L1781} /// // clang-format on StatusOr Seek( diff --git a/google/cloud/recaptchaenterprise/v1/recaptcha_enterprise_client.h b/google/cloud/recaptchaenterprise/v1/recaptcha_enterprise_client.h index dfaccb80c57e0..39cef8ac74596 100644 --- a/google/cloud/recaptchaenterprise/v1/recaptcha_enterprise_client.h +++ b/google/cloud/recaptchaenterprise/v1/recaptcha_enterprise_client.h @@ -239,8 +239,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.CreateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1149} - /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1419} + /// [google.cloud.recaptchaenterprise.v1.CreateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1182} + /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1452} /// // clang-format on StatusOr CreateKey( @@ -271,8 +271,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.CreateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1149} - /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1419} + /// [google.cloud.recaptchaenterprise.v1.CreateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1182} + /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1452} /// // clang-format on StatusOr CreateKey( @@ -307,8 +307,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1419} - /// [google.cloud.recaptchaenterprise.v1.ListKeysRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1164} + /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1452} + /// [google.cloud.recaptchaenterprise.v1.ListKeysRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1197} /// // clang-format on StreamRange ListKeys( @@ -346,8 +346,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1419} - /// [google.cloud.recaptchaenterprise.v1.ListKeysRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1164} + /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1452} + /// [google.cloud.recaptchaenterprise.v1.ListKeysRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1197} /// // clang-format on StreamRange ListKeys( @@ -375,8 +375,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1194} - /// [google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyResponse]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1409} + /// [google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1227} + /// [google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyResponse]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1442} /// // clang-format on StatusOr< @@ -408,8 +408,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1194} - /// [google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyResponse]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1409} + /// [google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1227} + /// [google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyResponse]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1442} /// // clang-format on StatusOr< @@ -437,8 +437,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.GetKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1206} - /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1419} + /// [google.cloud.recaptchaenterprise.v1.GetKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1239} + /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1452} /// // clang-format on StatusOr GetKey( @@ -467,8 +467,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.GetKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1206} - /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1419} + /// [google.cloud.recaptchaenterprise.v1.GetKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1239} + /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1452} /// // clang-format on StatusOr GetKey( @@ -495,8 +495,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1419} - /// [google.cloud.recaptchaenterprise.v1.UpdateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1218} + /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1452} + /// [google.cloud.recaptchaenterprise.v1.UpdateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1251} /// // clang-format on StatusOr UpdateKey( @@ -526,8 +526,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1419} - /// [google.cloud.recaptchaenterprise.v1.UpdateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1218} + /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1452} + /// [google.cloud.recaptchaenterprise.v1.UpdateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1251} /// // clang-format on StatusOr UpdateKey( @@ -551,7 +551,7 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.DeleteKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1229} + /// [google.cloud.recaptchaenterprise.v1.DeleteKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1262} /// // clang-format on Status DeleteKey(std::string const& name, Options opts = {}); @@ -577,7 +577,7 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.DeleteKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1229} + /// [google.cloud.recaptchaenterprise.v1.DeleteKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1262} /// // clang-format on Status DeleteKey( @@ -612,8 +612,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1419} - /// [google.cloud.recaptchaenterprise.v1.MigrateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1345} + /// [google.cloud.recaptchaenterprise.v1.Key]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1452} + /// [google.cloud.recaptchaenterprise.v1.MigrateKeyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1378} /// // clang-format on StatusOr MigrateKey( @@ -640,8 +640,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.GetMetricsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1367} - /// [google.cloud.recaptchaenterprise.v1.Metrics]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1379} + /// [google.cloud.recaptchaenterprise.v1.GetMetricsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1400} + /// [google.cloud.recaptchaenterprise.v1.Metrics]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1412} /// // clang-format on StatusOr GetMetrics( @@ -671,8 +671,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.GetMetricsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1367} - /// [google.cloud.recaptchaenterprise.v1.Metrics]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1379} + /// [google.cloud.recaptchaenterprise.v1.GetMetricsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1400} + /// [google.cloud.recaptchaenterprise.v1.Metrics]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1412} /// // clang-format on StatusOr GetMetrics( @@ -701,8 +701,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.CreateFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1241} - /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1725} + /// [google.cloud.recaptchaenterprise.v1.CreateFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1274} + /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1758} /// // clang-format on StatusOr @@ -737,8 +737,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.CreateFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1241} - /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1725} + /// [google.cloud.recaptchaenterprise.v1.CreateFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1274} + /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1758} /// // clang-format on StatusOr @@ -775,8 +775,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1725} - /// [google.cloud.recaptchaenterprise.v1.ListFirewallPoliciesRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1256} + /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1758} + /// [google.cloud.recaptchaenterprise.v1.ListFirewallPoliciesRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1289} /// // clang-format on StreamRange @@ -814,8 +814,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1725} - /// [google.cloud.recaptchaenterprise.v1.ListFirewallPoliciesRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1256} + /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1758} + /// [google.cloud.recaptchaenterprise.v1.ListFirewallPoliciesRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1289} /// // clang-format on StreamRange @@ -843,8 +843,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1725} - /// [google.cloud.recaptchaenterprise.v1.GetFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1286} + /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1758} + /// [google.cloud.recaptchaenterprise.v1.GetFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1319} /// // clang-format on StatusOr @@ -873,8 +873,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1725} - /// [google.cloud.recaptchaenterprise.v1.GetFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1286} + /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1758} + /// [google.cloud.recaptchaenterprise.v1.GetFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1319} /// // clang-format on StatusOr @@ -903,8 +903,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1725} - /// [google.cloud.recaptchaenterprise.v1.UpdateFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1298} + /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1758} + /// [google.cloud.recaptchaenterprise.v1.UpdateFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1331} /// // clang-format on StatusOr @@ -936,8 +936,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1725} - /// [google.cloud.recaptchaenterprise.v1.UpdateFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1298} + /// [google.cloud.recaptchaenterprise.v1.FirewallPolicy]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1758} + /// [google.cloud.recaptchaenterprise.v1.UpdateFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1331} /// // clang-format on StatusOr @@ -963,7 +963,7 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.DeleteFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1309} + /// [google.cloud.recaptchaenterprise.v1.DeleteFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1342} /// // clang-format on Status DeleteFirewallPolicy(std::string const& name, Options opts = {}); @@ -989,7 +989,7 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.DeleteFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1309} + /// [google.cloud.recaptchaenterprise.v1.DeleteFirewallPolicyRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1342} /// // clang-format on Status DeleteFirewallPolicy( @@ -1018,8 +1018,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1321} - /// [google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesResponse]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1342} + /// [google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1354} + /// [google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesResponse]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1375} /// // clang-format on StatusOr< @@ -1051,8 +1051,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1321} - /// [google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesResponse]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1342} + /// [google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1354} + /// [google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesResponse]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1375} /// // clang-format on StatusOr< @@ -1089,8 +1089,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1804} - /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroup]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1918} + /// [google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1837} + /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroup]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1951} /// // clang-format on StreamRange @@ -1128,8 +1128,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1804} - /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroup]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1918} + /// [google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1837} + /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroup]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1951} /// // clang-format on StreamRange @@ -1166,8 +1166,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1769} - /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1890} + /// [google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1802} + /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1923} /// // clang-format on StreamRange< @@ -1207,8 +1207,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1769} - /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1890} + /// [google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1802} + /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1923} /// // clang-format on StreamRange< @@ -1252,8 +1252,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1890} - /// [google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1839} + /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1923} + /// [google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1872} /// // clang-format on StreamRange< @@ -1294,8 +1294,8 @@ class RecaptchaEnterpriseServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1890} - /// [google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1839} + /// [google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1923} + /// [google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsRequest]: @googleapis_reference_link{google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto#L1872} /// // clang-format on StreamRange< diff --git a/google/cloud/run/v2/executions_client.h b/google/cloud/run/v2/executions_client.h index c4c980cbb7824..fa48947faa454 100644 --- a/google/cloud/run/v2/executions_client.h +++ b/google/cloud/run/v2/executions_client.h @@ -108,8 +108,8 @@ class ExecutionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} - /// [google.cloud.run.v2.GetExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L85} + /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L174} + /// [google.cloud.run.v2.GetExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L86} /// // clang-format on StatusOr GetExecution( @@ -138,8 +138,8 @@ class ExecutionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} - /// [google.cloud.run.v2.GetExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L85} + /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L174} + /// [google.cloud.run.v2.GetExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L86} /// // clang-format on StatusOr GetExecution( @@ -148,7 +148,8 @@ class ExecutionsClient { // clang-format off /// - /// Lists Executions from a Job. + /// Lists Executions from a Job. Results are sorted by creation time, + /// descending. /// /// @param parent Required. The Execution from which the Executions should be listed. /// To list all Executions across Jobs, use "-" instead of Job name. @@ -176,8 +177,8 @@ class ExecutionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} - /// [google.cloud.run.v2.ListExecutionsRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L97} + /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L174} + /// [google.cloud.run.v2.ListExecutionsRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L98} /// // clang-format on StreamRange ListExecutions( @@ -185,7 +186,8 @@ class ExecutionsClient { // clang-format off /// - /// Lists Executions from a Job. + /// Lists Executions from a Job. Results are sorted by creation time, + /// descending. /// /// @param request Unary RPCs, such as the one wrapped by this /// function, receive a single `request` proto message which includes all @@ -215,8 +217,8 @@ class ExecutionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} - /// [google.cloud.run.v2.ListExecutionsRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L97} + /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L174} + /// [google.cloud.run.v2.ListExecutionsRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L98} /// // clang-format on StreamRange ListExecutions( @@ -250,8 +252,8 @@ class ExecutionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.DeleteExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L131} - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} + /// [google.cloud.run.v2.DeleteExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L132} + /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L174} /// // clang-format on future> DeleteExecution( @@ -301,8 +303,8 @@ class ExecutionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.DeleteExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L131} - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} + /// [google.cloud.run.v2.DeleteExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L132} + /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L174} /// // clang-format on future> DeleteExecution( @@ -366,8 +368,8 @@ class ExecutionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.CancelExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L151} - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} + /// [google.cloud.run.v2.CancelExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L152} + /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L174} /// // clang-format on future> CancelExecution( @@ -417,8 +419,8 @@ class ExecutionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.CancelExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L151} - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} + /// [google.cloud.run.v2.CancelExecutionRequest]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L152} + /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L174} /// // clang-format on future> CancelExecution( diff --git a/google/cloud/run/v2/internal/jobs_connection_impl.cc b/google/cloud/run/v2/internal/jobs_connection_impl.cc index 42acfc41b713b..cfa2bec7446af 100644 --- a/google/cloud/run/v2/internal/jobs_connection_impl.cc +++ b/google/cloud/run/v2/internal/jobs_connection_impl.cc @@ -355,13 +355,12 @@ future> JobsConnectionImpl::DeleteJob( polling_policy(*current), __func__); } -future> JobsConnectionImpl::RunJob( +future> JobsConnectionImpl::RunJob( google::cloud::run::v2::RunJobRequest const& request) { auto current = google::cloud::internal::SaveCurrentOptions(); auto request_copy = request; auto const idempotent = idempotency_policy(*current)->RunJob(request_copy); - return google::cloud::internal::AsyncLongRunningOperation< - google::cloud::run::v2::Execution>( + return google::cloud::internal::AsyncLongRunningOperation( background_->cq(), current, std::move(request_copy), [stub = stub_](google::cloud::CompletionQueue& cq, std::shared_ptr context, @@ -385,8 +384,7 @@ future> JobsConnectionImpl::RunJob( return stub->AsyncCancelOperation(cq, std::move(context), std::move(options), request); }, - &google::cloud::internal::ExtractLongRunningResultResponse< - google::cloud::run::v2::Execution>, + &google::cloud::internal::ExtractLongRunningResultResponse, retry_policy(*current), backoff_policy(*current), idempotent, polling_policy(*current), __func__); } @@ -405,19 +403,18 @@ StatusOr JobsConnectionImpl::RunJob( *current, request, __func__); } -future> JobsConnectionImpl::RunJob( +future> JobsConnectionImpl::RunJob( ExperimentalTag, google::longrunning::Operation const& operation) { auto current = google::cloud::internal::SaveCurrentOptions(); - if (!operation.metadata().Is()) { - return make_ready_future>( + if (!operation.metadata().Is()) { + return make_ready_future>( internal::InvalidArgumentError( "operation does not correspond to RunJob", GCP_ERROR_INFO().WithMetadata("operation", operation.metadata().DebugString()))); } - return google::cloud::internal::AsyncAwaitLongRunningOperation< - google::cloud::run::v2::Execution>( + return google::cloud::internal::AsyncAwaitLongRunningOperation( background_->cq(), current, operation, [stub = stub_](google::cloud::CompletionQueue& cq, std::shared_ptr context, @@ -434,8 +431,7 @@ future> JobsConnectionImpl::RunJob( return stub->AsyncCancelOperation(cq, std::move(context), std::move(options), request); }, - &google::cloud::internal::ExtractLongRunningResultResponse< - google::cloud::run::v2::Execution>, + &google::cloud::internal::ExtractLongRunningResultResponse, polling_policy(*current), __func__); } diff --git a/google/cloud/run/v2/internal/jobs_connection_impl.h b/google/cloud/run/v2/internal/jobs_connection_impl.h index 1dfb1390b61d4..040cae1a059f3 100644 --- a/google/cloud/run/v2/internal/jobs_connection_impl.h +++ b/google/cloud/run/v2/internal/jobs_connection_impl.h @@ -89,14 +89,14 @@ class JobsConnectionImpl : public run_v2::JobsConnection { ExperimentalTag, google::longrunning::Operation const& operation) override; - future> RunJob( + future> RunJob( google::cloud::run::v2::RunJobRequest const& request) override; StatusOr RunJob( ExperimentalTag, NoAwaitTag, google::cloud::run::v2::RunJobRequest const& request) override; - future> RunJob( + future> RunJob( ExperimentalTag, google::longrunning::Operation const& operation) override; diff --git a/google/cloud/run/v2/internal/jobs_tracing_connection.cc b/google/cloud/run/v2/internal/jobs_tracing_connection.cc index f0a5d9af10daf..f4f721be8ba70 100644 --- a/google/cloud/run/v2/internal/jobs_tracing_connection.cc +++ b/google/cloud/run/v2/internal/jobs_tracing_connection.cc @@ -121,8 +121,7 @@ future> JobsTracingConnection::DeleteJob( child_->DeleteJob(ExperimentalTag{}, operation)); } -future> -JobsTracingConnection::RunJob( +future> JobsTracingConnection::RunJob( google::cloud::run::v2::RunJobRequest const& request) { auto span = internal::MakeSpan("run_v2::JobsConnection::RunJob"); internal::OTelScope scope(span); @@ -138,9 +137,8 @@ StatusOr JobsTracingConnection::RunJob( *span, child_->RunJob(ExperimentalTag{}, NoAwaitTag{}, request)); } -future> -JobsTracingConnection::RunJob(ExperimentalTag, - google::longrunning::Operation const& operation) { +future> JobsTracingConnection::RunJob( + ExperimentalTag, google::longrunning::Operation const& operation) { auto span = internal::MakeSpan("run_v2::JobsConnection::RunJob"); internal::OTelScope scope(span); return internal::EndSpan(std::move(span), diff --git a/google/cloud/run/v2/internal/jobs_tracing_connection.h b/google/cloud/run/v2/internal/jobs_tracing_connection.h index e07d915d30487..a97de0a6e7ecc 100644 --- a/google/cloud/run/v2/internal/jobs_tracing_connection.h +++ b/google/cloud/run/v2/internal/jobs_tracing_connection.h @@ -77,14 +77,14 @@ class JobsTracingConnection : public run_v2::JobsConnection { ExperimentalTag, google::longrunning::Operation const& operation) override; - future> RunJob( + future> RunJob( google::cloud::run::v2::RunJobRequest const& request) override; StatusOr RunJob( ExperimentalTag, NoAwaitTag, google::cloud::run::v2::RunJobRequest const& request) override; - future> RunJob( + future> RunJob( ExperimentalTag, google::longrunning::Operation const& operation) override; diff --git a/google/cloud/run/v2/jobs_client.cc b/google/cloud/run/v2/jobs_client.cc index bc9acecafd6ca..f6117fd18ec1e 100644 --- a/google/cloud/run/v2/jobs_client.cc +++ b/google/cloud/run/v2/jobs_client.cc @@ -175,8 +175,8 @@ future> JobsClient::DeleteJob( return connection_->DeleteJob(ExperimentalTag{}, operation); } -future> JobsClient::RunJob( - std::string const& name, Options opts) { +future> JobsClient::RunJob(std::string const& name, + Options opts) { internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); google::cloud::run::v2::RunJobRequest request; request.set_name(name); @@ -191,7 +191,7 @@ StatusOr JobsClient::RunJob( return connection_->RunJob(ExperimentalTag{}, NoAwaitTag{}, request); } -future> JobsClient::RunJob( +future> JobsClient::RunJob( google::cloud::run::v2::RunJobRequest const& request, Options opts) { internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); return connection_->RunJob(request); @@ -204,7 +204,7 @@ StatusOr JobsClient::RunJob( return connection_->RunJob(ExperimentalTag{}, NoAwaitTag{}, request); } -future> JobsClient::RunJob( +future> JobsClient::RunJob( ExperimentalTag, google::longrunning::Operation const& operation, Options opts) { internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); diff --git a/google/cloud/run/v2/jobs_client.h b/google/cloud/run/v2/jobs_client.h index a63f8c74f060e..927e1dca3696f 100644 --- a/google/cloud/run/v2/jobs_client.h +++ b/google/cloud/run/v2/jobs_client.h @@ -117,8 +117,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.CreateJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L182} - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} + /// [google.cloud.run.v2.CreateJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L181} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} /// // clang-format on future> CreateJob( @@ -171,8 +171,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.CreateJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L182} - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} + /// [google.cloud.run.v2.CreateJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L181} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} /// // clang-format on future> CreateJob( @@ -228,8 +228,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.GetJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L204} - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} + /// [google.cloud.run.v2.GetJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L203} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} /// // clang-format on StatusOr GetJob(std::string const& name, @@ -258,8 +258,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.GetJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L204} - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} + /// [google.cloud.run.v2.GetJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L203} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} /// // clang-format on StatusOr GetJob( @@ -267,7 +267,7 @@ class JobsClient { // clang-format off /// - /// Lists Jobs. + /// Lists Jobs. Results are sorted by creation time, descending. /// /// @param parent Required. The location and project to list resources on. /// Format: projects/{project}/locations/{location}, where {project} can be @@ -294,8 +294,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} - /// [google.cloud.run.v2.ListJobsRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L230} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} + /// [google.cloud.run.v2.ListJobsRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L229} /// // clang-format on StreamRange ListJobs(std::string const& parent, @@ -303,7 +303,7 @@ class JobsClient { // clang-format off /// - /// Lists Jobs. + /// Lists Jobs. Results are sorted by creation time, descending. /// /// @param request Unary RPCs, such as the one wrapped by this /// function, receive a single `request` proto message which includes all @@ -333,8 +333,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} - /// [google.cloud.run.v2.ListJobsRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L230} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} + /// [google.cloud.run.v2.ListJobsRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L229} /// // clang-format on StreamRange ListJobs( @@ -365,8 +365,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} - /// [google.cloud.run.v2.UpdateJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L215} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} + /// [google.cloud.run.v2.UpdateJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L214} /// // clang-format on future> UpdateJob( @@ -417,8 +417,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} - /// [google.cloud.run.v2.UpdateJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L215} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} + /// [google.cloud.run.v2.UpdateJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L214} /// // clang-format on future> UpdateJob( @@ -481,8 +481,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.DeleteJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L261} - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} + /// [google.cloud.run.v2.DeleteJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L260} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} /// // clang-format on future> DeleteJob( @@ -534,8 +534,8 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.DeleteJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L261} - /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L336} + /// [google.cloud.run.v2.DeleteJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L260} + /// [google.cloud.run.v2.Job]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L335} /// // clang-format on future> DeleteJob( @@ -587,7 +587,7 @@ class JobsClient { /// In this case the [`StatusOr`] returned by the future contains the /// error. If the LRO completes successfully the value of the future /// contains the LRO's result. For this RPC the result is a - /// [google.cloud.run.v2.Execution] proto message. + /// [Execution] proto message. /// The C++ class representing this message is created by Protobuf, using /// the [Protobuf mapping rules]. /// @@ -598,12 +598,11 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} - /// [google.cloud.run.v2.RunJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L280} + /// [google.cloud.run.v2.RunJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L279} /// // clang-format on - future> RunJob( - std::string const& name, Options opts = {}); + future> RunJob(std::string const& name, + Options opts = {}); // clang-format off /// @@ -639,7 +638,7 @@ class JobsClient { /// In this case the [`StatusOr`] returned by the future contains the /// error. If the LRO completes successfully the value of the future /// contains the LRO's result. For this RPC the result is a - /// [google.cloud.run.v2.Execution] proto message. + /// [Execution] proto message. /// The C++ class representing this message is created by Protobuf, using /// the [Protobuf mapping rules]. /// @@ -650,11 +649,10 @@ class JobsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Execution]: @googleapis_reference_link{google/cloud/run/v2/execution.proto#L173} - /// [google.cloud.run.v2.RunJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L280} + /// [google.cloud.run.v2.RunJobRequest]: @googleapis_reference_link{google/cloud/run/v2/job.proto#L279} /// // clang-format on - future> RunJob( + future> RunJob( google::cloud::run::v2::RunJobRequest const& request, Options opts = {}); // clang-format off @@ -681,7 +679,7 @@ class JobsClient { /// of the LRO in the background. /// // clang-format on - future> RunJob( + future> RunJob( ExperimentalTag, google::longrunning::Operation const& operation, Options opts = {}); diff --git a/google/cloud/run/v2/jobs_connection.cc b/google/cloud/run/v2/jobs_connection.cc index c59c5e1dd3237..5fd9add6ab29f 100644 --- a/google/cloud/run/v2/jobs_connection.cc +++ b/google/cloud/run/v2/jobs_connection.cc @@ -113,10 +113,9 @@ future> JobsConnection::DeleteJob( Status(StatusCode::kUnimplemented, "not implemented")); } -future> JobsConnection::RunJob( +future> JobsConnection::RunJob( google::cloud::run::v2::RunJobRequest const&) { - return google::cloud::make_ready_future< - StatusOr>( + return google::cloud::make_ready_future>( Status(StatusCode::kUnimplemented, "not implemented")); } @@ -126,10 +125,9 @@ StatusOr JobsConnection::RunJob( Status(StatusCode::kUnimplemented, "not implemented")); } -future> JobsConnection::RunJob( +future> JobsConnection::RunJob( ExperimentalTag, google::longrunning::Operation const&) { - return google::cloud::make_ready_future< - StatusOr>( + return google::cloud::make_ready_future>( Status(StatusCode::kUnimplemented, "not implemented")); } diff --git a/google/cloud/run/v2/jobs_connection.h b/google/cloud/run/v2/jobs_connection.h index 089fc6ff27107..59fe7d50edab1 100644 --- a/google/cloud/run/v2/jobs_connection.h +++ b/google/cloud/run/v2/jobs_connection.h @@ -219,14 +219,14 @@ class JobsConnection { virtual future> DeleteJob( ExperimentalTag, google::longrunning::Operation const& operation); - virtual future> RunJob( + virtual future> RunJob( google::cloud::run::v2::RunJobRequest const& request); virtual StatusOr RunJob( ExperimentalTag, NoAwaitTag, google::cloud::run::v2::RunJobRequest const& request); - virtual future> RunJob( + virtual future> RunJob( ExperimentalTag, google::longrunning::Operation const& operation); virtual StatusOr GetIamPolicy( diff --git a/google/cloud/run/v2/mocks/mock_jobs_connection.h b/google/cloud/run/v2/mocks/mock_jobs_connection.h index 1739e7b5e0da5..53dab6af5039c 100644 --- a/google/cloud/run/v2/mocks/mock_jobs_connection.h +++ b/google/cloud/run/v2/mocks/mock_jobs_connection.h @@ -107,7 +107,7 @@ class MockJobsConnection : public run_v2::JobsConnection { /// Due to additional overloads for this method /// `EXPECT_CALL(*mock, RunJob)` is now ambiguous. Use /// `EXPECT_CALL(*mock, RunJob(::testing::_))` instead. - MOCK_METHOD(future>, RunJob, + MOCK_METHOD(future>, RunJob, (google::cloud::run::v2::RunJobRequest const& request), (override)); @@ -116,7 +116,7 @@ class MockJobsConnection : public run_v2::JobsConnection { google::cloud::run::v2::RunJobRequest const& request), (override)); - MOCK_METHOD(future>, RunJob, + MOCK_METHOD(future>, RunJob, (ExperimentalTag, google::longrunning::Operation const& operation), (override)); diff --git a/google/cloud/run/v2/revisions_client.h b/google/cloud/run/v2/revisions_client.h index 792b50eb7d384..65e7c9032ed74 100644 --- a/google/cloud/run/v2/revisions_client.h +++ b/google/cloud/run/v2/revisions_client.h @@ -107,8 +107,8 @@ class RevisionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.GetRevisionRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L93} - /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L161} + /// [google.cloud.run.v2.GetRevisionRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L94} + /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L162} /// // clang-format on StatusOr GetRevision( @@ -137,8 +137,8 @@ class RevisionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.GetRevisionRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L93} - /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L161} + /// [google.cloud.run.v2.GetRevisionRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L94} + /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L162} /// // clang-format on StatusOr GetRevision( @@ -147,7 +147,8 @@ class RevisionsClient { // clang-format off /// - /// Lists Revisions from a given Service, or from a given location. + /// Lists Revisions from a given Service, or from a given location. Results + /// are sorted by creation time, descending. /// /// @param parent Required. The Service from which the Revisions should be listed. /// To list all Revisions across Services, use "-" instead of Service name. @@ -175,8 +176,8 @@ class RevisionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.ListRevisionsRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L104} - /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L161} + /// [google.cloud.run.v2.ListRevisionsRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L105} + /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L162} /// // clang-format on StreamRange ListRevisions( @@ -184,7 +185,8 @@ class RevisionsClient { // clang-format off /// - /// Lists Revisions from a given Service, or from a given location. + /// Lists Revisions from a given Service, or from a given location. Results + /// are sorted by creation time, descending. /// /// @param request Unary RPCs, such as the one wrapped by this /// function, receive a single `request` proto message which includes all @@ -214,8 +216,8 @@ class RevisionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.ListRevisionsRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L104} - /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L161} + /// [google.cloud.run.v2.ListRevisionsRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L105} + /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L162} /// // clang-format on StreamRange ListRevisions( @@ -248,8 +250,8 @@ class RevisionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.DeleteRevisionRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L140} - /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L161} + /// [google.cloud.run.v2.DeleteRevisionRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L141} + /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L162} /// // clang-format on future> DeleteRevision( @@ -299,8 +301,8 @@ class RevisionsClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.DeleteRevisionRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L140} - /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L161} + /// [google.cloud.run.v2.DeleteRevisionRequest]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L141} + /// [google.cloud.run.v2.Revision]: @googleapis_reference_link{google/cloud/run/v2/revision.proto#L162} /// // clang-format on future> DeleteRevision( diff --git a/google/cloud/run/v2/services_client.cc b/google/cloud/run/v2/services_client.cc index 4564e3fd0cbfe..98d557669375d 100644 --- a/google/cloud/run/v2/services_client.cc +++ b/google/cloud/run/v2/services_client.cc @@ -120,6 +120,26 @@ StatusOr ServicesClient::UpdateService( return connection_->UpdateService(ExperimentalTag{}, NoAwaitTag{}, request); } +future> ServicesClient::UpdateService( + google::cloud::run::v2::Service const& service, + google::protobuf::FieldMask const& update_mask, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::run::v2::UpdateServiceRequest request; + *request.mutable_service() = service; + *request.mutable_update_mask() = update_mask; + return connection_->UpdateService(request); +} + +StatusOr ServicesClient::UpdateService( + ExperimentalTag, NoAwaitTag, google::cloud::run::v2::Service const& service, + google::protobuf::FieldMask const& update_mask, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::run::v2::UpdateServiceRequest request; + *request.mutable_service() = service; + *request.mutable_update_mask() = update_mask; + return connection_->UpdateService(ExperimentalTag{}, NoAwaitTag{}, request); +} + future> ServicesClient::UpdateService( google::cloud::run::v2::UpdateServiceRequest const& request, Options opts) { internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); diff --git a/google/cloud/run/v2/services_client.h b/google/cloud/run/v2/services_client.h index 0fc4345eb44ef..1e01a5991e118 100644 --- a/google/cloud/run/v2/services_client.h +++ b/google/cloud/run/v2/services_client.h @@ -118,8 +118,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.CreateServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L166} - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} + /// [google.cloud.run.v2.CreateServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L168} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} /// // clang-format on future> CreateService( @@ -172,8 +172,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.CreateServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L166} - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} + /// [google.cloud.run.v2.CreateServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L168} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} /// // clang-format on future> CreateService( @@ -229,8 +229,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.GetServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L240} - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} + /// [google.cloud.run.v2.GetServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L246} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} /// // clang-format on StatusOr GetService(std::string const& name, @@ -259,8 +259,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.GetServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L240} - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} + /// [google.cloud.run.v2.GetServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L246} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} /// // clang-format on StatusOr GetService( @@ -269,7 +269,7 @@ class ServicesClient { // clang-format off /// - /// Lists Services. + /// Lists Services. Results are sorted by creation time, descending. /// /// @param parent Required. The location and project to list resources on. /// Location must be a valid Google Cloud region, and cannot be the "-" @@ -297,8 +297,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.ListServicesRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L206} - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} + /// [google.cloud.run.v2.ListServicesRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L212} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} /// // clang-format on StreamRange ListServices( @@ -306,7 +306,7 @@ class ServicesClient { // clang-format off /// - /// Lists Services. + /// Lists Services. Results are sorted by creation time, descending. /// /// @param request Unary RPCs, such as the one wrapped by this /// function, receive a single `request` proto message which includes all @@ -336,8 +336,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.ListServicesRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L206} - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} + /// [google.cloud.run.v2.ListServicesRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L212} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} /// // clang-format on StreamRange ListServices( @@ -368,8 +368,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} - /// [google.cloud.run.v2.UpdateServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L191} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} + /// [google.cloud.run.v2.UpdateServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L193} /// // clang-format on future> UpdateService( @@ -390,6 +390,56 @@ class ServicesClient { ExperimentalTag, NoAwaitTag, google::cloud::run::v2::Service const& service, Options opts = {}); + // clang-format off + /// + /// Updates a Service. + /// + /// @param service Required. The Service to be updated. + /// @param update_mask Optional. The list of fields to be updated. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return A [`future`] that becomes satisfied when the LRO + /// ([Long Running Operation]) completes or the polling policy in effect + /// for this call is exhausted. The future is satisfied with an error if + /// the LRO completes with an error or the polling policy is exhausted. + /// In this case the [`StatusOr`] returned by the future contains the + /// error. If the LRO completes successfully the value of the future + /// contains the LRO's result. For this RPC the result is a + /// [google.cloud.run.v2.Service] proto message. + /// The C++ class representing this message is created by Protobuf, using + /// the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [Long Running Operation]: https://google.aip.dev/151 + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} + /// [google.cloud.run.v2.UpdateServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L193} + /// + // clang-format on + future> UpdateService( + google::cloud::run::v2::Service const& service, + google::protobuf::FieldMask const& update_mask, Options opts = {}); + + // clang-format off + /// + /// @copybrief UpdateService + /// + /// Specifying the [`NoAwaitTag`] immediately returns the + /// [`google::longrunning::Operation`] that corresponds to the Long Running + /// Operation that has been started. No polling for operation status occurs. + /// + /// [`NoAwaitTag`]: @ref google::cloud::NoAwaitTag + /// + // clang-format on + StatusOr UpdateService( + ExperimentalTag, NoAwaitTag, + google::cloud::run::v2::Service const& service, + google::protobuf::FieldMask const& update_mask, Options opts = {}); + // clang-format off /// /// Updates a Service. @@ -420,8 +470,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} - /// [google.cloud.run.v2.UpdateServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L191} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} + /// [google.cloud.run.v2.UpdateServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L193} /// // clang-format on future> UpdateService( @@ -486,8 +536,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.DeleteServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L251} - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} + /// [google.cloud.run.v2.DeleteServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L257} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} /// // clang-format on future> DeleteService( @@ -539,8 +589,8 @@ class ServicesClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.run.v2.DeleteServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L251} - /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L274} + /// [google.cloud.run.v2.DeleteServiceRequest]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L257} + /// [google.cloud.run.v2.Service]: @googleapis_reference_link{google/cloud/run/v2/service.proto#L280} /// // clang-format on future> DeleteService( diff --git a/google/cloud/securesourcemanager/v1/secure_source_manager_client.h b/google/cloud/securesourcemanager/v1/secure_source_manager_client.h index ccc049847c70d..2790da5753d5c 100644 --- a/google/cloud/securesourcemanager/v1/secure_source_manager_client.h +++ b/google/cloud/securesourcemanager/v1/secure_source_manager_client.h @@ -138,7 +138,7 @@ class SecureSourceManagerClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securesourcemanager.v1.Instance]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L201} - /// [google.cloud.securesourcemanager.v1.ListInstancesRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L497} + /// [google.cloud.securesourcemanager.v1.ListInstancesRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L542} /// // clang-format on StreamRange ListInstances( @@ -177,7 +177,7 @@ class SecureSourceManagerClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securesourcemanager.v1.Instance]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L201} - /// [google.cloud.securesourcemanager.v1.ListInstancesRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L497} + /// [google.cloud.securesourcemanager.v1.ListInstancesRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L542} /// // clang-format on StreamRange ListInstances( @@ -202,7 +202,7 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.GetInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L532} + /// [google.cloud.securesourcemanager.v1.GetInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L577} /// [google.cloud.securesourcemanager.v1.Instance]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L201} /// // clang-format on @@ -232,7 +232,7 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.GetInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L532} + /// [google.cloud.securesourcemanager.v1.GetInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L577} /// [google.cloud.securesourcemanager.v1.Instance]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L201} /// // clang-format on @@ -267,7 +267,7 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.CreateInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L543} + /// [google.cloud.securesourcemanager.v1.CreateInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L588} /// [google.cloud.securesourcemanager.v1.Instance]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L201} /// // clang-format on @@ -323,7 +323,7 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.CreateInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L543} + /// [google.cloud.securesourcemanager.v1.CreateInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L588} /// [google.cloud.securesourcemanager.v1.Instance]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L201} /// // clang-format on @@ -389,8 +389,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.DeleteInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L575} - /// [google.cloud.securesourcemanager.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L601} + /// [google.cloud.securesourcemanager.v1.DeleteInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L620} + /// [google.cloud.securesourcemanager.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L646} /// // clang-format on future> @@ -440,8 +440,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.DeleteInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L575} - /// [google.cloud.securesourcemanager.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L601} + /// [google.cloud.securesourcemanager.v1.DeleteInstanceRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L620} + /// [google.cloud.securesourcemanager.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L646} /// // clang-format on future> @@ -510,8 +510,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.ListRepositoriesRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L631} - /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L301} + /// [google.cloud.securesourcemanager.v1.ListRepositoriesRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L676} + /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L344} /// // clang-format on StreamRange @@ -551,8 +551,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.ListRepositoriesRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L631} - /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L301} + /// [google.cloud.securesourcemanager.v1.ListRepositoriesRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L676} + /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L344} /// // clang-format on StreamRange @@ -582,8 +582,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.GetRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L660} - /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L301} + /// [google.cloud.securesourcemanager.v1.GetRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L705} + /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L344} /// // clang-format on StatusOr GetRepository( @@ -614,8 +614,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.GetRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L660} - /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L301} + /// [google.cloud.securesourcemanager.v1.GetRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L705} + /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L344} /// // clang-format on StatusOr GetRepository( @@ -655,8 +655,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.CreateRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L673} - /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L301} + /// [google.cloud.securesourcemanager.v1.CreateRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L718} + /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L344} /// // clang-format on future> @@ -713,8 +713,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.CreateRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L673} - /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L301} + /// [google.cloud.securesourcemanager.v1.CreateRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L718} + /// [google.cloud.securesourcemanager.v1.Repository]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L344} /// // clang-format on future> @@ -783,8 +783,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.DeleteRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L693} - /// [google.cloud.securesourcemanager.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L601} + /// [google.cloud.securesourcemanager.v1.DeleteRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L738} + /// [google.cloud.securesourcemanager.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L646} /// // clang-format on future> @@ -836,8 +836,8 @@ class SecureSourceManagerClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securesourcemanager.v1.DeleteRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L693} - /// [google.cloud.securesourcemanager.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L601} + /// [google.cloud.securesourcemanager.v1.DeleteRepositoryRequest]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L738} + /// [google.cloud.securesourcemanager.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/securesourcemanager/v1/secure_source_manager.proto#L646} /// // clang-format on future> diff --git a/google/cloud/securitycenter/v1/.repo-metadata.json b/google/cloud/securitycenter/v1/.repo-metadata.json index fa3b14805a629..afb4dcf4acaf5 100644 --- a/google/cloud/securitycenter/v1/.repo-metadata.json +++ b/google/cloud/securitycenter/v1/.repo-metadata.json @@ -3,11 +3,11 @@ "api_shortname": "securitycenter", "client_documentation": "https://cloud.google.com/cpp/docs/reference/securitycenter/latest", "distribution_name": "google-cloud-cpp", - "issue_tracker": "https://issuetracker.google.com/savedsearches/6123493", + "issue_tracker": "https://issuetracker.google.com/issues?q=componentid:709980%20status=open", "language": "cpp", "library_type": "GAPIC_AUTO", "name_pretty": "Security Command Center API", - "product_documentation": "https://cloud.google.com/security-command-center", + "product_documentation": "https://cloud.google.com/security-command-center/docs/reference/rest", "release_level": "stable", "repo": "googleapis/google-cloud-cpp", "requires_billing": true diff --git a/google/cloud/securitycenter/v1/internal/security_center_auth_decorator.cc b/google/cloud/securitycenter/v1/internal/security_center_auth_decorator.cc index 8c3533fea0aac..2f8619f422908 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_auth_decorator.cc +++ b/google/cloud/securitycenter/v1/internal/security_center_auth_decorator.cc @@ -134,6 +134,25 @@ Status SecurityCenterAuth::DeleteSecurityHealthAnalyticsCustomModule( request); } +StatusOr +SecurityCenterAuth::GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->GetSimulation(context, options, request); +} + +StatusOr +SecurityCenterAuth::GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->GetValuedResource(context, options, request); +} + StatusOr SecurityCenterAuth::GetBigQueryExport( grpc::ClientContext& context, Options const& options, @@ -509,6 +528,177 @@ SecurityCenterAuth::ListBigQueryExports( return child_->ListBigQueryExports(context, options, request); } +StatusOr +SecurityCenterAuth::CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->CreateEventThreatDetectionCustomModule(context, options, + request); +} + +Status SecurityCenterAuth::DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->DeleteEventThreatDetectionCustomModule(context, options, + request); +} + +StatusOr +SecurityCenterAuth::GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->GetEventThreatDetectionCustomModule(context, options, request); +} + +StatusOr +SecurityCenterAuth::ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ListDescendantEventThreatDetectionCustomModules( + context, options, request); +} + +StatusOr +SecurityCenterAuth::ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ListEventThreatDetectionCustomModules(context, options, + request); +} + +StatusOr +SecurityCenterAuth::UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->UpdateEventThreatDetectionCustomModule(context, options, + request); +} + +StatusOr +SecurityCenterAuth::ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ValidateEventThreatDetectionCustomModule(context, options, + request); +} + +StatusOr +SecurityCenterAuth::GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->GetEffectiveEventThreatDetectionCustomModule(context, options, + request); +} + +StatusOr +SecurityCenterAuth::ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ListEffectiveEventThreatDetectionCustomModules( + context, options, request); +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +SecurityCenterAuth::BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->BatchCreateResourceValueConfigs(context, options, request); +} + +Status SecurityCenterAuth::DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->DeleteResourceValueConfig(context, options, request); +} + +StatusOr +SecurityCenterAuth::GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->GetResourceValueConfig(context, options, request); +} + +StatusOr +SecurityCenterAuth::ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ListResourceValueConfigs(context, options, request); +} + +StatusOr +SecurityCenterAuth::UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->UpdateResourceValueConfig(context, options, request); +} + +StatusOr +SecurityCenterAuth::ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ListValuedResources(context, options, request); +} + +StatusOr +SecurityCenterAuth::ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ListAttackPaths(context, options, request); +} + future> SecurityCenterAuth::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/securitycenter/v1/internal/security_center_auth_decorator.h b/google/cloud/securitycenter/v1/internal/security_center_auth_decorator.h index fe1f988a62c24..47f8734bab2f9 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_auth_decorator.h +++ b/google/cloud/securitycenter/v1/internal/security_center_auth_decorator.h @@ -96,6 +96,16 @@ class SecurityCenterAuth : public SecurityCenterStub { DeleteSecurityHealthAnalyticsCustomModuleRequest const& request) override; + StatusOr GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) + override; + + StatusOr GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) override; + StatusOr GetBigQueryExport( grpc::ClientContext& context, Options const& options, google::cloud::securitycenter::v1::GetBigQueryExportRequest const& @@ -312,6 +322,113 @@ class SecurityCenterAuth : public SecurityCenterStub { google::cloud::securitycenter::v1::ListBigQueryExportsRequest const& request) override; + StatusOr + CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) + override; + + Status DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) override; + + StatusOr + ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) override; + + StatusOr + UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) override; + + Status DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) override; + + StatusOr + GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) override; + + StatusOr + ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) override; + + StatusOr + UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) override; + + StatusOr + ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) override; + + StatusOr + ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) + override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/securitycenter/v1/internal/security_center_connection_impl.cc b/google/cloud/securitycenter/v1/internal/security_center_connection_impl.cc index 44a085db3b855..ed0165fb12eac 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_connection_impl.cc +++ b/google/cloud/securitycenter/v1/internal/security_center_connection_impl.cc @@ -286,6 +286,37 @@ Status SecurityCenterConnectionImpl::DeleteSecurityHealthAnalyticsCustomModule( *current, request, __func__); } +StatusOr +SecurityCenterConnectionImpl::GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->GetSimulation(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& + request) { + return stub_->GetSimulation(context, options, request); + }, + *current, request, __func__); +} + +StatusOr +SecurityCenterConnectionImpl::GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->GetValuedResource(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) { + return stub_->GetValuedResource(context, options, request); + }, + *current, request, __func__); +} + StatusOr SecurityCenterConnectionImpl::GetBigQueryExport( google::cloud::securitycenter::v1::GetBigQueryExportRequest const& @@ -1184,6 +1215,421 @@ SecurityCenterConnectionImpl::ListBigQueryExports( }); } +StatusOr +SecurityCenterConnectionImpl::CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->CreateEventThreatDetectionCustomModule( + request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) { + return stub_->CreateEventThreatDetectionCustomModule(context, options, + request); + }, + *current, request, __func__); +} + +Status SecurityCenterConnectionImpl::DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->DeleteEventThreatDetectionCustomModule( + request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) { + return stub_->DeleteEventThreatDetectionCustomModule(context, options, + request); + }, + *current, request, __func__); +} + +StatusOr +SecurityCenterConnectionImpl::GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->GetEventThreatDetectionCustomModule( + request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) { + return stub_->GetEventThreatDetectionCustomModule(context, options, + request); + }, + *current, request, __func__); +} + +StreamRange +SecurityCenterConnectionImpl::ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = + idempotency_policy(*current) + ->ListDescendantEventThreatDetectionCustomModules(request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& r) { + return google::cloud::internal::RetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub]( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& + request) { + return stub->ListDescendantEventThreatDetectionCustomModules( + context, options, request); + }, + options, r, function_name); + }, + [](google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesResponse r) { + std::vector< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + result(r.event_threat_detection_custom_modules().size()); + auto& messages = *r.mutable_event_threat_detection_custom_modules(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + +StreamRange +SecurityCenterConnectionImpl::ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = + idempotency_policy(*current)->ListEventThreatDetectionCustomModules( + request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& r) { + return google::cloud::internal::RetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& + request) { + return stub->ListEventThreatDetectionCustomModules( + context, options, request); + }, + options, r, function_name); + }, + [](google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesResponse r) { + std::vector< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + result(r.event_threat_detection_custom_modules().size()); + auto& messages = *r.mutable_event_threat_detection_custom_modules(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + +StatusOr +SecurityCenterConnectionImpl::UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->UpdateEventThreatDetectionCustomModule( + request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) { + return stub_->UpdateEventThreatDetectionCustomModule(context, options, + request); + }, + *current, request, __func__); +} + +StatusOr +SecurityCenterConnectionImpl::ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->ValidateEventThreatDetectionCustomModule( + request), + [this]( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) { + return stub_->ValidateEventThreatDetectionCustomModule(context, options, + request); + }, + *current, request, __func__); +} + +StatusOr +SecurityCenterConnectionImpl::GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current) + ->GetEffectiveEventThreatDetectionCustomModule(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& + request) { + return stub_->GetEffectiveEventThreatDetectionCustomModule( + context, options, request); + }, + *current, request, __func__); +} + +StreamRange +SecurityCenterConnectionImpl::ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = + idempotency_policy(*current) + ->ListEffectiveEventThreatDetectionCustomModules(request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange< + StreamRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& r) { + return google::cloud::internal::RetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub]( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& + request) { + return stub->ListEffectiveEventThreatDetectionCustomModules( + context, options, request); + }, + options, r, function_name); + }, + [](google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesResponse r) { + std::vector + result(r.effective_event_threat_detection_custom_modules().size()); + auto& messages = + *r.mutable_effective_event_threat_detection_custom_modules(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +SecurityCenterConnectionImpl::BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->BatchCreateResourceValueConfigs(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) { + return stub_->BatchCreateResourceValueConfigs(context, options, + request); + }, + *current, request, __func__); +} + +Status SecurityCenterConnectionImpl::DeleteResourceValueConfig( + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->DeleteResourceValueConfig(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteResourceValueConfigRequest const& request) { + return stub_->DeleteResourceValueConfig(context, options, request); + }, + *current, request, __func__); +} + +StatusOr +SecurityCenterConnectionImpl::GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->GetResourceValueConfig(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetResourceValueConfigRequest const& request) { + return stub_->GetResourceValueConfig(context, options, request); + }, + *current, request, __func__); +} + +StreamRange +SecurityCenterConnectionImpl::ListResourceValueConfigs( + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest + request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = + idempotency_policy(*current)->ListResourceValueConfigs(request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange< + StreamRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, + google::cloud::securitycenter::v1:: + ListResourceValueConfigsRequest const& r) { + return google::cloud::internal::RetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListResourceValueConfigsRequest const& request) { + return stub->ListResourceValueConfigs(context, options, request); + }, + options, r, function_name); + }, + [](google::cloud::securitycenter::v1::ListResourceValueConfigsResponse + r) { + std::vector + result(r.resource_value_configs().size()); + auto& messages = *r.mutable_resource_value_configs(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + +StatusOr +SecurityCenterConnectionImpl::UpdateResourceValueConfig( + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->UpdateResourceValueConfig(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateResourceValueConfigRequest const& request) { + return stub_->UpdateResourceValueConfig(context, options, request); + }, + *current, request, __func__); +} + +StreamRange +SecurityCenterConnectionImpl::ListValuedResources( + google::cloud::securitycenter::v1::ListValuedResourcesRequest request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = idempotency_policy(*current)->ListValuedResources(request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange< + StreamRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + r) { + return google::cloud::internal::RetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListValuedResourcesRequest const& request) { + return stub->ListValuedResources(context, options, request); + }, + options, r, function_name); + }, + [](google::cloud::securitycenter::v1::ListValuedResourcesResponse r) { + std::vector result( + r.valued_resources().size()); + auto& messages = *r.mutable_valued_resources(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + +StreamRange +SecurityCenterConnectionImpl::ListAttackPaths( + google::cloud::securitycenter::v1::ListAttackPathsRequest request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = idempotency_policy(*current)->ListAttackPaths(request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange< + StreamRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& r) { + return google::cloud::internal::RetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub]( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& + request) { + return stub->ListAttackPaths(context, options, request); + }, + options, r, function_name); + }, + [](google::cloud::securitycenter::v1::ListAttackPathsResponse r) { + std::vector result( + r.attack_paths().size()); + auto& messages = *r.mutable_attack_paths(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END } // namespace securitycenter_v1_internal } // namespace cloud diff --git a/google/cloud/securitycenter/v1/internal/security_center_connection_impl.h b/google/cloud/securitycenter/v1/internal/security_center_connection_impl.h index 44d8238a0152a..0362a608472db 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_connection_impl.h +++ b/google/cloud/securitycenter/v1/internal/security_center_connection_impl.h @@ -103,6 +103,14 @@ class SecurityCenterConnectionImpl DeleteSecurityHealthAnalyticsCustomModuleRequest const& request) override; + StatusOr GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const& request) + override; + + StatusOr GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) override; + StatusOr GetBigQueryExport( google::cloud::securitycenter::v1::GetBigQueryExportRequest const& request) override; @@ -283,6 +291,96 @@ class SecurityCenterConnectionImpl google::cloud::securitycenter::v1::ListBigQueryExportsRequest request) override; + StatusOr + CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) + override; + + Status DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) override; + + StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request) + override; + + StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request) override; + + StatusOr + UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) + override; + + StreamRange + ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request) + override; + + StatusOr + BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) override; + + Status DeleteResourceValueConfig( + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) override; + + StatusOr + GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) override; + + StreamRange + ListResourceValueConfigs( + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest + request) override; + + StatusOr + UpdateResourceValueConfig( + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) override; + + StreamRange + ListValuedResources( + google::cloud::securitycenter::v1::ListValuedResourcesRequest request) + override; + + StreamRange ListAttackPaths( + google::cloud::securitycenter::v1::ListAttackPathsRequest request) + override; + private: std::unique_ptr background_; std::shared_ptr stub_; diff --git a/google/cloud/securitycenter/v1/internal/security_center_logging_decorator.cc b/google/cloud/securitycenter/v1/internal/security_center_logging_decorator.cc index ddfd40af1108d..bc564fa47278c 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_logging_decorator.cc +++ b/google/cloud/securitycenter/v1/internal/security_center_logging_decorator.cc @@ -174,6 +174,33 @@ Status SecurityCenterLogging::DeleteSecurityHealthAnalyticsCustomModule( context, options, request, __func__, tracing_options_); } +StatusOr +SecurityCenterLogging::GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& + request) { + return child_->GetSimulation(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) { + return child_->GetValuedResource(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + StatusOr SecurityCenterLogging::GetBigQueryExport( grpc::ClientContext& context, Options const& options, @@ -703,6 +730,248 @@ SecurityCenterLogging::ListBigQueryExports( context, options, request, __func__, tracing_options_); } +StatusOr +SecurityCenterLogging::CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) { + return child_->CreateEventThreatDetectionCustomModule(context, options, + request); + }, + context, options, request, __func__, tracing_options_); +} + +Status SecurityCenterLogging::DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) { + return child_->DeleteEventThreatDetectionCustomModule(context, options, + request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) { + return child_->GetEventThreatDetectionCustomModule(context, options, + request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& + request) { + return child_->ListDescendantEventThreatDetectionCustomModules( + context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) { + return child_->ListEventThreatDetectionCustomModules(context, options, + request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) { + return child_->UpdateEventThreatDetectionCustomModule(context, options, + request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) { + return google::cloud::internal::LogWrapper( + [this]( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) { + return child_->ValidateEventThreatDetectionCustomModule( + context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& + request) { + return child_->GetEffectiveEventThreatDetectionCustomModule( + context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& + request) { + return child_->ListEffectiveEventThreatDetectionCustomModules( + context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +SecurityCenterLogging::BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) { + return child_->BatchCreateResourceValueConfigs(context, options, + request); + }, + context, options, request, __func__, tracing_options_); +} + +Status SecurityCenterLogging::DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteResourceValueConfigRequest const& request) { + return child_->DeleteResourceValueConfig(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetResourceValueConfigRequest const& request) { + return child_->GetResourceValueConfig(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListResourceValueConfigsRequest const& request) { + return child_->ListResourceValueConfigs(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateResourceValueConfigRequest const& request) { + return child_->UpdateResourceValueConfig(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this]( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) { + return child_->ListValuedResources(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +SecurityCenterLogging::ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& + request) { + return child_->ListAttackPaths(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + future> SecurityCenterLogging::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/securitycenter/v1/internal/security_center_logging_decorator.h b/google/cloud/securitycenter/v1/internal/security_center_logging_decorator.h index 2ba27cdb75564..b68ad8ad02118 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_logging_decorator.h +++ b/google/cloud/securitycenter/v1/internal/security_center_logging_decorator.h @@ -96,6 +96,16 @@ class SecurityCenterLogging : public SecurityCenterStub { DeleteSecurityHealthAnalyticsCustomModuleRequest const& request) override; + StatusOr GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) + override; + + StatusOr GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) override; + StatusOr GetBigQueryExport( grpc::ClientContext& context, Options const& options, google::cloud::securitycenter::v1::GetBigQueryExportRequest const& @@ -312,6 +322,113 @@ class SecurityCenterLogging : public SecurityCenterStub { google::cloud::securitycenter::v1::ListBigQueryExportsRequest const& request) override; + StatusOr + CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) + override; + + Status DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) override; + + StatusOr + ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) override; + + StatusOr + UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) override; + + Status DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) override; + + StatusOr + GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) override; + + StatusOr + ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) override; + + StatusOr + UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) override; + + StatusOr + ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) override; + + StatusOr + ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) + override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/securitycenter/v1/internal/security_center_metadata_decorator.cc b/google/cloud/securitycenter/v1/internal/security_center_metadata_decorator.cc index 350413b790689..2c2257ba44db4 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_metadata_decorator.cc +++ b/google/cloud/securitycenter/v1/internal/security_center_metadata_decorator.cc @@ -138,6 +138,25 @@ Status SecurityCenterMetadata::DeleteSecurityHealthAnalyticsCustomModule( request); } +StatusOr +SecurityCenterMetadata::GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->GetSimulation(context, options, request); +} + +StatusOr +SecurityCenterMetadata::GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->GetValuedResource(context, options, request); +} + StatusOr SecurityCenterMetadata::GetBigQueryExport( grpc::ClientContext& context, Options const& options, @@ -526,6 +545,182 @@ SecurityCenterMetadata::ListBigQueryExports( return child_->ListBigQueryExports(context, options, request); } +StatusOr +SecurityCenterMetadata::CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->CreateEventThreatDetectionCustomModule(context, options, + request); +} + +Status SecurityCenterMetadata::DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->DeleteEventThreatDetectionCustomModule(context, options, + request); +} + +StatusOr +SecurityCenterMetadata::GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->GetEventThreatDetectionCustomModule(context, options, request); +} + +StatusOr +SecurityCenterMetadata::ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ListDescendantEventThreatDetectionCustomModules( + context, options, request); +} + +StatusOr +SecurityCenterMetadata::ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ListEventThreatDetectionCustomModules(context, options, + request); +} + +StatusOr +SecurityCenterMetadata::UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) { + SetMetadata( + context, options, + absl::StrCat("event_threat_detection_custom_module.name=", + internal::UrlEncode( + request.event_threat_detection_custom_module().name()))); + return child_->UpdateEventThreatDetectionCustomModule(context, options, + request); +} + +StatusOr +SecurityCenterMetadata::ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ValidateEventThreatDetectionCustomModule(context, options, + request); +} + +StatusOr +SecurityCenterMetadata::GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->GetEffectiveEventThreatDetectionCustomModule(context, options, + request); +} + +StatusOr +SecurityCenterMetadata::ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ListEffectiveEventThreatDetectionCustomModules( + context, options, request); +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +SecurityCenterMetadata::BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->BatchCreateResourceValueConfigs(context, options, request); +} + +Status SecurityCenterMetadata::DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->DeleteResourceValueConfig(context, options, request); +} + +StatusOr +SecurityCenterMetadata::GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->GetResourceValueConfig(context, options, request); +} + +StatusOr +SecurityCenterMetadata::ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ListResourceValueConfigs(context, options, request); +} + +StatusOr +SecurityCenterMetadata::UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) { + SetMetadata(context, options, + absl::StrCat( + "resource_value_config.name=", + internal::UrlEncode(request.resource_value_config().name()))); + return child_->UpdateResourceValueConfig(context, options, request); +} + +StatusOr +SecurityCenterMetadata::ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ListValuedResources(context, options, request); +} + +StatusOr +SecurityCenterMetadata::ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ListAttackPaths(context, options, request); +} + future> SecurityCenterMetadata::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/securitycenter/v1/internal/security_center_metadata_decorator.h b/google/cloud/securitycenter/v1/internal/security_center_metadata_decorator.h index dcddc6b03502c..b91122f2e6ad3 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_metadata_decorator.h +++ b/google/cloud/securitycenter/v1/internal/security_center_metadata_decorator.h @@ -96,6 +96,16 @@ class SecurityCenterMetadata : public SecurityCenterStub { DeleteSecurityHealthAnalyticsCustomModuleRequest const& request) override; + StatusOr GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) + override; + + StatusOr GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) override; + StatusOr GetBigQueryExport( grpc::ClientContext& context, Options const& options, google::cloud::securitycenter::v1::GetBigQueryExportRequest const& @@ -312,6 +322,113 @@ class SecurityCenterMetadata : public SecurityCenterStub { google::cloud::securitycenter::v1::ListBigQueryExportsRequest const& request) override; + StatusOr + CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) + override; + + Status DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) override; + + StatusOr + ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) override; + + StatusOr + UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) override; + + Status DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) override; + + StatusOr + GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) override; + + StatusOr + ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) override; + + StatusOr + UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) override; + + StatusOr + ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) override; + + StatusOr + ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) + override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/securitycenter/v1/internal/security_center_stub.cc b/google/cloud/securitycenter/v1/internal/security_center_stub.cc index dd3fccb4d0efb..a72529a11bdd6 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_stub.cc +++ b/google/cloud/securitycenter/v1/internal/security_center_stub.cc @@ -164,6 +164,31 @@ Status DefaultSecurityCenterStub::DeleteSecurityHealthAnalyticsCustomModule( return google::cloud::Status(); } +StatusOr +DefaultSecurityCenterStub::GetSimulation( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) { + google::cloud::securitycenter::v1::Simulation response; + auto status = grpc_stub_->GetSimulation(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::GetValuedResource( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) { + google::cloud::securitycenter::v1::ValuedResource response; + auto status = grpc_stub_->GetValuedResource(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + StatusOr DefaultSecurityCenterStub::GetBigQueryExport( grpc::ClientContext& context, Options const&, @@ -658,6 +683,237 @@ DefaultSecurityCenterStub::ListBigQueryExports( return response; } +StatusOr +DefaultSecurityCenterStub::CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) { + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule response; + auto status = grpc_stub_->CreateEventThreatDetectionCustomModule( + &context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +Status DefaultSecurityCenterStub::DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) { + google::protobuf::Empty response; + auto status = grpc_stub_->DeleteEventThreatDetectionCustomModule( + &context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return google::cloud::Status(); +} + +StatusOr +DefaultSecurityCenterStub::GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) { + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule response; + auto status = grpc_stub_->GetEventThreatDetectionCustomModule( + &context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) { + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesResponse response; + auto status = grpc_stub_->ListDescendantEventThreatDetectionCustomModules( + &context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) { + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesResponse response; + auto status = grpc_stub_->ListEventThreatDetectionCustomModules( + &context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) { + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule response; + auto status = grpc_stub_->UpdateEventThreatDetectionCustomModule( + &context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) { + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleResponse response; + auto status = grpc_stub_->ValidateEventThreatDetectionCustomModule( + &context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) { + google::cloud::securitycenter::v1::EffectiveEventThreatDetectionCustomModule + response; + auto status = grpc_stub_->GetEffectiveEventThreatDetectionCustomModule( + &context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) { + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesResponse response; + auto status = grpc_stub_->ListEffectiveEventThreatDetectionCustomModules( + &context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +DefaultSecurityCenterStub::BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) { + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse + response; + auto status = + grpc_stub_->BatchCreateResourceValueConfigs(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +Status DefaultSecurityCenterStub::DeleteResourceValueConfig( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) { + google::protobuf::Empty response; + auto status = + grpc_stub_->DeleteResourceValueConfig(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return google::cloud::Status(); +} + +StatusOr +DefaultSecurityCenterStub::GetResourceValueConfig( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) { + google::cloud::securitycenter::v1::ResourceValueConfig response; + auto status = + grpc_stub_->GetResourceValueConfig(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::ListResourceValueConfigs( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) { + google::cloud::securitycenter::v1::ListResourceValueConfigsResponse response; + auto status = + grpc_stub_->ListResourceValueConfigs(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::UpdateResourceValueConfig( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) { + google::cloud::securitycenter::v1::ResourceValueConfig response; + auto status = + grpc_stub_->UpdateResourceValueConfig(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::ListValuedResources( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) { + google::cloud::securitycenter::v1::ListValuedResourcesResponse response; + auto status = grpc_stub_->ListValuedResources(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultSecurityCenterStub::ListAttackPaths( + grpc::ClientContext& context, Options const&, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) { + google::cloud::securitycenter::v1::ListAttackPathsResponse response; + auto status = grpc_stub_->ListAttackPaths(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + future> DefaultSecurityCenterStub::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/securitycenter/v1/internal/security_center_stub.h b/google/cloud/securitycenter/v1/internal/security_center_stub.h index e1e4360befb00..14572845673e3 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_stub.h +++ b/google/cloud/securitycenter/v1/internal/security_center_stub.h @@ -95,6 +95,17 @@ class SecurityCenterStub { google::cloud::securitycenter::v1:: DeleteSecurityHealthAnalyticsCustomModuleRequest const& request) = 0; + virtual StatusOr GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& + request) = 0; + + virtual StatusOr + GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) = 0; + virtual StatusOr GetBigQueryExport( grpc::ClientContext& context, Options const& options, @@ -314,6 +325,114 @@ class SecurityCenterStub { google::cloud::securitycenter::v1::ListBigQueryExportsRequest const& request) = 0; + virtual StatusOr< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) = 0; + + virtual Status DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) = 0; + + virtual StatusOr< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) = 0; + + virtual StatusOr + ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& + request) = 0; + + virtual StatusOr + ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) = 0; + + virtual StatusOr< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) = 0; + + virtual StatusOr + ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) = 0; + + virtual StatusOr + GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& + request) = 0; + + virtual StatusOr + ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& + request) = 0; + + virtual StatusOr + BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) = 0; + + virtual Status DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) = 0; + + virtual StatusOr + GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) = 0; + + virtual StatusOr< + google::cloud::securitycenter::v1::ListResourceValueConfigsResponse> + ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) = 0; + + virtual StatusOr + UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) = 0; + + virtual StatusOr< + google::cloud::securitycenter::v1::ListValuedResourcesResponse> + ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) = 0; + + virtual StatusOr + ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& + request) = 0; + virtual future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, @@ -394,6 +513,16 @@ class DefaultSecurityCenterStub : public SecurityCenterStub { DeleteSecurityHealthAnalyticsCustomModuleRequest const& request) override; + StatusOr GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) + override; + + StatusOr GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) override; + StatusOr GetBigQueryExport( grpc::ClientContext& context, Options const& options, google::cloud::securitycenter::v1::GetBigQueryExportRequest const& @@ -610,6 +739,113 @@ class DefaultSecurityCenterStub : public SecurityCenterStub { google::cloud::securitycenter::v1::ListBigQueryExportsRequest const& request) override; + StatusOr + CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) + override; + + Status DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) override; + + StatusOr + ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) override; + + StatusOr + UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) override; + + Status DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) override; + + StatusOr + GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) override; + + StatusOr + ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) override; + + StatusOr + UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) override; + + StatusOr + ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) override; + + StatusOr + ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) + override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/securitycenter/v1/internal/security_center_tracing_connection.cc b/google/cloud/securitycenter/v1/internal/security_center_tracing_connection.cc index efc5fe9dd2135..7673029ed310e 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_tracing_connection.cc +++ b/google/cloud/securitycenter/v1/internal/security_center_tracing_connection.cc @@ -142,6 +142,25 @@ SecurityCenterTracingConnection::DeleteSecurityHealthAnalyticsCustomModule( *span, child_->DeleteSecurityHealthAnalyticsCustomModule(request)); } +StatusOr +SecurityCenterTracingConnection::GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const& request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::GetSimulation"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->GetSimulation(request)); +} + +StatusOr +SecurityCenterTracingConnection::GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::GetValuedResource"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->GetValuedResource(request)); +} + StatusOr SecurityCenterTracingConnection::GetBigQueryExport( google::cloud::securitycenter::v1::GetBigQueryExportRequest const& @@ -564,6 +583,205 @@ SecurityCenterTracingConnection::ListBigQueryExports( std::move(sr)); } +StatusOr +SecurityCenterTracingConnection::CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "CreateEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan( + *span, child_->CreateEventThreatDetectionCustomModule(request)); +} + +Status SecurityCenterTracingConnection::DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "DeleteEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan( + *span, child_->DeleteEventThreatDetectionCustomModule(request)); +} + +StatusOr +SecurityCenterTracingConnection::GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "GetEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan( + *span, child_->GetEventThreatDetectionCustomModule(request)); +} + +StreamRange +SecurityCenterTracingConnection:: + ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "ListDescendantEventThreatDetectionCustomModules"); + internal::OTelScope scope(span); + auto sr = child_->ListDescendantEventThreatDetectionCustomModules( + std::move(request)); + return internal::MakeTracedStreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule>( + std::move(span), std::move(sr)); +} + +StreamRange +SecurityCenterTracingConnection::ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "ListEventThreatDetectionCustomModules"); + internal::OTelScope scope(span); + auto sr = child_->ListEventThreatDetectionCustomModules(std::move(request)); + return internal::MakeTracedStreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule>( + std::move(span), std::move(sr)); +} + +StatusOr +SecurityCenterTracingConnection::UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "UpdateEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan( + *span, child_->UpdateEventThreatDetectionCustomModule(request)); +} + +StatusOr +SecurityCenterTracingConnection::ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "ValidateEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan( + *span, child_->ValidateEventThreatDetectionCustomModule(request)); +} + +StatusOr +SecurityCenterTracingConnection::GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "GetEffectiveEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan( + *span, child_->GetEffectiveEventThreatDetectionCustomModule(request)); +} + +StreamRange +SecurityCenterTracingConnection::ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "ListEffectiveEventThreatDetectionCustomModules"); + internal::OTelScope scope(span); + auto sr = child_->ListEffectiveEventThreatDetectionCustomModules( + std::move(request)); + return internal::MakeTracedStreamRange< + google::cloud::securitycenter::v1:: + EffectiveEventThreatDetectionCustomModule>(std::move(span), + std::move(sr)); +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +SecurityCenterTracingConnection::BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::" + "BatchCreateResourceValueConfigs"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, + child_->BatchCreateResourceValueConfigs(request)); +} + +Status SecurityCenterTracingConnection::DeleteResourceValueConfig( + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::DeleteResourceValueConfig"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->DeleteResourceValueConfig(request)); +} + +StatusOr +SecurityCenterTracingConnection::GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::GetResourceValueConfig"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->GetResourceValueConfig(request)); +} + +StreamRange +SecurityCenterTracingConnection::ListResourceValueConfigs( + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest + request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::ListResourceValueConfigs"); + internal::OTelScope scope(span); + auto sr = child_->ListResourceValueConfigs(std::move(request)); + return internal::MakeTracedStreamRange< + google::cloud::securitycenter::v1::ResourceValueConfig>(std::move(span), + std::move(sr)); +} + +StatusOr +SecurityCenterTracingConnection::UpdateResourceValueConfig( + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::UpdateResourceValueConfig"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->UpdateResourceValueConfig(request)); +} + +StreamRange +SecurityCenterTracingConnection::ListValuedResources( + google::cloud::securitycenter::v1::ListValuedResourcesRequest request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::ListValuedResources"); + internal::OTelScope scope(span); + auto sr = child_->ListValuedResources(std::move(request)); + return internal::MakeTracedStreamRange< + google::cloud::securitycenter::v1::ValuedResource>(std::move(span), + std::move(sr)); +} + +StreamRange +SecurityCenterTracingConnection::ListAttackPaths( + google::cloud::securitycenter::v1::ListAttackPathsRequest request) { + auto span = internal::MakeSpan( + "securitycenter_v1::SecurityCenterConnection::ListAttackPaths"); + internal::OTelScope scope(span); + auto sr = child_->ListAttackPaths(std::move(request)); + return internal::MakeTracedStreamRange< + google::cloud::securitycenter::v1::AttackPath>(std::move(span), + std::move(sr)); +} + #endif // GOOGLE_CLOUD_CPP_HAVE_OPENTELEMETRY std::shared_ptr diff --git a/google/cloud/securitycenter/v1/internal/security_center_tracing_connection.h b/google/cloud/securitycenter/v1/internal/security_center_tracing_connection.h index faef3e5cc4414..f6ae9d1cb39c5 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_tracing_connection.h +++ b/google/cloud/securitycenter/v1/internal/security_center_tracing_connection.h @@ -91,6 +91,14 @@ class SecurityCenterTracingConnection DeleteSecurityHealthAnalyticsCustomModuleRequest const& request) override; + StatusOr GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const& request) + override; + + StatusOr GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) override; + StatusOr GetBigQueryExport( google::cloud::securitycenter::v1::GetBigQueryExportRequest const& request) override; @@ -271,6 +279,96 @@ class SecurityCenterTracingConnection google::cloud::securitycenter::v1::ListBigQueryExportsRequest request) override; + StatusOr + CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) + override; + + Status DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) override; + + StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request) + override; + + StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request) override; + + StatusOr + UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) + override; + + StreamRange + ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request) + override; + + StatusOr + BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) override; + + Status DeleteResourceValueConfig( + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) override; + + StatusOr + GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) override; + + StreamRange + ListResourceValueConfigs( + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest + request) override; + + StatusOr + UpdateResourceValueConfig( + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) override; + + StreamRange + ListValuedResources( + google::cloud::securitycenter::v1::ListValuedResourcesRequest request) + override; + + StreamRange ListAttackPaths( + google::cloud::securitycenter::v1::ListAttackPathsRequest request) + override; + private: std::shared_ptr child_; }; diff --git a/google/cloud/securitycenter/v1/internal/security_center_tracing_stub.cc b/google/cloud/securitycenter/v1/internal/security_center_tracing_stub.cc index 8a08a01efa787..77184d859572b 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_tracing_stub.cc +++ b/google/cloud/securitycenter/v1/internal/security_center_tracing_stub.cc @@ -163,6 +163,31 @@ Status SecurityCenterTracingStub::DeleteSecurityHealthAnalyticsCustomModule( context, options, request)); } +StatusOr +SecurityCenterTracingStub::GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.securitycenter.v1.SecurityCenter", "GetSimulation"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->GetSimulation(context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.securitycenter.v1.SecurityCenter", "GetValuedResource"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, child_->GetValuedResource(context, options, request)); +} + StatusOr SecurityCenterTracingStub::GetBigQueryExport( grpc::ClientContext& context, Options const& options, @@ -660,6 +685,247 @@ SecurityCenterTracingStub::ListBigQueryExports( context, *span, child_->ListBigQueryExports(context, options, request)); } +StatusOr +SecurityCenterTracingStub::CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "CreateEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->CreateEventThreatDetectionCustomModule( + context, options, request)); +} + +Status SecurityCenterTracingStub::DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "DeleteEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->DeleteEventThreatDetectionCustomModule( + context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "GetEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->GetEventThreatDetectionCustomModule(context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "ListDescendantEventThreatDetectionCustomModules"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->ListDescendantEventThreatDetectionCustomModules(context, options, + request)); +} + +StatusOr +SecurityCenterTracingStub::ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "ListEventThreatDetectionCustomModules"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->ListEventThreatDetectionCustomModules(context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "UpdateEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->UpdateEventThreatDetectionCustomModule( + context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "ValidateEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->ValidateEventThreatDetectionCustomModule( + context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "GetEffectiveEventThreatDetectionCustomModule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->GetEffectiveEventThreatDetectionCustomModule( + context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "ListEffectiveEventThreatDetectionCustomModules"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->ListEffectiveEventThreatDetectionCustomModules(context, options, + request)); +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +SecurityCenterTracingStub::BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "BatchCreateResourceValueConfigs"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->BatchCreateResourceValueConfigs(context, options, request)); +} + +Status SecurityCenterTracingStub::DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "DeleteResourceValueConfig"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->DeleteResourceValueConfig(context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "GetResourceValueConfig"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->GetResourceValueConfig(context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "ListResourceValueConfigs"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->ListResourceValueConfigs(context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) { + auto span = + internal::MakeSpanGrpc("google.cloud.securitycenter.v1.SecurityCenter", + "UpdateResourceValueConfig"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, + child_->UpdateResourceValueConfig(context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.securitycenter.v1.SecurityCenter", "ListValuedResources"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, child_->ListValuedResources(context, options, request)); +} + +StatusOr +SecurityCenterTracingStub::ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.securitycenter.v1.SecurityCenter", "ListAttackPaths"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->ListAttackPaths(context, options, request)); +} + future> SecurityCenterTracingStub::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/securitycenter/v1/internal/security_center_tracing_stub.h b/google/cloud/securitycenter/v1/internal/security_center_tracing_stub.h index 30425e384f896..3f9597cea37eb 100644 --- a/google/cloud/securitycenter/v1/internal/security_center_tracing_stub.h +++ b/google/cloud/securitycenter/v1/internal/security_center_tracing_stub.h @@ -94,6 +94,16 @@ class SecurityCenterTracingStub : public SecurityCenterStub { DeleteSecurityHealthAnalyticsCustomModuleRequest const& request) override; + StatusOr GetSimulation( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetSimulationRequest const& request) + override; + + StatusOr GetValuedResource( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request) override; + StatusOr GetBigQueryExport( grpc::ClientContext& context, Options const& options, google::cloud::securitycenter::v1::GetBigQueryExportRequest const& @@ -310,6 +320,113 @@ class SecurityCenterTracingStub : public SecurityCenterStub { google::cloud::securitycenter::v1::ListBigQueryExportsRequest const& request) override; + StatusOr + CreateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request) + override; + + Status DeleteEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request) override; + + StatusOr + ListDescendantEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + ListEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest const& request) override; + + StatusOr + UpdateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ValidateEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + GetEffectiveEventThreatDetectionCustomModule( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request) + override; + + StatusOr + ListEffectiveEventThreatDetectionCustomModules( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest const& request) + override; + + StatusOr + BatchCreateResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request) override; + + Status DeleteResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request) override; + + StatusOr + GetResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request) override; + + StatusOr + ListResourceValueConfigs( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest const& + request) override; + + StatusOr + UpdateResourceValueConfig( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request) override; + + StatusOr + ListValuedResources( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListValuedResourcesRequest const& + request) override; + + StatusOr + ListAttackPaths( + grpc::ClientContext& context, Options const& options, + google::cloud::securitycenter::v1::ListAttackPathsRequest const& request) + override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/securitycenter/v1/mocks/mock_security_center_connection.h b/google/cloud/securitycenter/v1/mocks/mock_security_center_connection.h index 7da0a712dd756..821a1ad80c0ef 100644 --- a/google/cloud/securitycenter/v1/mocks/mock_security_center_connection.h +++ b/google/cloud/securitycenter/v1/mocks/mock_security_center_connection.h @@ -118,6 +118,18 @@ class MockSecurityCenterConnection DeleteSecurityHealthAnalyticsCustomModuleRequest const& request), (override)); + MOCK_METHOD( + StatusOr, GetSimulation, + (google::cloud::securitycenter::v1::GetSimulationRequest const& request), + (override)); + + MOCK_METHOD( + StatusOr, + GetValuedResource, + (google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request), + (override)); + MOCK_METHOD( StatusOr, GetBigQueryExport, @@ -361,6 +373,120 @@ class MockSecurityCenterConnection ListBigQueryExports, (google::cloud::securitycenter::v1::ListBigQueryExportsRequest request), (override)); + + MOCK_METHOD( + StatusOr< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule>, + CreateEventThreatDetectionCustomModule, + (google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request), + (override)); + + MOCK_METHOD( + Status, DeleteEventThreatDetectionCustomModule, + (google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request), + (override)); + + MOCK_METHOD( + StatusOr< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule>, + GetEventThreatDetectionCustomModule, + (google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request), + (override)); + + MOCK_METHOD( + (StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule>), + ListDescendantEventThreatDetectionCustomModules, + (google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request), + (override)); + + MOCK_METHOD( + (StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule>), + ListEventThreatDetectionCustomModules, + (google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request), + (override)); + + MOCK_METHOD( + StatusOr< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule>, + UpdateEventThreatDetectionCustomModule, + (google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request), + (override)); + + MOCK_METHOD( + StatusOr, + ValidateEventThreatDetectionCustomModule, + (google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request), + (override)); + + MOCK_METHOD( + StatusOr, + GetEffectiveEventThreatDetectionCustomModule, + (google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request), + (override)); + + MOCK_METHOD( + (StreamRange), + ListEffectiveEventThreatDetectionCustomModules, + (google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request), + (override)); + + MOCK_METHOD(StatusOr, + BatchCreateResourceValueConfigs, + (google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request), + (override)); + + MOCK_METHOD(Status, DeleteResourceValueConfig, + (google::cloud::securitycenter::v1:: + DeleteResourceValueConfigRequest const& request), + (override)); + + MOCK_METHOD( + StatusOr, + GetResourceValueConfig, + (google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request), + (override)); + + MOCK_METHOD( + (StreamRange), + ListResourceValueConfigs, + (google::cloud::securitycenter::v1::ListResourceValueConfigsRequest + request), + (override)); + + MOCK_METHOD(StatusOr, + UpdateResourceValueConfig, + (google::cloud::securitycenter::v1:: + UpdateResourceValueConfigRequest const& request), + (override)); + + MOCK_METHOD( + (StreamRange), + ListValuedResources, + (google::cloud::securitycenter::v1::ListValuedResourcesRequest request), + (override)); + + MOCK_METHOD( + (StreamRange), + ListAttackPaths, + (google::cloud::securitycenter::v1::ListAttackPathsRequest request), + (override)); }; GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END diff --git a/google/cloud/securitycenter/v1/security_center_client.cc b/google/cloud/securitycenter/v1/security_center_client.cc index 708cbd112d447..f49643454af75 100644 --- a/google/cloud/securitycenter/v1/security_center_client.cc +++ b/google/cloud/securitycenter/v1/security_center_client.cc @@ -258,6 +258,38 @@ Status SecurityCenterClient::DeleteSecurityHealthAnalyticsCustomModule( return connection_->DeleteSecurityHealthAnalyticsCustomModule(request); } +StatusOr +SecurityCenterClient::GetSimulation(std::string const& name, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::GetSimulationRequest request; + request.set_name(name); + return connection_->GetSimulation(request); +} + +StatusOr +SecurityCenterClient::GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->GetSimulation(request); +} + +StatusOr +SecurityCenterClient::GetValuedResource(std::string const& name, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::GetValuedResourceRequest request; + request.set_name(name); + return connection_->GetValuedResource(request); +} + +StatusOr +SecurityCenterClient::GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->GetValuedResource(request); +} + StatusOr SecurityCenterClient::GetBigQueryExport(std::string const& name, Options opts) { internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); @@ -983,6 +1015,311 @@ SecurityCenterClient::ListBigQueryExports( return connection_->ListBigQueryExports(std::move(request)); } +StatusOr +SecurityCenterClient::CreateEventThreatDetectionCustomModule( + std::string const& parent, + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule const& + event_threat_detection_custom_module, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest request; + request.set_parent(parent); + *request.mutable_event_threat_detection_custom_module() = + event_threat_detection_custom_module; + return connection_->CreateEventThreatDetectionCustomModule(request); +} + +StatusOr +SecurityCenterClient::CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->CreateEventThreatDetectionCustomModule(request); +} + +Status SecurityCenterClient::DeleteEventThreatDetectionCustomModule( + std::string const& name, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest request; + request.set_name(name); + return connection_->DeleteEventThreatDetectionCustomModule(request); +} + +Status SecurityCenterClient::DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->DeleteEventThreatDetectionCustomModule(request); +} + +StatusOr +SecurityCenterClient::GetEventThreatDetectionCustomModule( + std::string const& name, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::GetEventThreatDetectionCustomModuleRequest + request; + request.set_name(name); + return connection_->GetEventThreatDetectionCustomModule(request); +} + +StatusOr +SecurityCenterClient::GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->GetEventThreatDetectionCustomModule(request); +} + +StreamRange +SecurityCenterClient::ListDescendantEventThreatDetectionCustomModules( + std::string const& parent, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request; + request.set_parent(parent); + return connection_->ListDescendantEventThreatDetectionCustomModules(request); +} + +StreamRange +SecurityCenterClient::ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ListDescendantEventThreatDetectionCustomModules( + std::move(request)); +} + +StreamRange +SecurityCenterClient::ListEventThreatDetectionCustomModules( + std::string const& parent, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request; + request.set_parent(parent); + return connection_->ListEventThreatDetectionCustomModules(request); +} + +StreamRange +SecurityCenterClient::ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ListEventThreatDetectionCustomModules(std::move(request)); +} + +StatusOr +SecurityCenterClient::UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule const& + event_threat_detection_custom_module, + google::protobuf::FieldMask const& update_mask, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest request; + *request.mutable_event_threat_detection_custom_module() = + event_threat_detection_custom_module; + *request.mutable_update_mask() = update_mask; + return connection_->UpdateEventThreatDetectionCustomModule(request); +} + +StatusOr +SecurityCenterClient::UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->UpdateEventThreatDetectionCustomModule(request); +} + +StatusOr +SecurityCenterClient::ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ValidateEventThreatDetectionCustomModule(request); +} + +StatusOr +SecurityCenterClient::GetEffectiveEventThreatDetectionCustomModule( + std::string const& name, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest request; + request.set_name(name); + return connection_->GetEffectiveEventThreatDetectionCustomModule(request); +} + +StatusOr +SecurityCenterClient::GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->GetEffectiveEventThreatDetectionCustomModule(request); +} + +StreamRange +SecurityCenterClient::ListEffectiveEventThreatDetectionCustomModules( + std::string const& parent, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request; + request.set_parent(parent); + return connection_->ListEffectiveEventThreatDetectionCustomModules(request); +} + +StreamRange +SecurityCenterClient::ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ListEffectiveEventThreatDetectionCustomModules( + std::move(request)); +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +SecurityCenterClient::BatchCreateResourceValueConfigs( + std::string const& parent, + std::vector const& requests, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsRequest + request; + request.set_parent(parent); + *request.mutable_requests() = {requests.begin(), requests.end()}; + return connection_->BatchCreateResourceValueConfigs(request); +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +SecurityCenterClient::BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->BatchCreateResourceValueConfigs(request); +} + +Status SecurityCenterClient::DeleteResourceValueConfig(std::string const& name, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest request; + request.set_name(name); + return connection_->DeleteResourceValueConfig(request); +} + +Status SecurityCenterClient::DeleteResourceValueConfig( + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->DeleteResourceValueConfig(request); +} + +StatusOr +SecurityCenterClient::GetResourceValueConfig(std::string const& name, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::GetResourceValueConfigRequest request; + request.set_name(name); + return connection_->GetResourceValueConfig(request); +} + +StatusOr +SecurityCenterClient::GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->GetResourceValueConfig(request); +} + +StreamRange +SecurityCenterClient::ListResourceValueConfigs(std::string const& parent, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest request; + request.set_parent(parent); + return connection_->ListResourceValueConfigs(request); +} + +StreamRange +SecurityCenterClient::ListResourceValueConfigs( + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ListResourceValueConfigs(std::move(request)); +} + +StatusOr +SecurityCenterClient::UpdateResourceValueConfig( + google::cloud::securitycenter::v1::ResourceValueConfig const& + resource_value_config, + google::protobuf::FieldMask const& update_mask, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest request; + *request.mutable_resource_value_config() = resource_value_config; + *request.mutable_update_mask() = update_mask; + return connection_->UpdateResourceValueConfig(request); +} + +StatusOr +SecurityCenterClient::UpdateResourceValueConfig( + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->UpdateResourceValueConfig(request); +} + +StreamRange +SecurityCenterClient::ListValuedResources(std::string const& parent, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::ListValuedResourcesRequest request; + request.set_parent(parent); + return connection_->ListValuedResources(request); +} + +StreamRange +SecurityCenterClient::ListValuedResources( + google::cloud::securitycenter::v1::ListValuedResourcesRequest request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ListValuedResources(std::move(request)); +} + +StreamRange +SecurityCenterClient::ListAttackPaths(std::string const& parent, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::securitycenter::v1::ListAttackPathsRequest request; + request.set_parent(parent); + return connection_->ListAttackPaths(request); +} + +StreamRange +SecurityCenterClient::ListAttackPaths( + google::cloud::securitycenter::v1::ListAttackPathsRequest request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ListAttackPaths(std::move(request)); +} + GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END } // namespace securitycenter_v1 } // namespace cloud diff --git a/google/cloud/securitycenter/v1/security_center_client.h b/google/cloud/securitycenter/v1/security_center_client.h index ef21f8094f66f..c108ef4e7e698 100644 --- a/google/cloud/securitycenter/v1/security_center_client.h +++ b/google/cloud/securitycenter/v1/security_center_client.h @@ -98,8 +98,8 @@ class SecurityCenterClient { /// matched by the filter will be muted after the LRO is done. /// /// @param parent Required. The parent, at which bulk action needs to be applied. Its format - /// is "organizations/[organization_id]", "folders/[folder_id]", - /// "projects/[project_id]". + /// is `organizations/[organization_id]`, `folders/[folder_id]`, + /// `projects/[project_id]`. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return A [`future`] that becomes satisfied when the LRO @@ -120,8 +120,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.BulkMuteFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L755} - /// [google.cloud.securitycenter.v1.BulkMuteFindingsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L792} + /// [google.cloud.securitycenter.v1.BulkMuteFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1094} + /// [google.cloud.securitycenter.v1.BulkMuteFindingsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1131} /// // clang-format on future> @@ -174,8 +174,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.BulkMuteFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L755} - /// [google.cloud.securitycenter.v1.BulkMuteFindingsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L792} + /// [google.cloud.securitycenter.v1.BulkMuteFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1094} + /// [google.cloud.securitycenter.v1.BulkMuteFindingsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1131} /// // clang-format on future> @@ -221,9 +221,9 @@ class SecurityCenterClient { /// parent. These modules are enabled by default. /// /// @param parent Required. Resource name of the new custom module's parent. Its format is - /// "organizations/{organization}/securityHealthAnalyticsSettings", - /// "folders/{folder}/securityHealthAnalyticsSettings", or - /// "projects/{project}/securityHealthAnalyticsSettings" + /// `organizations/{organization}/securityHealthAnalyticsSettings`, + /// `folders/{folder}/securityHealthAnalyticsSettings`, or + /// `projects/{project}/securityHealthAnalyticsSettings` /// @param security_health_analytics_custom_module Required. SecurityHealthAnalytics custom module to create. The provided /// name is ignored and reset with provided parent information and /// server-generated ID. @@ -240,7 +240,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L863} + /// [google.cloud.securitycenter.v1.CreateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1313} /// [google.cloud.securitycenter.v1.SecurityHealthAnalyticsCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/security_health_analytics_custom_module.proto#L43} /// // clang-format on @@ -279,7 +279,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L863} + /// [google.cloud.securitycenter.v1.CreateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1313} /// [google.cloud.securitycenter.v1.SecurityHealthAnalyticsCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/security_health_analytics_custom_module.proto#L43} /// // clang-format on @@ -295,7 +295,7 @@ class SecurityCenterClient { /// Creates a source. /// /// @param parent Required. Resource name of the new source's parent. Its format should be - /// "organizations/[organization_id]". + /// `organizations/[organization_id]`. /// @param source Required. The Source being created, only the display_name and description /// will be used. All other fields will be ignored. /// @param opts Optional. Override the class-level options, such as retry and @@ -311,7 +311,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L883} + /// [google.cloud.securitycenter.v1.CreateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1333} /// [google.cloud.securitycenter.v1.Source]: @googleapis_reference_link{google/cloud/securitycenter/v1/source.proto#L32} /// // clang-format on @@ -343,7 +343,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L883} + /// [google.cloud.securitycenter.v1.CreateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1333} /// [google.cloud.securitycenter.v1.Source]: @googleapis_reference_link{google/cloud/securitycenter/v1/source.proto#L32} /// // clang-format on @@ -357,7 +357,7 @@ class SecurityCenterClient { /// to succeed. /// /// @param parent Required. Resource name of the new finding's parent. Its format should be - /// "organizations/[organization_id]/sources/[source_id]". + /// `organizations/[organization_id]/sources/[source_id]`. /// @param finding_id Required. Unique identifier provided by the client within the parent scope. /// It must be alphanumeric and less than or equal to 32 characters and /// greater than 0 characters in length. @@ -376,8 +376,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L795} - /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L67} + /// [google.cloud.securitycenter.v1.CreateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1134} + /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L68} /// // clang-format on StatusOr CreateFinding( @@ -409,8 +409,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L795} - /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L67} + /// [google.cloud.securitycenter.v1.CreateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1134} + /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L68} /// // clang-format on StatusOr CreateFinding( @@ -422,8 +422,8 @@ class SecurityCenterClient { /// Creates a mute config. /// /// @param parent Required. Resource name of the new mute configs's parent. Its format is - /// "organizations/[organization_id]", "folders/[folder_id]", or - /// "projects/[project_id]". + /// `organizations/[organization_id]`, `folders/[folder_id]`, or + /// `projects/[project_id]`. /// @param mute_config Required. The mute config being created. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. @@ -438,7 +438,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L816} + /// [google.cloud.securitycenter.v1.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1155} /// [google.cloud.securitycenter.v1.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/mute_config.proto#L33} /// // clang-format on @@ -452,8 +452,8 @@ class SecurityCenterClient { /// Creates a mute config. /// /// @param parent Required. Resource name of the new mute configs's parent. Its format is - /// "organizations/[organization_id]", "folders/[folder_id]", or - /// "projects/[project_id]". + /// `organizations/[organization_id]`, `folders/[folder_id]`, or + /// `projects/[project_id]`. /// @param mute_config Required. The mute config being created. /// @param mute_config_id Required. Unique identifier provided by the client within the parent scope. /// It must consist of only lowercase letters, numbers, and hyphens, must start @@ -472,7 +472,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L816} + /// [google.cloud.securitycenter.v1.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1155} /// [google.cloud.securitycenter.v1.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/mute_config.proto#L33} /// // clang-format on @@ -504,7 +504,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L816} + /// [google.cloud.securitycenter.v1.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1155} /// [google.cloud.securitycenter.v1.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/mute_config.proto#L33} /// // clang-format on @@ -517,8 +517,8 @@ class SecurityCenterClient { /// Creates a notification config. /// /// @param parent Required. Resource name of the new notification config's parent. Its format - /// is "organizations/[organization_id]", "folders/[folder_id]", or - /// "projects/[project_id]". + /// is `organizations/[organization_id]`, `folders/[folder_id]`, or + /// `projects/[project_id]`. /// @param config_id Required. /// Unique identifier provided by the client within the parent scope. /// It must be between 1 and 128 characters and contain alphanumeric @@ -539,7 +539,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L838} + /// [google.cloud.securitycenter.v1.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1288} /// [google.cloud.securitycenter.v1.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/notification_config.proto#L38} /// // clang-format on @@ -555,8 +555,8 @@ class SecurityCenterClient { /// Creates a notification config. /// /// @param parent Required. Resource name of the new notification config's parent. Its format - /// is "organizations/[organization_id]", "folders/[folder_id]", or - /// "projects/[project_id]". + /// is `organizations/[organization_id]`, `folders/[folder_id]`, or + /// `projects/[project_id]`. /// @param notification_config Required. The notification config being created. The name and the service /// account will be ignored as they are both output only fields on this /// resource. @@ -573,7 +573,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L838} + /// [google.cloud.securitycenter.v1.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1288} /// [google.cloud.securitycenter.v1.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/notification_config.proto#L38} /// // clang-format on @@ -607,7 +607,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L838} + /// [google.cloud.securitycenter.v1.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1288} /// [google.cloud.securitycenter.v1.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/notification_config.proto#L38} /// // clang-format on @@ -622,9 +622,12 @@ class SecurityCenterClient { /// Deletes an existing mute config. /// /// @param name Required. Name of the mute config to delete. Its format is - /// organizations/{organization}/muteConfigs/{config_id}, - /// folders/{folder}/muteConfigs/{config_id}, or - /// projects/{project}/muteConfigs/{config_id} + /// `organizations/{organization}/muteConfigs/{config_id}`, + /// `folders/{folder}/muteConfigs/{config_id}`, + /// `projects/{project}/muteConfigs/{config_id}`, + /// `organizations/{organization}/locations/global/muteConfigs/{config_id}`, + /// `folders/{folder}/locations/global/muteConfigs/{config_id}`, or + /// `projects/{project}/locations/global/muteConfigs/{config_id}`. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return a [`Status`] object. If the request failed, the @@ -636,7 +639,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.DeleteMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L899} + /// [google.cloud.securitycenter.v1.DeleteMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1349} /// // clang-format on Status DeleteMuteConfig(std::string const& name, Options opts = {}); @@ -662,7 +665,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.DeleteMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L899} + /// [google.cloud.securitycenter.v1.DeleteMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1349} /// // clang-format on Status DeleteMuteConfig( @@ -674,9 +677,9 @@ class SecurityCenterClient { /// Deletes a notification config. /// /// @param name Required. Name of the notification config to delete. Its format is - /// "organizations/[organization_id]/notificationConfigs/[config_id]", - /// "folders/[folder_id]/notificationConfigs/[config_id]", - /// or "projects/[project_id]/notificationConfigs/[config_id]". + /// `organizations/[organization_id]/notificationConfigs/[config_id]`, + /// `folders/[folder_id]/notificationConfigs/[config_id]`, + /// or `projects/[project_id]/notificationConfigs/[config_id]`. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return a [`Status`] object. If the request failed, the @@ -688,7 +691,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.DeleteNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L913} + /// [google.cloud.securitycenter.v1.DeleteNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1366} /// // clang-format on Status DeleteNotificationConfig(std::string const& name, Options opts = {}); @@ -714,7 +717,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.DeleteNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L913} + /// [google.cloud.securitycenter.v1.DeleteNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1366} /// // clang-format on Status DeleteNotificationConfig( @@ -729,10 +732,10 @@ class SecurityCenterClient { /// resident custom modules. /// /// @param name Required. Name of the custom module to delete. Its format is - /// "organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}", - /// "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}", + /// `organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}`, + /// `folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}`, /// or - /// "projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}" + /// `projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}` /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return a [`Status`] object. If the request failed, the @@ -744,7 +747,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.DeleteSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L927} + /// [google.cloud.securitycenter.v1.DeleteSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1380} /// // clang-format on Status DeleteSecurityHealthAnalyticsCustomModule(std::string const& name, @@ -773,7 +776,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.DeleteSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L927} + /// [google.cloud.securitycenter.v1.DeleteSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1380} /// // clang-format on Status DeleteSecurityHealthAnalyticsCustomModule( @@ -781,14 +784,136 @@ class SecurityCenterClient { DeleteSecurityHealthAnalyticsCustomModuleRequest const& request, Options opts = {}); + // clang-format off + /// + /// Get the simulation by name or the latest simulation for the given + /// organization. + /// + /// @param name Required. The organization name or simulation name of this simulation + /// @n + /// Valid format: + /// `organizations/{organization}/simulations/latest` + /// `organizations/{organization}/simulations/{simulation}` + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.Simulation]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.GetSimulationRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1964} + /// [google.cloud.securitycenter.v1.Simulation]: @googleapis_reference_link{google/cloud/securitycenter/v1/simulation.proto#L34} + /// + // clang-format on + StatusOr GetSimulation( + std::string const& name, Options opts = {}); + + // clang-format off + /// + /// Get the simulation by name or the latest simulation for the given + /// organization. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.GetSimulationRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.Simulation]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.GetSimulationRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1964} + /// [google.cloud.securitycenter.v1.Simulation]: @googleapis_reference_link{google/cloud/securitycenter/v1/simulation.proto#L34} + /// + // clang-format on + StatusOr GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Get the valued resource by name + /// + /// @param name Required. The name of this valued resource + /// @n + /// Valid format: + /// `organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}` + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.ValuedResource]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.GetValuedResourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1979} + /// [google.cloud.securitycenter.v1.ValuedResource]: @googleapis_reference_link{google/cloud/securitycenter/v1/valued_resource.proto#L30} + /// + // clang-format on + StatusOr GetValuedResource( + std::string const& name, Options opts = {}); + + // clang-format off + /// + /// Get the valued resource by name + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.GetValuedResourceRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.ValuedResource]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.GetValuedResourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1979} + /// [google.cloud.securitycenter.v1.ValuedResource]: @googleapis_reference_link{google/cloud/securitycenter/v1/valued_resource.proto#L30} + /// + // clang-format on + StatusOr GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request, + Options opts = {}); + // clang-format off /// /// Gets a BigQuery export. /// /// @param name Required. Name of the BigQuery export to retrieve. Its format is - /// organizations/{organization}/bigQueryExports/{export_id}, - /// folders/{folder}/bigQueryExports/{export_id}, or - /// projects/{project}/bigQueryExports/{export_id} + /// `organizations/{organization}/bigQueryExports/{export_id}`, + /// `folders/{folder}/bigQueryExports/{export_id}`, or + /// `projects/{project}/bigQueryExports/{export_id}` /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return the result of the RPC. The response message type @@ -803,7 +928,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v1/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v1.GetBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L942} + /// [google.cloud.securitycenter.v1.GetBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1395} /// // clang-format on StatusOr GetBigQueryExport( @@ -833,7 +958,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v1/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v1.GetBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L942} + /// [google.cloud.securitycenter.v1.GetBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1395} /// // clang-format on StatusOr GetBigQueryExport( @@ -902,9 +1027,12 @@ class SecurityCenterClient { /// Gets a mute config. /// /// @param name Required. Name of the mute config to retrieve. Its format is - /// organizations/{organization}/muteConfigs/{config_id}, - /// folders/{folder}/muteConfigs/{config_id}, or - /// projects/{project}/muteConfigs/{config_id} + /// `organizations/{organization}/muteConfigs/{config_id}`, + /// `folders/{folder}/muteConfigs/{config_id}`, + /// `projects/{project}/muteConfigs/{config_id}`, + /// `organizations/{organization}/locations/global/muteConfigs/{config_id}`, + /// `folders/{folder}/locations/global/muteConfigs/{config_id}`, or + /// `projects/{project}/locations/global/muteConfigs/{config_id}`. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return the result of the RPC. The response message type @@ -918,7 +1046,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.GetMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L956} + /// [google.cloud.securitycenter.v1.GetMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1409} /// [google.cloud.securitycenter.v1.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/mute_config.proto#L33} /// // clang-format on @@ -948,7 +1076,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.GetMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L956} + /// [google.cloud.securitycenter.v1.GetMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1409} /// [google.cloud.securitycenter.v1.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/mute_config.proto#L33} /// // clang-format on @@ -961,9 +1089,9 @@ class SecurityCenterClient { /// Gets a notification config. /// /// @param name Required. Name of the notification config to get. Its format is - /// "organizations/[organization_id]/notificationConfigs/[config_id]", - /// "folders/[folder_id]/notificationConfigs/[config_id]", - /// or "projects/[project_id]/notificationConfigs/[config_id]". + /// `organizations/[organization_id]/notificationConfigs/[config_id]`, + /// `folders/[folder_id]/notificationConfigs/[config_id]`, + /// or `projects/[project_id]/notificationConfigs/[config_id]`. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return the result of the RPC. The response message type @@ -977,7 +1105,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.GetNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L970} + /// [google.cloud.securitycenter.v1.GetNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1426} /// [google.cloud.securitycenter.v1.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/notification_config.proto#L38} /// // clang-format on @@ -1007,7 +1135,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.GetNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L970} + /// [google.cloud.securitycenter.v1.GetNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1426} /// [google.cloud.securitycenter.v1.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/notification_config.proto#L38} /// // clang-format on @@ -1022,7 +1150,7 @@ class SecurityCenterClient { /// Gets the settings for an organization. /// /// @param name Required. Name of the organization to get organization settings for. Its - /// format is "organizations/[organization_id]/organizationSettings". + /// format is `organizations/[organization_id]/organizationSettings`. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return the result of the RPC. The response message type @@ -1036,7 +1164,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.GetOrganizationSettingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L984} + /// [google.cloud.securitycenter.v1.GetOrganizationSettingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1440} /// [google.cloud.securitycenter.v1.OrganizationSettings]: @googleapis_reference_link{google/cloud/securitycenter/v1/organization_settings.proto#L30} /// // clang-format on @@ -1066,7 +1194,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.GetOrganizationSettingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L984} + /// [google.cloud.securitycenter.v1.GetOrganizationSettingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1440} /// [google.cloud.securitycenter.v1.OrganizationSettings]: @googleapis_reference_link{google/cloud/securitycenter/v1/organization_settings.proto#L30} /// // clang-format on @@ -1081,10 +1209,10 @@ class SecurityCenterClient { /// Retrieves an EffectiveSecurityHealthAnalyticsCustomModule. /// /// @param name Required. Name of the effective custom module to get. Its format is - /// "organizations/{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}", - /// "folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}", + /// `organizations/{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`, + /// `folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`, /// or - /// "projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}" + /// `projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}` /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return the result of the RPC. The response message type @@ -1099,7 +1227,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.EffectiveSecurityHealthAnalyticsCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/effective_security_health_analytics_custom_module.proto#L40} - /// [google.cloud.securitycenter.v1.GetEffectiveSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L997} + /// [google.cloud.securitycenter.v1.GetEffectiveSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1453} /// // clang-format on StatusOr GroupAssets( @@ -1315,24 +1443,16 @@ class SecurityCenterClient { /// /v1/projects/{project_id}/sources/-/findings /// /// @param parent Required. Name of the source to groupBy. Its format is - /// "organizations/[organization_id]/sources/[source_id]", - /// folders/[folder_id]/sources/[source_id], or - /// projects/[project_id]/sources/[source_id]. To groupBy across all sources + /// `organizations/[organization_id]/sources/[source_id]`, + /// `folders/[folder_id]/sources/[source_id]`, or + /// `projects/[project_id]/sources/[source_id]`. To groupBy across all sources /// provide a source_id of `-`. For example: - /// organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-, - /// or projects/{project_id}/sources/- + /// `organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-`, + /// or `projects/{project_id}/sources/-` /// @param group_by Required. Expression that defines what assets fields to use for grouping /// (including `state_change`). The string value should follow SQL syntax: /// comma separated list of fields. For example: "parent,resource_name". /// @n - /// The following fields are supported: - /// @n - /// * resource_name - /// * category - /// * state - /// * parent - /// * severity - /// @n /// The following fields are supported when compare_duration is set: /// @n /// * state_change @@ -1358,8 +1478,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.GroupFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1198} - /// [google.cloud.securitycenter.v1.GroupResult]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1360} + /// [google.cloud.securitycenter.v1.GroupFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1654} + /// [google.cloud.securitycenter.v1.GroupResult]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1808} /// // clang-format on StreamRange GroupFindings( @@ -1404,8 +1524,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.GroupFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1198} - /// [google.cloud.securitycenter.v1.GroupResult]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1360} + /// [google.cloud.securitycenter.v1.GroupFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1654} + /// [google.cloud.securitycenter.v1.GroupResult]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1808} /// // clang-format on StreamRange GroupFindings( @@ -1444,8 +1564,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.ListAssetsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1570} - /// [google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1720} + /// [google.cloud.securitycenter.v1.ListAssetsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2160} + /// [google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2310} /// // clang-format on StreamRange< @@ -1459,9 +1579,9 @@ class SecurityCenterClient { /// the given CRM parent and all of the parent’s CRM descendants. /// /// @param parent Required. Name of parent to list descendant custom modules. Its format is - /// "organizations/{organization}/securityHealthAnalyticsSettings", - /// "folders/{folder}/securityHealthAnalyticsSettings", or - /// "projects/{project}/securityHealthAnalyticsSettings" + /// `organizations/{organization}/securityHealthAnalyticsSettings`, + /// `folders/{folder}/securityHealthAnalyticsSettings`, or + /// `projects/{project}/securityHealthAnalyticsSettings` /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return a [StreamRange](@ref google::cloud::StreamRange) @@ -1484,7 +1604,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.ListDescendantSecurityHealthAnalyticsCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1370} + /// [google.cloud.securitycenter.v1.ListDescendantSecurityHealthAnalyticsCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1818} /// [google.cloud.securitycenter.v1.SecurityHealthAnalyticsCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/security_health_analytics_custom_module.proto#L43} /// // clang-format on @@ -1526,7 +1646,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.ListDescendantSecurityHealthAnalyticsCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1370} + /// [google.cloud.securitycenter.v1.ListDescendantSecurityHealthAnalyticsCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1818} /// [google.cloud.securitycenter.v1.SecurityHealthAnalyticsCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/security_health_analytics_custom_module.proto#L43} /// // clang-format on @@ -1572,8 +1692,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.ListFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1763} - /// [google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1916} + /// [google.cloud.securitycenter.v1.ListFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2353} + /// [google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2506} /// // clang-format on StreamRange SetFindingState( @@ -2168,8 +2288,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L67} - /// [google.cloud.securitycenter.v1.SetFindingStateRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2001} + /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L68} + /// [google.cloud.securitycenter.v1.SetFindingStateRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2626} /// // clang-format on StatusOr SetFindingState( @@ -2183,9 +2303,9 @@ class SecurityCenterClient { /// @param name Required. The [relative resource /// name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) /// of the finding. Example: - /// "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}", - /// "folders/{folder_id}/sources/{source_id}/findings/{finding_id}", - /// "projects/{project_id}/sources/{source_id}/findings/{finding_id}". + /// `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`, + /// `folders/{folder_id}/sources/{source_id}/findings/{finding_id}`, + /// `projects/{project_id}/sources/{source_id}/findings/{finding_id}`. /// @param mute Required. The desired state of the Mute. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. @@ -2200,8 +2320,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L67} - /// [google.cloud.securitycenter.v1.SetMuteRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2024} + /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L68} + /// [google.cloud.securitycenter.v1.SetMuteRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2649} /// // clang-format on StatusOr SetMute( @@ -2231,8 +2351,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L67} - /// [google.cloud.securitycenter.v1.SetMuteRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2024} + /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L68} + /// [google.cloud.securitycenter.v1.SetMuteRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2649} /// // clang-format on StatusOr SetMute( @@ -2410,8 +2530,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.SimulateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2056} - /// [google.cloud.securitycenter.v1.SimulateSecurityHealthAnalyticsCustomModuleResponse]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2091} + /// [google.cloud.securitycenter.v1.SimulateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2681} + /// [google.cloud.securitycenter.v1.SimulateSecurityHealthAnalyticsCustomModuleResponse]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2716} /// // clang-format on StatusOr @@ -2512,7 +2632,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.ExternalSystem]: @googleapis_reference_link{google/cloud/securitycenter/v1/external_system.proto#L31} - /// [google.cloud.securitycenter.v1.UpdateExternalSystemRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2112} + /// [google.cloud.securitycenter.v1.UpdateExternalSystemRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2737} /// // clang-format on StatusOr @@ -2545,8 +2665,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L67} - /// [google.cloud.securitycenter.v1.UpdateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2123} + /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L68} + /// [google.cloud.securitycenter.v1.UpdateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2748} /// // clang-format on StatusOr UpdateFinding( @@ -2577,8 +2697,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L67} - /// [google.cloud.securitycenter.v1.UpdateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2123} + /// [google.cloud.securitycenter.v1.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v1/finding.proto#L68} + /// [google.cloud.securitycenter.v1.UpdateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2748} /// // clang-format on StatusOr UpdateFinding( @@ -2606,7 +2726,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/mute_config.proto#L33} - /// [google.cloud.securitycenter.v1.UpdateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2143} + /// [google.cloud.securitycenter.v1.UpdateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2768} /// // clang-format on StatusOr UpdateMuteConfig( @@ -2637,7 +2757,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/mute_config.proto#L33} - /// [google.cloud.securitycenter.v1.UpdateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2143} + /// [google.cloud.securitycenter.v1.UpdateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2768} /// // clang-format on StatusOr UpdateMuteConfig( @@ -2665,7 +2785,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/notification_config.proto#L38} - /// [google.cloud.securitycenter.v1.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2153} + /// [google.cloud.securitycenter.v1.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2778} /// // clang-format on StatusOr @@ -2698,7 +2818,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/notification_config.proto#L38} - /// [google.cloud.securitycenter.v1.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2153} + /// [google.cloud.securitycenter.v1.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2778} /// // clang-format on StatusOr @@ -2733,7 +2853,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/notification_config.proto#L38} - /// [google.cloud.securitycenter.v1.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2153} + /// [google.cloud.securitycenter.v1.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2778} /// // clang-format on StatusOr @@ -2761,7 +2881,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.OrganizationSettings]: @googleapis_reference_link{google/cloud/securitycenter/v1/organization_settings.proto#L30} - /// [google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2165} + /// [google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2790} /// // clang-format on StatusOr @@ -2794,7 +2914,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.OrganizationSettings]: @googleapis_reference_link{google/cloud/securitycenter/v1/organization_settings.proto#L30} - /// [google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2165} + /// [google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2790} /// // clang-format on StatusOr @@ -2812,7 +2932,9 @@ class SecurityCenterClient { /// config of a module is supported on resident modules only. /// /// @param security_health_analytics_custom_module Required. The SecurityHealthAnalytics custom module to update. - /// @param update_mask The list of fields to update. + /// @param update_mask The list of fields to be updated. The only fields that can be updated are + /// `enablement_state` and `custom_config`. If empty or set to the wildcard + /// value `*`, both `enablement_state` and `custom_config` are updated. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return the result of the RPC. The response message type @@ -2827,7 +2949,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.SecurityHealthAnalyticsCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/security_health_analytics_custom_module.proto#L43} - /// [google.cloud.securitycenter.v1.UpdateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2177} + /// [google.cloud.securitycenter.v1.UpdateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2802} /// // clang-format on StatusOr< @@ -2866,7 +2988,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.SecurityHealthAnalyticsCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/security_health_analytics_custom_module.proto#L43} - /// [google.cloud.securitycenter.v1.UpdateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2177} + /// [google.cloud.securitycenter.v1.UpdateSecurityHealthAnalyticsCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2802} /// // clang-format on StatusOr< @@ -2895,7 +3017,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.Source]: @googleapis_reference_link{google/cloud/securitycenter/v1/source.proto#L32} - /// [google.cloud.securitycenter.v1.UpdateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2187} + /// [google.cloud.securitycenter.v1.UpdateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2814} /// // clang-format on StatusOr UpdateSource( @@ -2926,7 +3048,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.Source]: @googleapis_reference_link{google/cloud/securitycenter/v1/source.proto#L32} - /// [google.cloud.securitycenter.v1.UpdateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2187} + /// [google.cloud.securitycenter.v1.UpdateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2814} /// // clang-format on StatusOr UpdateSource( @@ -2952,7 +3074,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.SecurityMarks]: @googleapis_reference_link{google/cloud/securitycenter/v1/security_marks.proto#L32} - /// [google.cloud.securitycenter.v1.UpdateSecurityMarksRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2198} + /// [google.cloud.securitycenter.v1.UpdateSecurityMarksRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2825} /// // clang-format on StatusOr @@ -2984,7 +3106,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.SecurityMarks]: @googleapis_reference_link{google/cloud/securitycenter/v1/security_marks.proto#L32} - /// [google.cloud.securitycenter.v1.UpdateSecurityMarksRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2198} + /// [google.cloud.securitycenter.v1.UpdateSecurityMarksRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2825} /// // clang-format on StatusOr @@ -2998,8 +3120,8 @@ class SecurityCenterClient { /// Creates a BigQuery export. /// /// @param parent Required. The name of the parent resource of the new BigQuery export. Its - /// format is "organizations/[organization_id]", "folders/[folder_id]", or - /// "projects/[project_id]". + /// format is `organizations/[organization_id]`, `folders/[folder_id]`, or + /// `projects/[project_id]`. /// @param big_query_export Required. The BigQuery export being created. /// @param big_query_export_id Required. Unique identifier provided by the client within the parent scope. /// It must consist of only lowercase letters, numbers, and hyphens, must start @@ -3019,7 +3141,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v1/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v1.CreateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2217} + /// [google.cloud.securitycenter.v1.CreateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2844} /// // clang-format on StatusOr @@ -3052,7 +3174,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v1/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v1.CreateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2217} + /// [google.cloud.securitycenter.v1.CreateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2844} /// // clang-format on StatusOr @@ -3066,9 +3188,9 @@ class SecurityCenterClient { /// Deletes an existing BigQuery export. /// /// @param name Required. The name of the BigQuery export to delete. Its format is - /// organizations/{organization}/bigQueryExports/{export_id}, - /// folders/{folder}/bigQueryExports/{export_id}, or - /// projects/{project}/bigQueryExports/{export_id} + /// `organizations/{organization}/bigQueryExports/{export_id}`, + /// `folders/{folder}/bigQueryExports/{export_id}`, or + /// `projects/{project}/bigQueryExports/{export_id}` /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return a [`Status`] object. If the request failed, the @@ -3080,7 +3202,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.DeleteBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2285} + /// [google.cloud.securitycenter.v1.DeleteBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2912} /// // clang-format on Status DeleteBigQueryExport(std::string const& name, Options opts = {}); @@ -3106,7 +3228,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v1.DeleteBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2285} + /// [google.cloud.securitycenter.v1.DeleteBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2912} /// // clang-format on Status DeleteBigQueryExport( @@ -3135,7 +3257,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v1/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v1.UpdateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2239} + /// [google.cloud.securitycenter.v1.UpdateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2866} /// // clang-format on StatusOr @@ -3167,7 +3289,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v1/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v1.UpdateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2239} + /// [google.cloud.securitycenter.v1.UpdateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2866} /// // clang-format on StatusOr @@ -3185,8 +3307,8 @@ class SecurityCenterClient { /// within the folder are returned. /// /// @param parent Required. The parent, which owns the collection of BigQuery exports. Its - /// format is "organizations/[organization_id]", "folders/[folder_id]", - /// "projects/[project_id]". + /// format is `organizations/[organization_id]`, `folders/[folder_id]`, + /// `projects/[project_id]`. /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return a [StreamRange](@ref google::cloud::StreamRange) @@ -3210,7 +3332,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v1/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v1.ListBigQueryExportsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2250} + /// [google.cloud.securitycenter.v1.ListBigQueryExportsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2877} /// // clang-format on StreamRange @@ -3253,7 +3375,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v1.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v1/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v1.ListBigQueryExportsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2250} + /// [google.cloud.securitycenter.v1.ListBigQueryExportsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2877} /// // clang-format on StreamRange @@ -3261,6 +3383,1130 @@ class SecurityCenterClient { google::cloud::securitycenter::v1::ListBigQueryExportsRequest request, Options opts = {}); + // clang-format off + /// + /// Creates a resident Event Threat Detection custom module at the scope of the + /// given Resource Manager parent, and also creates inherited custom modules + /// for all descendants of the given parent. These modules are enabled by + /// default. + /// + /// @param parent Required. The new custom module's parent. + /// @n + /// Its format is: + /// @n + /// * `organizations/{organization}/eventThreatDetectionSettings`. + /// * `folders/{folder}/eventThreatDetectionSettings`. + /// * `projects/{project}/eventThreatDetectionSettings`. + /// @param event_threat_detection_custom_module Required. The module to create. The + /// event_threat_detection_custom_module.name will be ignored and server + /// generated. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.CreateEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2926} + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// + // clang-format on + StatusOr + CreateEventThreatDetectionCustomModule( + std::string const& parent, + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule const& + event_threat_detection_custom_module, + Options opts = {}); + + // clang-format off + /// + /// Creates a resident Event Threat Detection custom module at the scope of the + /// given Resource Manager parent, and also creates inherited custom modules + /// for all descendants of the given parent. These modules are enabled by + /// default. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.CreateEventThreatDetectionCustomModuleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.CreateEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2926} + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// + // clang-format on + StatusOr + CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Deletes the specified Event Threat Detection custom module and all of its + /// descendants in the Resource Manager hierarchy. This method is only + /// supported for resident custom modules. + /// + /// @param name Required. Name of the custom module to delete. + /// @n + /// Its format is: + /// @n + /// * "organizations/{organization}/eventThreatDetectionSettings/customModules/{module}". + /// * "folders/{folder}/eventThreatDetectionSettings/customModules/{module}". + /// * "projects/{project}/eventThreatDetectionSettings/customModules/{module}". + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [`Status`] object. If the request failed, the + /// status contains the details of the failure. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.DeleteEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2980} + /// + // clang-format on + Status DeleteEventThreatDetectionCustomModule(std::string const& name, + Options opts = {}); + + // clang-format off + /// + /// Deletes the specified Event Threat Detection custom module and all of its + /// descendants in the Resource Manager hierarchy. This method is only + /// supported for resident custom modules. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.DeleteEventThreatDetectionCustomModuleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [`Status`] object. If the request failed, the + /// status contains the details of the failure. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.DeleteEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2980} + /// + // clang-format on + Status DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Gets an Event Threat Detection custom module. + /// + /// @param name Required. Name of the custom module to get. + /// @n + /// Its format is: + /// @n + /// * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. + /// * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. + /// * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// [google.cloud.securitycenter.v1.GetEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2997} + /// + // clang-format on + StatusOr + GetEventThreatDetectionCustomModule(std::string const& name, + Options opts = {}); + + // clang-format off + /// + /// Gets an Event Threat Detection custom module. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.GetEventThreatDetectionCustomModuleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// [google.cloud.securitycenter.v1.GetEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2997} + /// + // clang-format on + StatusOr + GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Lists all resident Event Threat Detection custom modules under the + /// given Resource Manager parent and its descendants. + /// + /// @param parent Required. Name of the parent to list custom modules under. + /// @n + /// Its format is: + /// @n + /// * `organizations/{organization}/eventThreatDetectionSettings`. + /// * `folders/{folder}/eventThreatDetectionSettings`. + /// * `projects/{project}/eventThreatDetectionSettings`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// [google.cloud.securitycenter.v1.ListDescendantEventThreatDetectionCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3015} + /// + // clang-format on + StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListDescendantEventThreatDetectionCustomModules(std::string const& parent, + Options opts = {}); + + // clang-format off + /// + /// Lists all resident Event Threat Detection custom modules under the + /// given Resource Manager parent and its descendants. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.ListDescendantEventThreatDetectionCustomModulesRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// [google.cloud.securitycenter.v1.ListDescendantEventThreatDetectionCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3015} + /// + // clang-format on + StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request, + Options opts = {}); + + // clang-format off + /// + /// Lists all Event Threat Detection custom modules for the given + /// Resource Manager parent. This includes resident modules defined at the + /// scope of the parent along with modules inherited from ancestors. + /// + /// @param parent Required. Name of the parent to list custom modules under. + /// @n + /// Its format is: + /// @n + /// * `organizations/{organization}/eventThreatDetectionSettings`. + /// * `folders/{folder}/eventThreatDetectionSettings`. + /// * `projects/{project}/eventThreatDetectionSettings`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// [google.cloud.securitycenter.v1.ListEventThreatDetectionCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3059} + /// + // clang-format on + StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListEventThreatDetectionCustomModules(std::string const& parent, + Options opts = {}); + + // clang-format off + /// + /// Lists all Event Threat Detection custom modules for the given + /// Resource Manager parent. This includes resident modules defined at the + /// scope of the parent along with modules inherited from ancestors. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.ListEventThreatDetectionCustomModulesRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// [google.cloud.securitycenter.v1.ListEventThreatDetectionCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3059} + /// + // clang-format on + StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request, + Options opts = {}); + + // clang-format off + /// + /// Updates the Event Threat Detection custom module with the given name based + /// on the given update mask. Updating the enablement state is supported for + /// both resident and inherited modules (though resident modules cannot have an + /// enablement state of "inherited"). Updating the display name or + /// configuration of a module is supported for resident modules only. The type + /// of a module cannot be changed. + /// + /// @param event_threat_detection_custom_module Required. The module being updated. + /// @param update_mask The list of fields to be updated. + /// If empty all mutable fields will be updated. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// [google.cloud.securitycenter.v1.UpdateEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3102} + /// + // clang-format on + StatusOr + UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule const& + event_threat_detection_custom_module, + google::protobuf::FieldMask const& update_mask, Options opts = {}); + + // clang-format off + /// + /// Updates the Event Threat Detection custom module with the given name based + /// on the given update mask. Updating the enablement state is supported for + /// both resident and inherited modules (though resident modules cannot have an + /// enablement state of "inherited"). Updating the display name or + /// configuration of a module is supported for resident modules only. The type + /// of a module cannot be changed. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.UpdateEventThreatDetectionCustomModuleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/event_threat_detection_custom_module.proto#L37} + /// [google.cloud.securitycenter.v1.UpdateEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3102} + /// + // clang-format on + StatusOr + UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Validates the given Event Threat Detection custom module. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.ValidateEventThreatDetectionCustomModuleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.ValidateEventThreatDetectionCustomModuleResponse]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.ValidateEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2949} + /// [google.cloud.securitycenter.v1.ValidateEventThreatDetectionCustomModuleResponse]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L2973} + /// + // clang-format on + StatusOr + ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Gets an effective Event Threat Detection custom module at the given level. + /// + /// @param name Required. The resource name of the effective Event Threat Detection custom + /// module. + /// @n + /// Its format is: + /// @n + /// * `organizations/{organization}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. + /// * `folders/{folder}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. + /// * `projects/{project}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.EffectiveEventThreatDetectionCustomModule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EffectiveEventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/effective_event_threat_detection_custom_module.proto#L40} + /// [google.cloud.securitycenter.v1.GetEffectiveEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3113} + /// + // clang-format on + StatusOr + GetEffectiveEventThreatDetectionCustomModule(std::string const& name, + Options opts = {}); + + // clang-format off + /// + /// Gets an effective Event Threat Detection custom module at the given level. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.GetEffectiveEventThreatDetectionCustomModuleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.EffectiveEventThreatDetectionCustomModule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EffectiveEventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/effective_event_threat_detection_custom_module.proto#L40} + /// [google.cloud.securitycenter.v1.GetEffectiveEventThreatDetectionCustomModuleRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3113} + /// + // clang-format on + StatusOr + GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Lists all effective Event Threat Detection custom modules for the + /// given parent. This includes resident modules defined at the scope of the + /// parent along with modules inherited from its ancestors. + /// + /// @param parent Required. Name of the parent to list custom modules for. + /// @n + /// Its format is: + /// @n + /// * `organizations/{organization}/eventThreatDetectionSettings`. + /// * `folders/{folder}/eventThreatDetectionSettings`. + /// * `projects/{project}/eventThreatDetectionSettings`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.EffectiveEventThreatDetectionCustomModule], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EffectiveEventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/effective_event_threat_detection_custom_module.proto#L40} + /// [google.cloud.securitycenter.v1.ListEffectiveEventThreatDetectionCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3131} + /// + // clang-format on + StreamRange + ListEffectiveEventThreatDetectionCustomModules(std::string const& parent, + Options opts = {}); + + // clang-format off + /// + /// Lists all effective Event Threat Detection custom modules for the + /// given parent. This includes resident modules defined at the scope of the + /// parent along with modules inherited from its ancestors. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.ListEffectiveEventThreatDetectionCustomModulesRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.EffectiveEventThreatDetectionCustomModule], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.EffectiveEventThreatDetectionCustomModule]: @googleapis_reference_link{google/cloud/securitycenter/v1/effective_event_threat_detection_custom_module.proto#L40} + /// [google.cloud.securitycenter.v1.ListEffectiveEventThreatDetectionCustomModulesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L3131} + /// + // clang-format on + StreamRange + ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request, + Options opts = {}); + + // clang-format off + /// + /// Creates a ResourceValueConfig for an organization. Maps user's tags to + /// difference resource values for use by the attack path simulation. + /// + /// @param parent Required. Resource name of the new ResourceValueConfig's parent. + /// The parent field in the CreateResourceValueConfigRequest + /// messages must either be empty or match this field. + /// @param requests Required. The resource value configs to be created. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.BatchCreateResourceValueConfigsResponse]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.BatchCreateResourceValueConfigsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1192} + /// [google.cloud.securitycenter.v1.BatchCreateResourceValueConfigsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1209} + /// + // clang-format on + StatusOr + BatchCreateResourceValueConfigs( + std::string const& parent, + std::vector const& requests, + Options opts = {}); + + // clang-format off + /// + /// Creates a ResourceValueConfig for an organization. Maps user's tags to + /// difference resource values for use by the attack path simulation. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.BatchCreateResourceValueConfigsRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.BatchCreateResourceValueConfigsResponse]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.BatchCreateResourceValueConfigsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1192} + /// [google.cloud.securitycenter.v1.BatchCreateResourceValueConfigsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1209} + /// + // clang-format on + StatusOr + BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Deletes a ResourceValueConfig. + /// + /// @param name Required. Name of the ResourceValueConfig to delete + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [`Status`] object. If the request failed, the + /// status contains the details of the failure. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.DeleteResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1215} + /// + // clang-format on + Status DeleteResourceValueConfig(std::string const& name, Options opts = {}); + + // clang-format off + /// + /// Deletes a ResourceValueConfig. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.DeleteResourceValueConfigRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [`Status`] object. If the request failed, the + /// status contains the details of the failure. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.DeleteResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1215} + /// + // clang-format on + Status DeleteResourceValueConfig( + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request, + Options opts = {}); + + // clang-format off + /// + /// Gets a ResourceValueConfig. + /// + /// @param name Required. Name of the resource value config to retrieve. Its format is + /// `organizations/{organization}/resourceValueConfigs/{config_id}`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.ResourceValueConfig]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.GetResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1226} + /// [google.cloud.securitycenter.v1.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/resource_value_config.proto#L34} + /// + // clang-format on + StatusOr + GetResourceValueConfig(std::string const& name, Options opts = {}); + + // clang-format off + /// + /// Gets a ResourceValueConfig. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.GetResourceValueConfigRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.ResourceValueConfig]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.GetResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1226} + /// [google.cloud.securitycenter.v1.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/resource_value_config.proto#L34} + /// + // clang-format on + StatusOr + GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request, + Options opts = {}); + + // clang-format off + /// + /// Lists all ResourceValueConfigs. + /// + /// @param parent Required. The parent, which owns the collection of resource value configs. + /// Its format is + /// `organizations/[organization_id]` + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.ResourceValueConfig], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.ListResourceValueConfigsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1238} + /// [google.cloud.securitycenter.v1.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/resource_value_config.proto#L34} + /// + // clang-format on + StreamRange + ListResourceValueConfigs(std::string const& parent, Options opts = {}); + + // clang-format off + /// + /// Lists all ResourceValueConfigs. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.ListResourceValueConfigsRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.ResourceValueConfig], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.ListResourceValueConfigsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1238} + /// [google.cloud.securitycenter.v1.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/resource_value_config.proto#L34} + /// + // clang-format on + StreamRange + ListResourceValueConfigs( + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest + request, + Options opts = {}); + + // clang-format off + /// + /// Updates an existing ResourceValueConfigs with new rules. + /// + /// @param resource_value_config Required. The resource value config being updated. + /// @param update_mask The list of fields to be updated. + /// If empty all mutable fields will be updated. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.ResourceValueConfig]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/resource_value_config.proto#L34} + /// [google.cloud.securitycenter.v1.UpdateResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1277} + /// + // clang-format on + StatusOr + UpdateResourceValueConfig( + google::cloud::securitycenter::v1::ResourceValueConfig const& + resource_value_config, + google::protobuf::FieldMask const& update_mask, Options opts = {}); + + // clang-format off + /// + /// Updates an existing ResourceValueConfigs with new rules. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.UpdateResourceValueConfigRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.securitycenter.v1.ResourceValueConfig]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v1/resource_value_config.proto#L34} + /// [google.cloud.securitycenter.v1.UpdateResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1277} + /// + // clang-format on + StatusOr + UpdateResourceValueConfig( + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request, + Options opts = {}); + + // clang-format off + /// + /// Lists the valued resources for a set of simulation results and filter. + /// + /// @param parent Required. Name of parent to list valued resources. + /// @n + /// Valid formats: + /// `organizations/{organization}`, + /// `organizations/{organization}/simulations/{simulation}` + /// `organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}` + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.ValuedResource], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.ListValuedResourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1851} + /// [google.cloud.securitycenter.v1.ValuedResource]: @googleapis_reference_link{google/cloud/securitycenter/v1/valued_resource.proto#L30} + /// + // clang-format on + StreamRange + ListValuedResources(std::string const& parent, Options opts = {}); + + // clang-format off + /// + /// Lists the valued resources for a set of simulation results and filter. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.ListValuedResourcesRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.ValuedResource], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.ListValuedResourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1851} + /// [google.cloud.securitycenter.v1.ValuedResource]: @googleapis_reference_link{google/cloud/securitycenter/v1/valued_resource.proto#L30} + /// + // clang-format on + StreamRange + ListValuedResources( + google::cloud::securitycenter::v1::ListValuedResourcesRequest request, + Options opts = {}); + + // clang-format off + /// + /// Lists the attack paths for a set of simulation results or valued resources + /// and filter. + /// + /// @param parent Required. Name of parent to list attack paths. + /// @n + /// Valid formats: + /// `organizations/{organization}`, + /// `organizations/{organization}/simulations/{simulation}` + /// `organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}` + /// `organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}` + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.AttackPath], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.AttackPath]: @googleapis_reference_link{google/cloud/securitycenter/v1/attack_path.proto#L30} + /// [google.cloud.securitycenter.v1.ListAttackPathsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1919} + /// + // clang-format on + StreamRange ListAttackPaths( + std::string const& parent, Options opts = {}); + + // clang-format off + /// + /// Lists the attack paths for a set of simulation results or valued resources + /// and filter. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.securitycenter.v1.ListAttackPathsRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.securitycenter.v1.AttackPath], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.securitycenter.v1.AttackPath]: @googleapis_reference_link{google/cloud/securitycenter/v1/attack_path.proto#L30} + /// [google.cloud.securitycenter.v1.ListAttackPathsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v1/securitycenter_service.proto#L1919} + /// + // clang-format on + StreamRange ListAttackPaths( + google::cloud::securitycenter::v1::ListAttackPathsRequest request, + Options opts = {}); + private: std::shared_ptr connection_; Options options_; diff --git a/google/cloud/securitycenter/v1/security_center_connection.cc b/google/cloud/securitycenter/v1/security_center_connection.cc index c582c962eb02e..c504e8cba6da7 100644 --- a/google/cloud/securitycenter/v1/security_center_connection.cc +++ b/google/cloud/securitycenter/v1/security_center_connection.cc @@ -109,6 +109,18 @@ Status SecurityCenterConnection::DeleteSecurityHealthAnalyticsCustomModule( return Status(StatusCode::kUnimplemented, "not implemented"); } +StatusOr +SecurityCenterConnection::GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StatusOr +SecurityCenterConnection::GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + StatusOr SecurityCenterConnection::GetBigQueryExport( google::cloud::securitycenter::v1::GetBigQueryExportRequest const&) { @@ -379,6 +391,126 @@ SecurityCenterConnection::ListBigQueryExports( StreamRange>(); } +StatusOr +SecurityCenterConnection::CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +Status SecurityCenterConnection::DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StatusOr +SecurityCenterConnection::GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StreamRange +SecurityCenterConnection::ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest) { // NOLINT(performance-unnecessary-value-param) + return google::cloud::internal::MakeUnimplementedPaginationRange>(); +} + +StreamRange +SecurityCenterConnection::ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest) { // NOLINT(performance-unnecessary-value-param) + return google::cloud::internal::MakeUnimplementedPaginationRange>(); +} + +StatusOr +SecurityCenterConnection::UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StatusOr +SecurityCenterConnection::ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StatusOr +SecurityCenterConnection::GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StreamRange +SecurityCenterConnection::ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest) { // NOLINT(performance-unnecessary-value-param) + return google::cloud::internal::MakeUnimplementedPaginationRange< + StreamRange>(); +} + +StatusOr< + google::cloud::securitycenter::v1::BatchCreateResourceValueConfigsResponse> +SecurityCenterConnection::BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +Status SecurityCenterConnection::DeleteResourceValueConfig( + google::cloud::securitycenter::v1:: + DeleteResourceValueConfigRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StatusOr +SecurityCenterConnection::GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StreamRange +SecurityCenterConnection::ListResourceValueConfigs( + google::cloud::securitycenter::v1:: + ListResourceValueConfigsRequest) { // NOLINT(performance-unnecessary-value-param) + return google::cloud::internal::MakeUnimplementedPaginationRange< + StreamRange>(); +} + +StatusOr +SecurityCenterConnection::UpdateResourceValueConfig( + google::cloud::securitycenter::v1:: + UpdateResourceValueConfigRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StreamRange +SecurityCenterConnection::ListValuedResources( + google::cloud::securitycenter::v1:: + ListValuedResourcesRequest) { // NOLINT(performance-unnecessary-value-param) + return google::cloud::internal::MakeUnimplementedPaginationRange< + StreamRange>(); +} + +StreamRange +SecurityCenterConnection::ListAttackPaths( + google::cloud::securitycenter::v1:: + ListAttackPathsRequest) { // NOLINT(performance-unnecessary-value-param) + return google::cloud::internal::MakeUnimplementedPaginationRange< + StreamRange>(); +} + std::shared_ptr MakeSecurityCenterConnection( Options options) { internal::CheckExpectedOptions GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const& request); + + virtual StatusOr + GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request); + virtual StatusOr GetBigQueryExport( google::cloud::securitycenter::v1::GetBigQueryExportRequest const& @@ -407,6 +415,91 @@ class SecurityCenterConnection { virtual StreamRange ListBigQueryExports( google::cloud::securitycenter::v1::ListBigQueryExportsRequest request); + + virtual StatusOr< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request); + + virtual Status DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request); + + virtual StatusOr< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request); + + virtual StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request); + + virtual StreamRange< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request); + + virtual StatusOr< + google::cloud::securitycenter::v1::EventThreatDetectionCustomModule> + UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request); + + virtual StatusOr + ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request); + + virtual StatusOr + GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request); + + virtual StreamRange + ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request); + + virtual StatusOr + BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request); + + virtual Status DeleteResourceValueConfig( + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request); + + virtual StatusOr + GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request); + + virtual StreamRange + ListResourceValueConfigs( + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest + request); + + virtual StatusOr + UpdateResourceValueConfig( + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request); + + virtual StreamRange + ListValuedResources( + google::cloud::securitycenter::v1::ListValuedResourcesRequest request); + + virtual StreamRange + ListAttackPaths( + google::cloud::securitycenter::v1::ListAttackPathsRequest request); }; /** diff --git a/google/cloud/securitycenter/v1/security_center_connection_idempotency_policy.cc b/google/cloud/securitycenter/v1/security_center_connection_idempotency_policy.cc index cc2b753c05b37..25cfc70de835b 100644 --- a/google/cloud/securitycenter/v1/security_center_connection_idempotency_policy.cc +++ b/google/cloud/securitycenter/v1/security_center_connection_idempotency_policy.cc @@ -83,6 +83,16 @@ Idempotency SecurityCenterConnectionIdempotencyPolicy:: return Idempotency::kNonIdempotent; } +Idempotency SecurityCenterConnectionIdempotencyPolicy::GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const&) { + return Idempotency::kIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy::GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const&) { + return Idempotency::kIdempotent; +} + Idempotency SecurityCenterConnectionIdempotencyPolicy::GetBigQueryExport( google::cloud::securitycenter::v1::GetBigQueryExportRequest const&) { return Idempotency::kIdempotent; @@ -281,6 +291,111 @@ Idempotency SecurityCenterConnectionIdempotencyPolicy::ListBigQueryExports( return Idempotency::kIdempotent; } +Idempotency SecurityCenterConnectionIdempotencyPolicy:: + CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy:: + DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency +SecurityCenterConnectionIdempotencyPolicy::GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const&) { + return Idempotency::kIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy:: + ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest) { // NOLINT + return Idempotency::kIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy:: + ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest) { // NOLINT + return Idempotency::kIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy:: + UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy:: + ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy:: + GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const&) { + return Idempotency::kIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy:: + ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest) { // NOLINT + return Idempotency::kIdempotent; +} + +Idempotency +SecurityCenterConnectionIdempotencyPolicy::BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency +SecurityCenterConnectionIdempotencyPolicy::DeleteResourceValueConfig( + google::cloud::securitycenter::v1:: + DeleteResourceValueConfigRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy::GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const&) { + return Idempotency::kIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy::ListResourceValueConfigs( + google::cloud::securitycenter::v1:: + ListResourceValueConfigsRequest) { // NOLINT + return Idempotency::kIdempotent; +} + +Idempotency +SecurityCenterConnectionIdempotencyPolicy::UpdateResourceValueConfig( + google::cloud::securitycenter::v1:: + UpdateResourceValueConfigRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy::ListValuedResources( + google::cloud::securitycenter::v1::ListValuedResourcesRequest) { // NOLINT + return Idempotency::kIdempotent; +} + +Idempotency SecurityCenterConnectionIdempotencyPolicy::ListAttackPaths( + google::cloud::securitycenter::v1::ListAttackPathsRequest) { // NOLINT + return Idempotency::kIdempotent; +} + std::unique_ptr MakeDefaultSecurityCenterConnectionIdempotencyPolicy() { return std::make_unique(); diff --git a/google/cloud/securitycenter/v1/security_center_connection_idempotency_policy.h b/google/cloud/securitycenter/v1/security_center_connection_idempotency_policy.h index 1db2bb3fe2308..60bbbb84085cf 100644 --- a/google/cloud/securitycenter/v1/security_center_connection_idempotency_policy.h +++ b/google/cloud/securitycenter/v1/security_center_connection_idempotency_policy.h @@ -71,6 +71,13 @@ class SecurityCenterConnectionIdempotencyPolicy { google::cloud::securitycenter::v1:: DeleteSecurityHealthAnalyticsCustomModuleRequest const& request); + virtual google::cloud::Idempotency GetSimulation( + google::cloud::securitycenter::v1::GetSimulationRequest const& request); + + virtual google::cloud::Idempotency GetValuedResource( + google::cloud::securitycenter::v1::GetValuedResourceRequest const& + request); + virtual google::cloud::Idempotency GetBigQueryExport( google::cloud::securitycenter::v1::GetBigQueryExportRequest const& request); @@ -203,6 +210,71 @@ class SecurityCenterConnectionIdempotencyPolicy { virtual google::cloud::Idempotency ListBigQueryExports( google::cloud::securitycenter::v1::ListBigQueryExportsRequest request); + + virtual google::cloud::Idempotency CreateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + CreateEventThreatDetectionCustomModuleRequest const& request); + + virtual google::cloud::Idempotency DeleteEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + DeleteEventThreatDetectionCustomModuleRequest const& request); + + virtual google::cloud::Idempotency GetEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEventThreatDetectionCustomModuleRequest const& request); + + virtual google::cloud::Idempotency + ListDescendantEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListDescendantEventThreatDetectionCustomModulesRequest request); + + virtual google::cloud::Idempotency ListEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEventThreatDetectionCustomModulesRequest request); + + virtual google::cloud::Idempotency UpdateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + UpdateEventThreatDetectionCustomModuleRequest const& request); + + virtual google::cloud::Idempotency ValidateEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + ValidateEventThreatDetectionCustomModuleRequest const& request); + + virtual google::cloud::Idempotency + GetEffectiveEventThreatDetectionCustomModule( + google::cloud::securitycenter::v1:: + GetEffectiveEventThreatDetectionCustomModuleRequest const& request); + + virtual google::cloud::Idempotency + ListEffectiveEventThreatDetectionCustomModules( + google::cloud::securitycenter::v1:: + ListEffectiveEventThreatDetectionCustomModulesRequest request); + + virtual google::cloud::Idempotency BatchCreateResourceValueConfigs( + google::cloud::securitycenter::v1:: + BatchCreateResourceValueConfigsRequest const& request); + + virtual google::cloud::Idempotency DeleteResourceValueConfig( + google::cloud::securitycenter::v1::DeleteResourceValueConfigRequest const& + request); + + virtual google::cloud::Idempotency GetResourceValueConfig( + google::cloud::securitycenter::v1::GetResourceValueConfigRequest const& + request); + + virtual google::cloud::Idempotency ListResourceValueConfigs( + google::cloud::securitycenter::v1::ListResourceValueConfigsRequest + request); + + virtual google::cloud::Idempotency UpdateResourceValueConfig( + google::cloud::securitycenter::v1::UpdateResourceValueConfigRequest const& + request); + + virtual google::cloud::Idempotency ListValuedResources( + google::cloud::securitycenter::v1::ListValuedResourcesRequest request); + + virtual google::cloud::Idempotency ListAttackPaths( + google::cloud::securitycenter::v1::ListAttackPathsRequest request); }; std::unique_ptr diff --git a/google/cloud/securitycenter/v2/security_center_client.h b/google/cloud/securitycenter/v2/security_center_client.h index 07772fbb88438..3dcdf772563d2 100644 --- a/google/cloud/securitycenter/v2/security_center_client.h +++ b/google/cloud/securitycenter/v2/security_center_client.h @@ -113,8 +113,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.BatchCreateResourceValueConfigsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L869} - /// [google.cloud.securitycenter.v2.BatchCreateResourceValueConfigsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L886} + /// [google.cloud.securitycenter.v2.BatchCreateResourceValueConfigsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L903} + /// [google.cloud.securitycenter.v2.BatchCreateResourceValueConfigsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L920} /// // clang-format on StatusOr> @@ -252,8 +252,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.BulkMuteFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L897} - /// [google.cloud.securitycenter.v2.BulkMuteFindingsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L937} + /// [google.cloud.securitycenter.v2.BulkMuteFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L931} + /// [google.cloud.securitycenter.v2.BulkMuteFindingsResponse]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L971} /// // clang-format on future> @@ -318,7 +318,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v2/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v2.CreateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L940} + /// [google.cloud.securitycenter.v2.CreateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L974} /// // clang-format on StatusOr @@ -351,7 +351,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v2/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v2.CreateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L940} + /// [google.cloud.securitycenter.v2.CreateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L974} /// // clang-format on StatusOr @@ -389,8 +389,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.CreateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L963} - /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L65} + /// [google.cloud.securitycenter.v2.CreateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L997} + /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L69} /// // clang-format on StatusOr CreateFinding( @@ -422,8 +422,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.CreateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L963} - /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L65} + /// [google.cloud.securitycenter.v2.CreateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L997} + /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L69} /// // clang-format on StatusOr CreateFinding( @@ -456,7 +456,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L988} + /// [google.cloud.securitycenter.v2.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1022} /// [google.cloud.securitycenter.v2.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/mute_config.proto#L33} /// // clang-format on @@ -488,7 +488,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L988} + /// [google.cloud.securitycenter.v2.CreateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1022} /// [google.cloud.securitycenter.v2.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/mute_config.proto#L33} /// // clang-format on @@ -524,7 +524,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1011} + /// [google.cloud.securitycenter.v2.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1045} /// [google.cloud.securitycenter.v2.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/notification_config.proto#L38} /// // clang-format on @@ -558,7 +558,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1011} + /// [google.cloud.securitycenter.v2.CreateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1045} /// [google.cloud.securitycenter.v2.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/notification_config.proto#L38} /// // clang-format on @@ -589,7 +589,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.CreateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1052} + /// [google.cloud.securitycenter.v2.CreateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1086} /// [google.cloud.securitycenter.v2.Source]: @googleapis_reference_link{google/cloud/securitycenter/v2/source.proto#L33} /// // clang-format on @@ -621,7 +621,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.CreateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1052} + /// [google.cloud.securitycenter.v2.CreateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1086} /// [google.cloud.securitycenter.v2.Source]: @googleapis_reference_link{google/cloud/securitycenter/v2/source.proto#L33} /// // clang-format on @@ -651,7 +651,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.DeleteBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1068} + /// [google.cloud.securitycenter.v2.DeleteBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1102} /// // clang-format on Status DeleteBigQueryExport(std::string const& name, Options opts = {}); @@ -677,7 +677,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.DeleteBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1068} + /// [google.cloud.securitycenter.v2.DeleteBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1102} /// // clang-format on Status DeleteBigQueryExport( @@ -711,7 +711,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.DeleteMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1086} + /// [google.cloud.securitycenter.v2.DeleteMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1120} /// // clang-format on Status DeleteMuteConfig(std::string const& name, Options opts = {}); @@ -738,7 +738,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.DeleteMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1086} + /// [google.cloud.securitycenter.v2.DeleteMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1120} /// // clang-format on Status DeleteMuteConfig( @@ -769,7 +769,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.DeleteNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1106} + /// [google.cloud.securitycenter.v2.DeleteNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1140} /// // clang-format on Status DeleteNotificationConfig(std::string const& name, Options opts = {}); @@ -795,7 +795,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.DeleteNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1106} + /// [google.cloud.securitycenter.v2.DeleteNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1140} /// // clang-format on Status DeleteNotificationConfig( @@ -819,7 +819,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.DeleteResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1125} + /// [google.cloud.securitycenter.v2.DeleteResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1159} /// // clang-format on Status DeleteResourceValueConfig(std::string const& name, Options opts = {}); @@ -845,7 +845,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.DeleteResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1125} + /// [google.cloud.securitycenter.v2.DeleteResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1159} /// // clang-format on Status DeleteResourceValueConfig( @@ -878,7 +878,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v2/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v2.GetBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1136} + /// [google.cloud.securitycenter.v2.GetBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1170} /// // clang-format on StatusOr GetBigQueryExport( @@ -908,7 +908,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v2/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v2.GetBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1136} + /// [google.cloud.securitycenter.v2.GetBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1170} /// // clang-format on StatusOr GetBigQueryExport( @@ -939,8 +939,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetSimulationRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1389} - /// [google.cloud.securitycenter.v2.Simulation]: @googleapis_reference_link{google/cloud/securitycenter/v2/simulation.proto#L33} + /// [google.cloud.securitycenter.v2.GetSimulationRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1415} + /// [google.cloud.securitycenter.v2.Simulation]: @googleapis_reference_link{google/cloud/securitycenter/v2/simulation.proto#L34} /// // clang-format on StatusOr GetSimulation( @@ -970,8 +970,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetSimulationRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1389} - /// [google.cloud.securitycenter.v2.Simulation]: @googleapis_reference_link{google/cloud/securitycenter/v2/simulation.proto#L33} + /// [google.cloud.securitycenter.v2.GetSimulationRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1415} + /// [google.cloud.securitycenter.v2.Simulation]: @googleapis_reference_link{google/cloud/securitycenter/v2/simulation.proto#L34} /// // clang-format on StatusOr GetSimulation( @@ -999,7 +999,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetValuedResourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1404} + /// [google.cloud.securitycenter.v2.GetValuedResourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1430} /// [google.cloud.securitycenter.v2.ValuedResource]: @googleapis_reference_link{google/cloud/securitycenter/v2/valued_resource.proto#L30} /// // clang-format on @@ -1029,7 +1029,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetValuedResourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1404} + /// [google.cloud.securitycenter.v2.GetValuedResourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1430} /// [google.cloud.securitycenter.v2.ValuedResource]: @googleapis_reference_link{google/cloud/securitycenter/v2/valued_resource.proto#L30} /// // clang-format on @@ -1122,7 +1122,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1154} + /// [google.cloud.securitycenter.v2.GetMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1188} /// [google.cloud.securitycenter.v2.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/mute_config.proto#L33} /// // clang-format on @@ -1153,7 +1153,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1154} + /// [google.cloud.securitycenter.v2.GetMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1188} /// [google.cloud.securitycenter.v2.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/mute_config.proto#L33} /// // clang-format on @@ -1187,7 +1187,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1174} + /// [google.cloud.securitycenter.v2.GetNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1208} /// [google.cloud.securitycenter.v2.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/notification_config.proto#L38} /// // clang-format on @@ -1217,7 +1217,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1174} + /// [google.cloud.securitycenter.v2.GetNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1208} /// [google.cloud.securitycenter.v2.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/notification_config.proto#L38} /// // clang-format on @@ -1246,8 +1246,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1193} - /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L33} + /// [google.cloud.securitycenter.v2.GetResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1227} + /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L34} /// // clang-format on StatusOr @@ -1276,8 +1276,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1193} - /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L33} + /// [google.cloud.securitycenter.v2.GetResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1227} + /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L34} /// // clang-format on StatusOr @@ -1305,7 +1305,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1205} + /// [google.cloud.securitycenter.v2.GetSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1239} /// [google.cloud.securitycenter.v2.Source]: @googleapis_reference_link{google/cloud/securitycenter/v2/source.proto#L33} /// // clang-format on @@ -1335,7 +1335,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GetSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1205} + /// [google.cloud.securitycenter.v2.GetSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1239} /// [google.cloud.securitycenter.v2.Source]: @googleapis_reference_link{google/cloud/securitycenter/v2/source.proto#L33} /// // clang-format on @@ -1384,14 +1384,6 @@ class SecurityCenterClient { /// @param group_by Required. Expression that defines what assets fields to use for grouping. /// The string value should follow SQL syntax: comma separated list of fields. /// For example: "parent,resource_name". - /// @n - /// The following fields are supported: - /// @n - /// * resource_name - /// * category - /// * state - /// * parent - /// * severity /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return a [StreamRange](@ref google::cloud::StreamRange) @@ -1414,8 +1406,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GroupFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1217} - /// [google.cloud.securitycenter.v2.GroupResult]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1334} + /// [google.cloud.securitycenter.v2.GroupFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1251} + /// [google.cloud.securitycenter.v2.GroupResult]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1360} /// // clang-format on StreamRange GroupFindings( @@ -1467,8 +1459,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.GroupFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1217} - /// [google.cloud.securitycenter.v2.GroupResult]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1334} + /// [google.cloud.securitycenter.v2.GroupFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1251} + /// [google.cloud.securitycenter.v2.GroupResult]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1360} /// // clang-format on StreamRange GroupFindings( @@ -1510,7 +1502,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.AttackPath]: @googleapis_reference_link{google/cloud/securitycenter/v2/attack_path.proto#L30} - /// [google.cloud.securitycenter.v2.ListAttackPathsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1344} + /// [google.cloud.securitycenter.v2.ListAttackPathsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1370} /// // clang-format on StreamRange ListAttackPaths( @@ -1550,7 +1542,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.AttackPath]: @googleapis_reference_link{google/cloud/securitycenter/v2/attack_path.proto#L30} - /// [google.cloud.securitycenter.v2.ListAttackPathsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1344} + /// [google.cloud.securitycenter.v2.ListAttackPathsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1370} /// // clang-format on StreamRange ListAttackPaths( @@ -1592,7 +1584,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v2/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v2.ListBigQueryExportsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1419} + /// [google.cloud.securitycenter.v2.ListBigQueryExportsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1445} /// // clang-format on StreamRange @@ -1635,7 +1627,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v2/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v2.ListBigQueryExportsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1419} + /// [google.cloud.securitycenter.v2.ListBigQueryExportsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1445} /// // clang-format on StreamRange @@ -1697,8 +1689,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.ListFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1455} - /// [google.cloud.securitycenter.v2.ListFindingsResponse.ListFindingsResult]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1570} + /// [google.cloud.securitycenter.v2.ListFindingsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1481} + /// [google.cloud.securitycenter.v2.ListFindingsResponse.ListFindingsResult]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1596} /// // clang-format on StreamRange @@ -1982,8 +1974,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.ListResourceValueConfigsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1679} - /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L33} + /// [google.cloud.securitycenter.v2.ListResourceValueConfigsRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1740} + /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L34} /// // clang-format on StreamRange @@ -2021,7 +2013,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.ListSourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1718} + /// [google.cloud.securitycenter.v2.ListSourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1779} /// [google.cloud.securitycenter.v2.Source]: @googleapis_reference_link{google/cloud/securitycenter/v2/source.proto#L33} /// // clang-format on @@ -2060,7 +2052,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.ListSourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1718} + /// [google.cloud.securitycenter.v2.ListSourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1779} /// [google.cloud.securitycenter.v2.Source]: @googleapis_reference_link{google/cloud/securitycenter/v2/source.proto#L33} /// // clang-format on @@ -2100,7 +2092,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.ListValuedResourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1750} + /// [google.cloud.securitycenter.v2.ListValuedResourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1811} /// [google.cloud.securitycenter.v2.ValuedResource]: @googleapis_reference_link{google/cloud/securitycenter/v2/valued_resource.proto#L30} /// // clang-format on @@ -2139,7 +2131,7 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.ListValuedResourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1750} + /// [google.cloud.securitycenter.v2.ListValuedResourcesRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1811} /// [google.cloud.securitycenter.v2.ValuedResource]: @googleapis_reference_link{google/cloud/securitycenter/v2/valued_resource.proto#L30} /// // clang-format on @@ -2182,8 +2174,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L65} - /// [google.cloud.securitycenter.v2.SetFindingStateRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1813} + /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L69} + /// [google.cloud.securitycenter.v2.SetFindingStateRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1874} /// // clang-format on StatusOr SetFindingState( @@ -2215,8 +2207,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L65} - /// [google.cloud.securitycenter.v2.SetFindingStateRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1813} + /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L69} + /// [google.cloud.securitycenter.v2.SetFindingStateRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1874} /// // clang-format on StatusOr SetFindingState( @@ -2342,8 +2334,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L65} - /// [google.cloud.securitycenter.v2.SetMuteRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1841} + /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L69} + /// [google.cloud.securitycenter.v2.SetMuteRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1902} /// // clang-format on StatusOr SetMute( @@ -2374,8 +2366,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L65} - /// [google.cloud.securitycenter.v2.SetMuteRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1841} + /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L69} + /// [google.cloud.securitycenter.v2.SetMuteRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1902} /// // clang-format on StatusOr SetMute( @@ -2465,7 +2457,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v2/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v2.UpdateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1869} + /// [google.cloud.securitycenter.v2.UpdateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1930} /// // clang-format on StatusOr @@ -2497,7 +2489,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.BigQueryExport]: @googleapis_reference_link{google/cloud/securitycenter/v2/bigquery_export.proto#L32} - /// [google.cloud.securitycenter.v2.UpdateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1869} + /// [google.cloud.securitycenter.v2.UpdateBigQueryExportRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1930} /// // clang-format on StatusOr @@ -2529,7 +2521,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.ExternalSystem]: @googleapis_reference_link{google/cloud/securitycenter/v2/external_system.proto#L31} - /// [google.cloud.securitycenter.v2.UpdateExternalSystemRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1879} + /// [google.cloud.securitycenter.v2.UpdateExternalSystemRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1940} /// // clang-format on StatusOr @@ -2562,7 +2554,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.ExternalSystem]: @googleapis_reference_link{google/cloud/securitycenter/v2/external_system.proto#L31} - /// [google.cloud.securitycenter.v2.UpdateExternalSystemRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1879} + /// [google.cloud.securitycenter.v2.UpdateExternalSystemRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1940} /// // clang-format on StatusOr @@ -2603,8 +2595,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L65} - /// [google.cloud.securitycenter.v2.UpdateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1890} + /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L69} + /// [google.cloud.securitycenter.v2.UpdateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1951} /// // clang-format on StatusOr UpdateFinding( @@ -2636,8 +2628,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L65} - /// [google.cloud.securitycenter.v2.UpdateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1890} + /// [google.cloud.securitycenter.v2.Finding]: @googleapis_reference_link{google/cloud/securitycenter/v2/finding.proto#L69} + /// [google.cloud.securitycenter.v2.UpdateFindingRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1951} /// // clang-format on StatusOr UpdateFinding( @@ -2666,7 +2658,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/mute_config.proto#L33} - /// [google.cloud.securitycenter.v2.UpdateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1910} + /// [google.cloud.securitycenter.v2.UpdateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1971} /// // clang-format on StatusOr UpdateMuteConfig( @@ -2698,7 +2690,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.MuteConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/mute_config.proto#L33} - /// [google.cloud.securitycenter.v2.UpdateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1910} + /// [google.cloud.securitycenter.v2.UpdateMuteConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1971} /// // clang-format on StatusOr UpdateMuteConfig( @@ -2728,7 +2720,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/notification_config.proto#L38} - /// [google.cloud.securitycenter.v2.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1920} + /// [google.cloud.securitycenter.v2.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1981} /// // clang-format on StatusOr @@ -2762,7 +2754,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.NotificationConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/notification_config.proto#L38} - /// [google.cloud.securitycenter.v2.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1920} + /// [google.cloud.securitycenter.v2.UpdateNotificationConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1981} /// // clang-format on StatusOr @@ -2778,6 +2770,10 @@ class SecurityCenterClient { /// @param resource_value_config Required. The resource value config being updated. /// @param update_mask The list of fields to be updated. /// If empty all mutable fields will be updated. + /// @n + /// To update nested fields, include the top level field in the mask + /// For example, to update gcp_metadata.resource_type, include the + /// "gcp_metadata" field mask /// @param opts Optional. Override the class-level options, such as retry and /// backoff policies. /// @return the result of the RPC. The response message type @@ -2791,8 +2787,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L33} - /// [google.cloud.securitycenter.v2.UpdateResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1932} + /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L34} + /// [google.cloud.securitycenter.v2.UpdateResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1993} /// // clang-format on StatusOr @@ -2824,8 +2820,8 @@ class SecurityCenterClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L33} - /// [google.cloud.securitycenter.v2.UpdateResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1932} + /// [google.cloud.securitycenter.v2.ResourceValueConfig]: @googleapis_reference_link{google/cloud/securitycenter/v2/resource_value_config.proto#L34} + /// [google.cloud.securitycenter.v2.UpdateResourceValueConfigRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1993} /// // clang-format on StatusOr @@ -2860,7 +2856,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.SecurityMarks]: @googleapis_reference_link{google/cloud/securitycenter/v2/security_marks.proto#L33} - /// [google.cloud.securitycenter.v2.UpdateSecurityMarksRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1943} + /// [google.cloud.securitycenter.v2.UpdateSecurityMarksRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L2008} /// // clang-format on StatusOr @@ -2894,7 +2890,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.SecurityMarks]: @googleapis_reference_link{google/cloud/securitycenter/v2/security_marks.proto#L33} - /// [google.cloud.securitycenter.v2.UpdateSecurityMarksRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1943} + /// [google.cloud.securitycenter.v2.UpdateSecurityMarksRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L2008} /// // clang-format on StatusOr @@ -2925,7 +2921,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.Source]: @googleapis_reference_link{google/cloud/securitycenter/v2/source.proto#L33} - /// [google.cloud.securitycenter.v2.UpdateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1956} + /// [google.cloud.securitycenter.v2.UpdateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L2021} /// // clang-format on StatusOr UpdateSource( @@ -2956,7 +2952,7 @@ class SecurityCenterClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.securitycenter.v2.Source]: @googleapis_reference_link{google/cloud/securitycenter/v2/source.proto#L33} - /// [google.cloud.securitycenter.v2.UpdateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L1956} + /// [google.cloud.securitycenter.v2.UpdateSourceRequest]: @googleapis_reference_link{google/cloud/securitycenter/v2/securitycenter_service.proto#L2021} /// // clang-format on StatusOr UpdateSource( diff --git a/google/cloud/spanner/admin/database_admin_client.cc b/google/cloud/spanner/admin/database_admin_client.cc index 276b28600dee6..a98e3b9ed8c0b 100644 --- a/google/cloud/spanner/admin/database_admin_client.cc +++ b/google/cloud/spanner/admin/database_admin_client.cc @@ -588,6 +588,98 @@ DatabaseAdminClient::ListDatabaseRoles( return connection_->ListDatabaseRoles(std::move(request)); } +StatusOr +DatabaseAdminClient::CreateBackupSchedule( + std::string const& parent, + google::spanner::admin::database::v1::BackupSchedule const& backup_schedule, + std::string const& backup_schedule_id, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::spanner::admin::database::v1::CreateBackupScheduleRequest request; + request.set_parent(parent); + *request.mutable_backup_schedule() = backup_schedule; + request.set_backup_schedule_id(backup_schedule_id); + return connection_->CreateBackupSchedule(request); +} + +StatusOr +DatabaseAdminClient::CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->CreateBackupSchedule(request); +} + +StatusOr +DatabaseAdminClient::GetBackupSchedule(std::string const& name, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::spanner::admin::database::v1::GetBackupScheduleRequest request; + request.set_name(name); + return connection_->GetBackupSchedule(request); +} + +StatusOr +DatabaseAdminClient::GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->GetBackupSchedule(request); +} + +StatusOr +DatabaseAdminClient::UpdateBackupSchedule( + google::spanner::admin::database::v1::BackupSchedule const& backup_schedule, + google::protobuf::FieldMask const& update_mask, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::spanner::admin::database::v1::UpdateBackupScheduleRequest request; + *request.mutable_backup_schedule() = backup_schedule; + *request.mutable_update_mask() = update_mask; + return connection_->UpdateBackupSchedule(request); +} + +StatusOr +DatabaseAdminClient::UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->UpdateBackupSchedule(request); +} + +Status DatabaseAdminClient::DeleteBackupSchedule(std::string const& name, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::spanner::admin::database::v1::DeleteBackupScheduleRequest request; + request.set_name(name); + return connection_->DeleteBackupSchedule(request); +} + +Status DatabaseAdminClient::DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->DeleteBackupSchedule(request); +} + +StreamRange +DatabaseAdminClient::ListBackupSchedules(std::string const& parent, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::spanner::admin::database::v1::ListBackupSchedulesRequest request; + request.set_parent(parent); + return connection_->ListBackupSchedules(request); +} + +StreamRange +DatabaseAdminClient::ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ListBackupSchedules(std::move(request)); +} + GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END } // namespace spanner_admin } // namespace cloud diff --git a/google/cloud/spanner/admin/database_admin_client.h b/google/cloud/spanner/admin/database_admin_client.h index 327ca375c8465..335c8a86839b9 100644 --- a/google/cloud/spanner/admin/database_admin_client.h +++ b/google/cloud/spanner/admin/database_admin_client.h @@ -124,8 +124,8 @@ class DatabaseAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} - /// [google.spanner.admin.database.v1.ListDatabasesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L538} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} + /// [google.spanner.admin.database.v1.ListDatabasesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L598} /// // clang-format on StreamRange ListDatabases( @@ -163,8 +163,8 @@ class DatabaseAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} - /// [google.spanner.admin.database.v1.ListDatabasesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L538} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} + /// [google.spanner.admin.database.v1.ListDatabasesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L598} /// // clang-format on StreamRange ListDatabases( @@ -212,9 +212,9 @@ class DatabaseAdminClient { /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} - /// [google.spanner.admin.database.v1.CreateDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L625} - /// [google.spanner.admin.database.v1.CreateDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L573} - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} + /// [google.spanner.admin.database.v1.CreateDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L685} + /// [google.spanner.admin.database.v1.CreateDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L633} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} /// // clang-format on future> @@ -276,9 +276,9 @@ class DatabaseAdminClient { /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} - /// [google.spanner.admin.database.v1.CreateDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L625} - /// [google.spanner.admin.database.v1.CreateDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L573} - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} + /// [google.spanner.admin.database.v1.CreateDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L685} + /// [google.spanner.admin.database.v1.CreateDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L633} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} /// // clang-format on future> @@ -337,8 +337,8 @@ class DatabaseAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} - /// [google.spanner.admin.database.v1.GetDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L634} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} + /// [google.spanner.admin.database.v1.GetDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L694} /// // clang-format on StatusOr GetDatabase( @@ -367,8 +367,8 @@ class DatabaseAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} - /// [google.spanner.admin.database.v1.GetDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L634} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} + /// [google.spanner.admin.database.v1.GetDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L694} /// // clang-format on StatusOr GetDatabase( @@ -442,11 +442,11 @@ class DatabaseAdminClient { /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} - /// [google.spanner.admin.database.v1.Database.reconciling]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L533} - /// [google.spanner.admin.database.v1.UpdateDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L661} - /// [google.spanner.admin.database.v1.UpdateDatabaseMetadata.cancel_time]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L673} - /// [google.spanner.admin.database.v1.UpdateDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L647} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} + /// [google.spanner.admin.database.v1.Database.reconciling]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L593} + /// [google.spanner.admin.database.v1.UpdateDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L721} + /// [google.spanner.admin.database.v1.UpdateDatabaseMetadata.cancel_time]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L733} + /// [google.spanner.admin.database.v1.UpdateDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L707} /// // clang-format on future> @@ -538,11 +538,11 @@ class DatabaseAdminClient { /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} - /// [google.spanner.admin.database.v1.Database.reconciling]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L533} - /// [google.spanner.admin.database.v1.UpdateDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L661} - /// [google.spanner.admin.database.v1.UpdateDatabaseMetadata.cancel_time]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L673} - /// [google.spanner.admin.database.v1.UpdateDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L647} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} + /// [google.spanner.admin.database.v1.Database.reconciling]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L593} + /// [google.spanner.admin.database.v1.UpdateDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L721} + /// [google.spanner.admin.database.v1.UpdateDatabaseMetadata.cancel_time]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L733} + /// [google.spanner.admin.database.v1.UpdateDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L707} /// // clang-format on future> @@ -617,8 +617,8 @@ class DatabaseAdminClient { /// [`Status`]: @ref google::cloud::Status /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} - /// [google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L767} - /// [google.spanner.admin.database.v1.UpdateDatabaseDdlRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L692} + /// [google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L827} + /// [google.spanner.admin.database.v1.UpdateDatabaseDdlRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L752} /// // clang-format on future< @@ -681,8 +681,8 @@ class DatabaseAdminClient { /// [`Status`]: @ref google::cloud::Status /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} - /// [google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L767} - /// [google.spanner.admin.database.v1.UpdateDatabaseDdlRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L692} + /// [google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L827} + /// [google.spanner.admin.database.v1.UpdateDatabaseDdlRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L752} /// // clang-format on future< @@ -744,7 +744,7 @@ class DatabaseAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.spanner.admin.database.v1.DropDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L803} + /// [google.spanner.admin.database.v1.DropDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L863} /// // clang-format on Status DropDatabase(std::string const& database, Options opts = {}); @@ -774,7 +774,7 @@ class DatabaseAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.spanner.admin.database.v1.DropDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L803} + /// [google.spanner.admin.database.v1.DropDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L863} /// // clang-format on Status DropDatabase( @@ -804,8 +804,8 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.longrunning.Operations]: @googleapis_reference_link{google/longrunning/operations.proto#L54} - /// [google.spanner.admin.database.v1.GetDatabaseDdlRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L815} - /// [google.spanner.admin.database.v1.GetDatabaseDdlResponse]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L829} + /// [google.spanner.admin.database.v1.GetDatabaseDdlRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L875} + /// [google.spanner.admin.database.v1.GetDatabaseDdlResponse]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L889} /// // clang-format on StatusOr @@ -837,8 +837,8 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.longrunning.Operations]: @googleapis_reference_link{google/longrunning/operations.proto#L54} - /// [google.spanner.admin.database.v1.GetDatabaseDdlRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L815} - /// [google.spanner.admin.database.v1.GetDatabaseDdlResponse]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L829} + /// [google.spanner.admin.database.v1.GetDatabaseDdlRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L875} + /// [google.spanner.admin.database.v1.GetDatabaseDdlResponse]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L889} /// // clang-format on StatusOr @@ -1147,8 +1147,8 @@ class DatabaseAdminClient { /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.CreateBackupMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L196} - /// [google.spanner.admin.database.v1.CreateBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L163} + /// [google.spanner.admin.database.v1.CreateBackupMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L208} + /// [google.spanner.admin.database.v1.CreateBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L175} /// // clang-format on future> CreateBackup( @@ -1217,8 +1217,8 @@ class DatabaseAdminClient { /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.CreateBackupMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L196} - /// [google.spanner.admin.database.v1.CreateBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L163} + /// [google.spanner.admin.database.v1.CreateBackupMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L208} + /// [google.spanner.admin.database.v1.CreateBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L175} /// // clang-format on future> CreateBackup( @@ -1310,8 +1310,8 @@ class DatabaseAdminClient { /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.CopyBackupMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L274} - /// [google.spanner.admin.database.v1.CopyBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L229} + /// [google.spanner.admin.database.v1.CopyBackupMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L286} + /// [google.spanner.admin.database.v1.CopyBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L241} /// // clang-format on future> CopyBackup( @@ -1381,8 +1381,8 @@ class DatabaseAdminClient { /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.CopyBackupMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L274} - /// [google.spanner.admin.database.v1.CopyBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L229} + /// [google.spanner.admin.database.v1.CopyBackupMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L286} + /// [google.spanner.admin.database.v1.CopyBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L241} /// // clang-format on future> CopyBackup( @@ -1440,7 +1440,7 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.GetBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L329} + /// [google.spanner.admin.database.v1.GetBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L341} /// // clang-format on StatusOr GetBackup( @@ -1471,7 +1471,7 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.GetBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L329} + /// [google.spanner.admin.database.v1.GetBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L341} /// // clang-format on StatusOr GetBackup( @@ -1506,7 +1506,7 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.UpdateBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L311} + /// [google.spanner.admin.database.v1.UpdateBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L323} /// // clang-format on StatusOr UpdateBackup( @@ -1538,7 +1538,7 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.UpdateBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L311} + /// [google.spanner.admin.database.v1.UpdateBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L323} /// // clang-format on StatusOr UpdateBackup( @@ -1565,7 +1565,7 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.DeleteBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L341} + /// [google.spanner.admin.database.v1.DeleteBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L353} /// // clang-format on Status DeleteBackup(std::string const& name, Options opts = {}); @@ -1593,7 +1593,7 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.DeleteBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L341} + /// [google.spanner.admin.database.v1.DeleteBackupRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L353} /// // clang-format on Status DeleteBackup( @@ -1631,7 +1631,7 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.ListBackupsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L353} + /// [google.spanner.admin.database.v1.ListBackupsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L365} /// // clang-format on StreamRange ListBackups( @@ -1672,7 +1672,7 @@ class DatabaseAdminClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.spanner.admin.database.v1.Backup]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L35} - /// [google.spanner.admin.database.v1.ListBackupsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L353} + /// [google.spanner.admin.database.v1.ListBackupsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L365} /// // clang-format on StreamRange ListBackups( @@ -1733,9 +1733,9 @@ class DatabaseAdminClient { /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} - /// [google.spanner.admin.database.v1.RestoreDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1029} - /// [google.spanner.admin.database.v1.RestoreDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L931} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} + /// [google.spanner.admin.database.v1.RestoreDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1089} + /// [google.spanner.admin.database.v1.RestoreDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L991} /// // clang-format on future> @@ -1807,9 +1807,9 @@ class DatabaseAdminClient { /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} /// [google.longrunning.Operation.response]: @googleapis_reference_link{google/longrunning/operations.proto#L160} - /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L430} - /// [google.spanner.admin.database.v1.RestoreDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1029} - /// [google.spanner.admin.database.v1.RestoreDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L931} + /// [google.spanner.admin.database.v1.Database]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L490} + /// [google.spanner.admin.database.v1.RestoreDatabaseMetadata]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1089} + /// [google.spanner.admin.database.v1.RestoreDatabaseRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L991} /// // clang-format on future> @@ -1886,7 +1886,7 @@ class DatabaseAdminClient { /// [`Status`]: @ref google::cloud::Status /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} - /// [google.spanner.admin.database.v1.ListDatabaseOperationsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L844} + /// [google.spanner.admin.database.v1.ListDatabaseOperationsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L904} /// // clang-format on StreamRange ListDatabaseOperations( @@ -1933,7 +1933,7 @@ class DatabaseAdminClient { /// [`Status`]: @ref google::cloud::Status /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} - /// [google.spanner.admin.database.v1.ListDatabaseOperationsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L844} + /// [google.spanner.admin.database.v1.ListDatabaseOperationsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L904} /// // clang-format on StreamRange ListDatabaseOperations( @@ -1980,7 +1980,7 @@ class DatabaseAdminClient { /// [`Status`]: @ref google::cloud::Status /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} - /// [google.spanner.admin.database.v1.ListBackupOperationsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L429} + /// [google.spanner.admin.database.v1.ListBackupOperationsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L441} /// // clang-format on StreamRange ListBackupOperations( @@ -2029,7 +2029,7 @@ class DatabaseAdminClient { /// [`Status`]: @ref google::cloud::Status /// [google.longrunning.Operation]: @googleapis_reference_link{google/longrunning/operations.proto#L128} /// [google.longrunning.Operation.metadata]: @googleapis_reference_link{google/longrunning/operations.proto#L138} - /// [google.spanner.admin.database.v1.ListBackupOperationsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L429} + /// [google.spanner.admin.database.v1.ListBackupOperationsRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup.proto#L441} /// // clang-format on StreamRange ListBackupOperations( @@ -2065,8 +2065,8 @@ class DatabaseAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.spanner.admin.database.v1.DatabaseRole]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1103} - /// [google.spanner.admin.database.v1.ListDatabaseRolesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1117} + /// [google.spanner.admin.database.v1.DatabaseRole]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1163} + /// [google.spanner.admin.database.v1.ListDatabaseRolesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1177} /// // clang-format on StreamRange @@ -2104,8 +2104,8 @@ class DatabaseAdminClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.spanner.admin.database.v1.DatabaseRole]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1103} - /// [google.spanner.admin.database.v1.ListDatabaseRolesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1117} + /// [google.spanner.admin.database.v1.DatabaseRole]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1163} + /// [google.spanner.admin.database.v1.ListDatabaseRolesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/spanner_database_admin.proto#L1177} /// // clang-format on StreamRange @@ -2113,6 +2113,329 @@ class DatabaseAdminClient { google::spanner::admin::database::v1::ListDatabaseRolesRequest request, Options opts = {}); + // clang-format off + /// + /// Creates a new backup schedule. + /// + /// @param parent Required. The name of the database that this backup schedule applies to. + /// @param backup_schedule Required. The backup schedule to create. + /// @param backup_schedule_id Required. The Id to use for the backup schedule. The `backup_schedule_id` + /// appended to `parent` forms the full backup schedule name of the form + /// `projects//instances//databases//backupSchedules/`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.spanner.admin.database.v1.BackupSchedule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.BackupSchedule]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L46} + /// [google.spanner.admin.database.v1.CreateBackupScheduleRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L129} + /// + // clang-format on + StatusOr + CreateBackupSchedule( + std::string const& parent, + google::spanner::admin::database::v1::BackupSchedule const& + backup_schedule, + std::string const& backup_schedule_id, Options opts = {}); + + // clang-format off + /// + /// Creates a new backup schedule. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.spanner.admin.database.v1.CreateBackupScheduleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.spanner.admin.database.v1.BackupSchedule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.BackupSchedule]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L46} + /// [google.spanner.admin.database.v1.CreateBackupScheduleRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L129} + /// + // clang-format on + StatusOr + CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request, + Options opts = {}); + + // clang-format off + /// + /// Gets backup schedule for the input schedule name. + /// + /// @param name Required. The name of the schedule to retrieve. + /// Values are of the form + /// `projects//instances//databases//backupSchedules/`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.spanner.admin.database.v1.BackupSchedule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.BackupSchedule]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L46} + /// [google.spanner.admin.database.v1.GetBackupScheduleRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L149} + /// + // clang-format on + StatusOr + GetBackupSchedule(std::string const& name, Options opts = {}); + + // clang-format off + /// + /// Gets backup schedule for the input schedule name. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.spanner.admin.database.v1.GetBackupScheduleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.spanner.admin.database.v1.BackupSchedule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.BackupSchedule]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L46} + /// [google.spanner.admin.database.v1.GetBackupScheduleRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L149} + /// + // clang-format on + StatusOr + GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request, + Options opts = {}); + + // clang-format off + /// + /// Updates a backup schedule. + /// + /// @param backup_schedule Required. The backup schedule to update. `backup_schedule.name`, and the + /// fields to be updated as specified by `update_mask` are required. Other + /// fields are ignored. + /// @param update_mask Required. A mask specifying which fields in the BackupSchedule resource + /// should be updated. This mask is relative to the BackupSchedule resource, + /// not to the request message. The field mask must always be + /// specified; this prevents any future fields from being erased + /// accidentally. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.spanner.admin.database.v1.BackupSchedule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.BackupSchedule]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L46} + /// [google.spanner.admin.database.v1.UpdateBackupScheduleRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L214} + /// + // clang-format on + StatusOr + UpdateBackupSchedule( + google::spanner::admin::database::v1::BackupSchedule const& + backup_schedule, + google::protobuf::FieldMask const& update_mask, Options opts = {}); + + // clang-format off + /// + /// Updates a backup schedule. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.spanner.admin.database.v1.UpdateBackupScheduleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.spanner.admin.database.v1.BackupSchedule]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.BackupSchedule]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L46} + /// [google.spanner.admin.database.v1.UpdateBackupScheduleRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L214} + /// + // clang-format on + StatusOr + UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request, + Options opts = {}); + + // clang-format off + /// + /// Deletes a backup schedule. + /// + /// @param name Required. The name of the schedule to delete. + /// Values are of the form + /// `projects//instances//databases//backupSchedules/`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [`Status`] object. If the request failed, the + /// status contains the details of the failure. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.DeleteBackupScheduleRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L163} + /// + // clang-format on + Status DeleteBackupSchedule(std::string const& name, Options opts = {}); + + // clang-format off + /// + /// Deletes a backup schedule. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.spanner.admin.database.v1.DeleteBackupScheduleRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [`Status`] object. If the request failed, the + /// status contains the details of the failure. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.DeleteBackupScheduleRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L163} + /// + // clang-format on + Status DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request, + Options opts = {}); + + // clang-format off + /// + /// Lists all the backup schedules for the database. + /// + /// @param parent Required. Database is the parent resource whose backup schedules should be + /// listed. Values are of the form + /// projects//instances//databases/ + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.spanner.admin.database.v1.BackupSchedule], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.BackupSchedule]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L46} + /// [google.spanner.admin.database.v1.ListBackupSchedulesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L177} + /// + // clang-format on + StreamRange + ListBackupSchedules(std::string const& parent, Options opts = {}); + + // clang-format off + /// + /// Lists all the backup schedules for the database. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.spanner.admin.database.v1.ListBackupSchedulesRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.spanner.admin.database.v1.BackupSchedule], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.spanner.admin.database.v1.BackupSchedule]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L46} + /// [google.spanner.admin.database.v1.ListBackupSchedulesRequest]: @googleapis_reference_link{google/spanner/admin/database/v1/backup_schedule.proto#L177} + /// + // clang-format on + StreamRange + ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request, + Options opts = {}); + private: std::shared_ptr connection_; Options options_; diff --git a/google/cloud/spanner/admin/database_admin_connection.cc b/google/cloud/spanner/admin/database_admin_connection.cc index 36977b0583e45..bc928083dd7a8 100644 --- a/google/cloud/spanner/admin/database_admin_connection.cc +++ b/google/cloud/spanner/admin/database_admin_connection.cc @@ -272,6 +272,37 @@ DatabaseAdminConnection::ListDatabaseRoles( StreamRange>(); } +StatusOr +DatabaseAdminConnection::CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StatusOr +DatabaseAdminConnection::GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StatusOr +DatabaseAdminConnection::UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +Status DatabaseAdminConnection::DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +StreamRange +DatabaseAdminConnection::ListBackupSchedules( + google::spanner::admin::database::v1:: + ListBackupSchedulesRequest) { // NOLINT(performance-unnecessary-value-param) + return google::cloud::internal::MakeUnimplementedPaginationRange< + StreamRange>(); +} + std::shared_ptr MakeDatabaseAdminConnection( Options options) { internal::CheckExpectedOptions ListDatabaseRoles( google::spanner::admin::database::v1::ListDatabaseRolesRequest request); + + virtual StatusOr + CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request); + + virtual StatusOr + GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request); + + virtual StatusOr + UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request); + + virtual Status DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request); + + virtual StreamRange + ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request); }; /** diff --git a/google/cloud/spanner/admin/database_admin_connection_idempotency_policy.cc b/google/cloud/spanner/admin/database_admin_connection_idempotency_policy.cc index 31b3021bed926..7a3b29b4eb240 100644 --- a/google/cloud/spanner/admin/database_admin_connection_idempotency_policy.cc +++ b/google/cloud/spanner/admin/database_admin_connection_idempotency_policy.cc @@ -137,6 +137,32 @@ Idempotency DatabaseAdminConnectionIdempotencyPolicy::ListDatabaseRoles( return Idempotency::kIdempotent; } +Idempotency DatabaseAdminConnectionIdempotencyPolicy::CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency DatabaseAdminConnectionIdempotencyPolicy::GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const&) { + return Idempotency::kIdempotent; +} + +Idempotency DatabaseAdminConnectionIdempotencyPolicy::UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency DatabaseAdminConnectionIdempotencyPolicy::DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency DatabaseAdminConnectionIdempotencyPolicy::ListBackupSchedules( + google::spanner::admin::database::v1:: + ListBackupSchedulesRequest) { // NOLINT + return Idempotency::kIdempotent; +} + std::unique_ptr MakeDefaultDatabaseAdminConnectionIdempotencyPolicy() { return std::make_unique(); diff --git a/google/cloud/spanner/admin/database_admin_connection_idempotency_policy.h b/google/cloud/spanner/admin/database_admin_connection_idempotency_policy.h index 9086ec776d6d3..6bad375e449d0 100644 --- a/google/cloud/spanner/admin/database_admin_connection_idempotency_policy.h +++ b/google/cloud/spanner/admin/database_admin_connection_idempotency_policy.h @@ -103,6 +103,25 @@ class DatabaseAdminConnectionIdempotencyPolicy { virtual google::cloud::Idempotency ListDatabaseRoles( google::spanner::admin::database::v1::ListDatabaseRolesRequest request); + + virtual google::cloud::Idempotency CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request); + + virtual google::cloud::Idempotency GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request); + + virtual google::cloud::Idempotency UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request); + + virtual google::cloud::Idempotency DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request); + + virtual google::cloud::Idempotency ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request); }; std::unique_ptr diff --git a/google/cloud/spanner/admin/internal/database_admin_auth_decorator.cc b/google/cloud/spanner/admin/internal/database_admin_auth_decorator.cc index ff607031a9b42..4dcbef5469c26 100644 --- a/google/cloud/spanner/admin/internal/database_admin_auth_decorator.cc +++ b/google/cloud/spanner/admin/internal/database_admin_auth_decorator.cc @@ -333,6 +333,55 @@ DatabaseAdminAuth::ListDatabaseRoles( return child_->ListDatabaseRoles(context, options, request); } +StatusOr +DatabaseAdminAuth::CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->CreateBackupSchedule(context, options, request); +} + +StatusOr +DatabaseAdminAuth::GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->GetBackupSchedule(context, options, request); +} + +StatusOr +DatabaseAdminAuth::UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->UpdateBackupSchedule(context, options, request); +} + +Status DatabaseAdminAuth::DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->DeleteBackupSchedule(context, options, request); +} + +StatusOr +DatabaseAdminAuth::ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ListBackupSchedules(context, options, request); +} + future> DatabaseAdminAuth::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/spanner/admin/internal/database_admin_auth_decorator.h b/google/cloud/spanner/admin/internal/database_admin_auth_decorator.h index d192ef9cc6e99..c17edd949495f 100644 --- a/google/cloud/spanner/admin/internal/database_admin_auth_decorator.h +++ b/google/cloud/spanner/admin/internal/database_admin_auth_decorator.h @@ -183,6 +183,35 @@ class DatabaseAdminAuth : public DatabaseAdminStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) override; + StatusOr + CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StatusOr + ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/spanner/admin/internal/database_admin_connection_impl.cc b/google/cloud/spanner/admin/internal/database_admin_connection_impl.cc index 167cf39fd90df..cf745a7dcdd75 100644 --- a/google/cloud/spanner/admin/internal/database_admin_connection_impl.cc +++ b/google/cloud/spanner/admin/internal/database_admin_connection_impl.cc @@ -946,6 +946,104 @@ DatabaseAdminConnectionImpl::ListDatabaseRoles( }); } +StatusOr +DatabaseAdminConnectionImpl::CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->CreateBackupSchedule(request), + [this](grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1:: + CreateBackupScheduleRequest const& request) { + return stub_->CreateBackupSchedule(context, options, request); + }, + *current, request, __func__); +} + +StatusOr +DatabaseAdminConnectionImpl::GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->GetBackupSchedule(request), + [this]( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + return stub_->GetBackupSchedule(context, options, request); + }, + *current, request, __func__); +} + +StatusOr +DatabaseAdminConnectionImpl::UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->UpdateBackupSchedule(request), + [this](grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1:: + UpdateBackupScheduleRequest const& request) { + return stub_->UpdateBackupSchedule(context, options, request); + }, + *current, request, __func__); +} + +Status DatabaseAdminConnectionImpl::DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->DeleteBackupSchedule(request), + [this](grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1:: + DeleteBackupScheduleRequest const& request) { + return stub_->DeleteBackupSchedule(context, options, request); + }, + *current, request, __func__); +} + +StreamRange +DatabaseAdminConnectionImpl::ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = idempotency_policy(*current)->ListBackupSchedules(request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange< + StreamRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, google::spanner::admin::database::v1:: + ListBackupSchedulesRequest const& r) { + return google::cloud::internal::RetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub](grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1:: + ListBackupSchedulesRequest const& request) { + return stub->ListBackupSchedules(context, options, request); + }, + options, r, function_name); + }, + [](google::spanner::admin::database::v1::ListBackupSchedulesResponse r) { + std::vector + result(r.backup_schedules().size()); + auto& messages = *r.mutable_backup_schedules(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END } // namespace spanner_admin_internal } // namespace cloud diff --git a/google/cloud/spanner/admin/internal/database_admin_connection_impl.h b/google/cloud/spanner/admin/internal/database_admin_connection_impl.h index 5d5b429cbc2e0..6f69c1ccc0a57 100644 --- a/google/cloud/spanner/admin/internal/database_admin_connection_impl.h +++ b/google/cloud/spanner/admin/internal/database_admin_connection_impl.h @@ -191,6 +191,30 @@ class DatabaseAdminConnectionImpl google::spanner::admin::database::v1::ListDatabaseRolesRequest request) override; + StatusOr + CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StreamRange + ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request) + override; + private: std::unique_ptr background_; std::shared_ptr stub_; diff --git a/google/cloud/spanner/admin/internal/database_admin_logging_decorator.cc b/google/cloud/spanner/admin/internal/database_admin_logging_decorator.cc index 4777de2081e3f..7ccc4c2572748 100644 --- a/google/cloud/spanner/admin/internal/database_admin_logging_decorator.cc +++ b/google/cloud/spanner/admin/internal/database_admin_logging_decorator.cc @@ -410,6 +410,76 @@ DatabaseAdminLogging::ListDatabaseRoles( context, options, request, __func__, tracing_options_); } +StatusOr +DatabaseAdminLogging::CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1:: + CreateBackupScheduleRequest const& request) { + return child_->CreateBackupSchedule(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +DatabaseAdminLogging::GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this]( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + return child_->GetBackupSchedule(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +DatabaseAdminLogging::UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1:: + UpdateBackupScheduleRequest const& request) { + return child_->UpdateBackupSchedule(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +Status DatabaseAdminLogging::DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1:: + DeleteBackupScheduleRequest const& request) { + return child_->DeleteBackupSchedule(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +DatabaseAdminLogging::ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1:: + ListBackupSchedulesRequest const& request) { + return child_->ListBackupSchedules(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + future> DatabaseAdminLogging::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/spanner/admin/internal/database_admin_logging_decorator.h b/google/cloud/spanner/admin/internal/database_admin_logging_decorator.h index f1f9ba3ce1a58..d0e8e19c8902d 100644 --- a/google/cloud/spanner/admin/internal/database_admin_logging_decorator.h +++ b/google/cloud/spanner/admin/internal/database_admin_logging_decorator.h @@ -183,6 +183,35 @@ class DatabaseAdminLogging : public DatabaseAdminStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) override; + StatusOr + CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StatusOr + ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/spanner/admin/internal/database_admin_metadata_decorator.cc b/google/cloud/spanner/admin/internal/database_admin_metadata_decorator.cc index aa08be9d332d0..1322cf1e29aa3 100644 --- a/google/cloud/spanner/admin/internal/database_admin_metadata_decorator.cc +++ b/google/cloud/spanner/admin/internal/database_admin_metadata_decorator.cc @@ -307,6 +307,57 @@ DatabaseAdminMetadata::ListDatabaseRoles( return child_->ListDatabaseRoles(context, options, request); } +StatusOr +DatabaseAdminMetadata::CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->CreateBackupSchedule(context, options, request); +} + +StatusOr +DatabaseAdminMetadata::GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->GetBackupSchedule(context, options, request); +} + +StatusOr +DatabaseAdminMetadata::UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + SetMetadata( + context, options, + absl::StrCat("backup_schedule.name=", + internal::UrlEncode(request.backup_schedule().name()))); + return child_->UpdateBackupSchedule(context, options, request); +} + +Status DatabaseAdminMetadata::DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->DeleteBackupSchedule(context, options, request); +} + +StatusOr +DatabaseAdminMetadata::ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ListBackupSchedules(context, options, request); +} + future> DatabaseAdminMetadata::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/spanner/admin/internal/database_admin_metadata_decorator.h b/google/cloud/spanner/admin/internal/database_admin_metadata_decorator.h index 42a050c4411b6..d003fe21af1bb 100644 --- a/google/cloud/spanner/admin/internal/database_admin_metadata_decorator.h +++ b/google/cloud/spanner/admin/internal/database_admin_metadata_decorator.h @@ -183,6 +183,35 @@ class DatabaseAdminMetadata : public DatabaseAdminStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) override; + StatusOr + CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StatusOr + ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/spanner/admin/internal/database_admin_rest_connection_impl.cc b/google/cloud/spanner/admin/internal/database_admin_rest_connection_impl.cc index b24fde70a7719..952a06d071b0d 100644 --- a/google/cloud/spanner/admin/internal/database_admin_rest_connection_impl.cc +++ b/google/cloud/spanner/admin/internal/database_admin_rest_connection_impl.cc @@ -910,6 +910,105 @@ DatabaseAdminRestConnectionImpl::ListDatabaseRoles( }); } +StatusOr +DatabaseAdminRestConnectionImpl::CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::rest_internal::RestRetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->CreateBackupSchedule(request), + [this](rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1:: + CreateBackupScheduleRequest const& request) { + return stub_->CreateBackupSchedule(rest_context, options, request); + }, + *current, request, __func__); +} + +StatusOr +DatabaseAdminRestConnectionImpl::GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::rest_internal::RestRetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->GetBackupSchedule(request), + [this]( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + return stub_->GetBackupSchedule(rest_context, options, request); + }, + *current, request, __func__); +} + +StatusOr +DatabaseAdminRestConnectionImpl::UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::rest_internal::RestRetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->UpdateBackupSchedule(request), + [this](rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1:: + UpdateBackupScheduleRequest const& request) { + return stub_->UpdateBackupSchedule(rest_context, options, request); + }, + *current, request, __func__); +} + +Status DatabaseAdminRestConnectionImpl::DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::rest_internal::RestRetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->DeleteBackupSchedule(request), + [this](rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1:: + DeleteBackupScheduleRequest const& request) { + return stub_->DeleteBackupSchedule(rest_context, options, request); + }, + *current, request, __func__); +} + +StreamRange +DatabaseAdminRestConnectionImpl::ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = idempotency_policy(*current)->ListBackupSchedules(request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange< + StreamRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, google::spanner::admin::database::v1:: + ListBackupSchedulesRequest const& r) { + return google::cloud::rest_internal::RestRetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub](rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1:: + ListBackupSchedulesRequest const& request) { + return stub->ListBackupSchedules(rest_context, options, request); + }, + options, r, function_name); + }, + [](google::spanner::admin::database::v1::ListBackupSchedulesResponse r) { + std::vector + result(r.backup_schedules().size()); + auto& messages = *r.mutable_backup_schedules(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END } // namespace spanner_admin_internal } // namespace cloud diff --git a/google/cloud/spanner/admin/internal/database_admin_rest_connection_impl.h b/google/cloud/spanner/admin/internal/database_admin_rest_connection_impl.h index 8a079fcc3f455..ae187e7a5fe11 100644 --- a/google/cloud/spanner/admin/internal/database_admin_rest_connection_impl.h +++ b/google/cloud/spanner/admin/internal/database_admin_rest_connection_impl.h @@ -189,6 +189,30 @@ class DatabaseAdminRestConnectionImpl google::spanner::admin::database::v1::ListDatabaseRolesRequest request) override; + StatusOr + CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StreamRange + ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request) + override; + private: static std::unique_ptr retry_policy( Options const& options) { diff --git a/google/cloud/spanner/admin/internal/database_admin_rest_logging_decorator.cc b/google/cloud/spanner/admin/internal/database_admin_rest_logging_decorator.cc index 4c11572427af4..e76d8017da64f 100644 --- a/google/cloud/spanner/admin/internal/database_admin_rest_logging_decorator.cc +++ b/google/cloud/spanner/admin/internal/database_admin_rest_logging_decorator.cc @@ -414,6 +414,76 @@ DatabaseAdminRestLogging::ListDatabaseRoles( rest_context, options, request, __func__, tracing_options_); } +StatusOr +DatabaseAdminRestLogging::CreateBackupSchedule( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1:: + CreateBackupScheduleRequest const& request) { + return child_->CreateBackupSchedule(rest_context, options, request); + }, + rest_context, options, request, __func__, tracing_options_); +} + +StatusOr +DatabaseAdminRestLogging::GetBackupSchedule( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this]( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + return child_->GetBackupSchedule(rest_context, options, request); + }, + rest_context, options, request, __func__, tracing_options_); +} + +StatusOr +DatabaseAdminRestLogging::UpdateBackupSchedule( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1:: + UpdateBackupScheduleRequest const& request) { + return child_->UpdateBackupSchedule(rest_context, options, request); + }, + rest_context, options, request, __func__, tracing_options_); +} + +Status DatabaseAdminRestLogging::DeleteBackupSchedule( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1:: + DeleteBackupScheduleRequest const& request) { + return child_->DeleteBackupSchedule(rest_context, options, request); + }, + rest_context, options, request, __func__, tracing_options_); +} + +StatusOr +DatabaseAdminRestLogging::ListBackupSchedules( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) { + return google::cloud::internal::LogWrapper( + [this](rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1:: + ListBackupSchedulesRequest const& request) { + return child_->ListBackupSchedules(rest_context, options, request); + }, + rest_context, options, request, __func__, tracing_options_); +} + future> DatabaseAdminRestLogging::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/spanner/admin/internal/database_admin_rest_logging_decorator.h b/google/cloud/spanner/admin/internal/database_admin_rest_logging_decorator.h index 90cad5f3d0877..4d15486ced9dc 100644 --- a/google/cloud/spanner/admin/internal/database_admin_rest_logging_decorator.h +++ b/google/cloud/spanner/admin/internal/database_admin_rest_logging_decorator.h @@ -206,6 +206,40 @@ class DatabaseAdminRestLogging : public DatabaseAdminRestStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) override; + StatusOr + CreateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StatusOr + ListBackupSchedules( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::unique_ptr rest_context, diff --git a/google/cloud/spanner/admin/internal/database_admin_rest_metadata_decorator.cc b/google/cloud/spanner/admin/internal/database_admin_rest_metadata_decorator.cc index cbab1a498add2..e02ac6ecd2d2b 100644 --- a/google/cloud/spanner/admin/internal/database_admin_rest_metadata_decorator.cc +++ b/google/cloud/spanner/admin/internal/database_admin_rest_metadata_decorator.cc @@ -271,6 +271,50 @@ DatabaseAdminRestMetadata::ListDatabaseRoles( return child_->ListDatabaseRoles(rest_context, options, request); } +StatusOr +DatabaseAdminRestMetadata::CreateBackupSchedule( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + SetMetadata(rest_context, options); + return child_->CreateBackupSchedule(rest_context, options, request); +} + +StatusOr +DatabaseAdminRestMetadata::GetBackupSchedule( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + SetMetadata(rest_context, options); + return child_->GetBackupSchedule(rest_context, options, request); +} + +StatusOr +DatabaseAdminRestMetadata::UpdateBackupSchedule( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + SetMetadata(rest_context, options); + return child_->UpdateBackupSchedule(rest_context, options, request); +} + +Status DatabaseAdminRestMetadata::DeleteBackupSchedule( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + SetMetadata(rest_context, options); + return child_->DeleteBackupSchedule(rest_context, options, request); +} + +StatusOr +DatabaseAdminRestMetadata::ListBackupSchedules( + rest_internal::RestContext& rest_context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) { + SetMetadata(rest_context, options); + return child_->ListBackupSchedules(rest_context, options, request); +} + future> DatabaseAdminRestMetadata::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/spanner/admin/internal/database_admin_rest_metadata_decorator.h b/google/cloud/spanner/admin/internal/database_admin_rest_metadata_decorator.h index 17462004fe86c..14b4dde31c736 100644 --- a/google/cloud/spanner/admin/internal/database_admin_rest_metadata_decorator.h +++ b/google/cloud/spanner/admin/internal/database_admin_rest_metadata_decorator.h @@ -210,6 +210,40 @@ class DatabaseAdminRestMetadata : public DatabaseAdminRestStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) override; + StatusOr + CreateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StatusOr + ListBackupSchedules( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) override; + google::cloud::future> AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/spanner/admin/internal/database_admin_rest_stub.cc b/google/cloud/spanner/admin/internal/database_admin_rest_stub.cc index 5153ff2b4b130..6bdcebf9ca158 100644 --- a/google/cloud/spanner/admin/internal/database_admin_rest_stub.cc +++ b/google/cloud/spanner/admin/internal/database_admin_rest_stub.cc @@ -493,6 +493,74 @@ DefaultDatabaseAdminRestStub::ListDatabaseRoles( std::make_pair("page_token", request.page_token())})); } +StatusOr +DefaultDatabaseAdminRestStub::CreateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + return rest_internal::Post< + google::spanner::admin::database::v1::BackupSchedule>( + *service_, rest_context, request.backup_schedule(), false, + absl::StrCat("/", rest_internal::DetermineApiVersion("v1", options), "/", + request.parent(), "/", "backupSchedules"), + rest_internal::TrimEmptyQueryParameters({std::make_pair( + "backup_schedule_id", request.backup_schedule_id())})); +} + +StatusOr +DefaultDatabaseAdminRestStub::GetBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + return rest_internal::Get< + google::spanner::admin::database::v1::BackupSchedule>( + *service_, rest_context, request, false, + absl::StrCat("/", rest_internal::DetermineApiVersion("v1", options), "/", + request.name())); +} + +StatusOr +DefaultDatabaseAdminRestStub::UpdateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + return rest_internal::Patch< + google::spanner::admin::database::v1::BackupSchedule>( + *service_, rest_context, request.backup_schedule(), false, + absl::StrCat("/", rest_internal::DetermineApiVersion("v1", options), "/", + request.backup_schedule().name())); +} + +Status DefaultDatabaseAdminRestStub::DeleteBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + return rest_internal::Delete( + *service_, rest_context, request, false, + absl::StrCat("/", rest_internal::DetermineApiVersion("v1", options), "/", + request.name())); +} + +StatusOr +DefaultDatabaseAdminRestStub::ListBackupSchedules( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) { + return rest_internal::Get< + google::spanner::admin::database::v1::ListBackupSchedulesResponse>( + *service_, rest_context, request, false, + absl::StrCat("/", rest_internal::DetermineApiVersion("v1", options), "/", + request.parent(), "/", "backupSchedules"), + rest_internal::TrimEmptyQueryParameters( + {std::make_pair("page_size", std::to_string(request.page_size())), + std::make_pair("page_token", request.page_token())})); +} + future> DefaultDatabaseAdminRestStub::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/spanner/admin/internal/database_admin_rest_stub.h b/google/cloud/spanner/admin/internal/database_admin_rest_stub.h index 39aa1a935ac59..43485532f984a 100644 --- a/google/cloud/spanner/admin/internal/database_admin_rest_stub.h +++ b/google/cloud/spanner/admin/internal/database_admin_rest_stub.h @@ -206,6 +206,41 @@ class DatabaseAdminRestStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) = 0; + virtual StatusOr + CreateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) = 0; + + virtual StatusOr + GetBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) = 0; + + virtual StatusOr + UpdateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) = 0; + + virtual Status DeleteBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) = 0; + + virtual StatusOr< + google::spanner::admin::database::v1::ListBackupSchedulesResponse> + ListBackupSchedules( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) = 0; + virtual future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::unique_ptr rest_context, @@ -392,6 +427,40 @@ class DefaultDatabaseAdminRestStub : public DatabaseAdminRestStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) override; + StatusOr + CreateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StatusOr + ListBackupSchedules( + google::cloud::rest_internal::RestContext& rest_context, + Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::unique_ptr rest_context, diff --git a/google/cloud/spanner/admin/internal/database_admin_stub.cc b/google/cloud/spanner/admin/internal/database_admin_stub.cc index 284433647ebbe..2ecb1f7377e12 100644 --- a/google/cloud/spanner/admin/internal/database_admin_stub.cc +++ b/google/cloud/spanner/admin/internal/database_admin_stub.cc @@ -393,6 +393,70 @@ DefaultDatabaseAdminStub::ListDatabaseRoles( return response; } +StatusOr +DefaultDatabaseAdminStub::CreateBackupSchedule( + grpc::ClientContext& context, Options const&, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + google::spanner::admin::database::v1::BackupSchedule response; + auto status = grpc_stub_->CreateBackupSchedule(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultDatabaseAdminStub::GetBackupSchedule( + grpc::ClientContext& context, Options const&, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + google::spanner::admin::database::v1::BackupSchedule response; + auto status = grpc_stub_->GetBackupSchedule(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultDatabaseAdminStub::UpdateBackupSchedule( + grpc::ClientContext& context, Options const&, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + google::spanner::admin::database::v1::BackupSchedule response; + auto status = grpc_stub_->UpdateBackupSchedule(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +Status DefaultDatabaseAdminStub::DeleteBackupSchedule( + grpc::ClientContext& context, Options const&, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + google::protobuf::Empty response; + auto status = grpc_stub_->DeleteBackupSchedule(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return google::cloud::Status(); +} + +StatusOr +DefaultDatabaseAdminStub::ListBackupSchedules( + grpc::ClientContext& context, Options const&, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) { + google::spanner::admin::database::v1::ListBackupSchedulesResponse response; + auto status = grpc_stub_->ListBackupSchedules(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + future> DefaultDatabaseAdminStub::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/spanner/admin/internal/database_admin_stub.h b/google/cloud/spanner/admin/internal/database_admin_stub.h index 0c70918a5cc19..113b736ded73f 100644 --- a/google/cloud/spanner/admin/internal/database_admin_stub.h +++ b/google/cloud/spanner/admin/internal/database_admin_stub.h @@ -187,6 +187,36 @@ class DatabaseAdminStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) = 0; + virtual StatusOr + CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) = 0; + + virtual StatusOr + GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) = 0; + + virtual StatusOr + UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) = 0; + + virtual Status DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) = 0; + + virtual StatusOr< + google::spanner::admin::database::v1::ListBackupSchedulesResponse> + ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) = 0; + virtual future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, @@ -354,6 +384,35 @@ class DefaultDatabaseAdminStub : public DatabaseAdminStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) override; + StatusOr + CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StatusOr + ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/spanner/admin/internal/database_admin_tracing_connection.cc b/google/cloud/spanner/admin/internal/database_admin_tracing_connection.cc index 036847bd1726c..ec454cad5e10e 100644 --- a/google/cloud/spanner/admin/internal/database_admin_tracing_connection.cc +++ b/google/cloud/spanner/admin/internal/database_admin_tracing_connection.cc @@ -361,6 +361,57 @@ DatabaseAdminTracingConnection::ListDatabaseRoles( std::move(sr)); } +StatusOr +DatabaseAdminTracingConnection::CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + auto span = internal::MakeSpan( + "spanner_admin::DatabaseAdminConnection::CreateBackupSchedule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->CreateBackupSchedule(request)); +} + +StatusOr +DatabaseAdminTracingConnection::GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + auto span = internal::MakeSpan( + "spanner_admin::DatabaseAdminConnection::GetBackupSchedule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->GetBackupSchedule(request)); +} + +StatusOr +DatabaseAdminTracingConnection::UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + auto span = internal::MakeSpan( + "spanner_admin::DatabaseAdminConnection::UpdateBackupSchedule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->UpdateBackupSchedule(request)); +} + +Status DatabaseAdminTracingConnection::DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + auto span = internal::MakeSpan( + "spanner_admin::DatabaseAdminConnection::DeleteBackupSchedule"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->DeleteBackupSchedule(request)); +} + +StreamRange +DatabaseAdminTracingConnection::ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request) { + auto span = internal::MakeSpan( + "spanner_admin::DatabaseAdminConnection::ListBackupSchedules"); + internal::OTelScope scope(span); + auto sr = child_->ListBackupSchedules(std::move(request)); + return internal::MakeTracedStreamRange< + google::spanner::admin::database::v1::BackupSchedule>(std::move(span), + std::move(sr)); +} + #endif // GOOGLE_CLOUD_CPP_HAVE_OPENTELEMETRY std::shared_ptr diff --git a/google/cloud/spanner/admin/internal/database_admin_tracing_connection.h b/google/cloud/spanner/admin/internal/database_admin_tracing_connection.h index 817fdf4810d3c..1b76c25a7c558 100644 --- a/google/cloud/spanner/admin/internal/database_admin_tracing_connection.h +++ b/google/cloud/spanner/admin/internal/database_admin_tracing_connection.h @@ -179,6 +179,30 @@ class DatabaseAdminTracingConnection google::spanner::admin::database::v1::ListDatabaseRolesRequest request) override; + StatusOr + CreateBackupSchedule( + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StreamRange + ListBackupSchedules( + google::spanner::admin::database::v1::ListBackupSchedulesRequest request) + override; + private: std::shared_ptr child_; }; diff --git a/google/cloud/spanner/admin/internal/database_admin_tracing_stub.cc b/google/cloud/spanner/admin/internal/database_admin_tracing_stub.cc index 53fe71ee15b98..df960ce9bcd56 100644 --- a/google/cloud/spanner/admin/internal/database_admin_tracing_stub.cc +++ b/google/cloud/spanner/admin/internal/database_admin_tracing_stub.cc @@ -367,6 +367,70 @@ DatabaseAdminTracingStub::ListDatabaseRoles( context, *span, child_->ListDatabaseRoles(context, options, request)); } +StatusOr +DatabaseAdminTracingStub::CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.spanner.admin.database.v1.DatabaseAdmin", "CreateBackupSchedule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, child_->CreateBackupSchedule(context, options, request)); +} + +StatusOr +DatabaseAdminTracingStub::GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.spanner.admin.database.v1.DatabaseAdmin", "GetBackupSchedule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, child_->GetBackupSchedule(context, options, request)); +} + +StatusOr +DatabaseAdminTracingStub::UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.spanner.admin.database.v1.DatabaseAdmin", "UpdateBackupSchedule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, child_->UpdateBackupSchedule(context, options, request)); +} + +Status DatabaseAdminTracingStub::DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.spanner.admin.database.v1.DatabaseAdmin", "DeleteBackupSchedule"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, child_->DeleteBackupSchedule(context, options, request)); +} + +StatusOr +DatabaseAdminTracingStub::ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) { + auto span = internal::MakeSpanGrpc( + "google.spanner.admin.database.v1.DatabaseAdmin", "ListBackupSchedules"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan( + context, *span, child_->ListBackupSchedules(context, options, request)); +} + future> DatabaseAdminTracingStub::AsyncGetOperation( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/spanner/admin/internal/database_admin_tracing_stub.h b/google/cloud/spanner/admin/internal/database_admin_tracing_stub.h index 1be30c617561c..3b3437effb013 100644 --- a/google/cloud/spanner/admin/internal/database_admin_tracing_stub.h +++ b/google/cloud/spanner/admin/internal/database_admin_tracing_stub.h @@ -181,6 +181,35 @@ class DatabaseAdminTracingStub : public DatabaseAdminStub { google::spanner::admin::database::v1::ListDatabaseRolesRequest const& request) override; + StatusOr + CreateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request) override; + + StatusOr + GetBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request) override; + + StatusOr + UpdateBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request) override; + + Status DeleteBackupSchedule( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request) override; + + StatusOr + ListBackupSchedules( + grpc::ClientContext& context, Options const& options, + google::spanner::admin::database::v1::ListBackupSchedulesRequest const& + request) override; + future> AsyncGetOperation( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/spanner/admin/mocks/mock_database_admin_connection.h b/google/cloud/spanner/admin/mocks/mock_database_admin_connection.h index a57fe7335cf49..6c914c1dbe347 100644 --- a/google/cloud/spanner/admin/mocks/mock_database_admin_connection.h +++ b/google/cloud/spanner/admin/mocks/mock_database_admin_connection.h @@ -257,6 +257,40 @@ class MockDatabaseAdminConnection ListDatabaseRoles, (google::spanner::admin::database::v1::ListDatabaseRolesRequest request), (override)); + + MOCK_METHOD( + StatusOr, + CreateBackupSchedule, + (google::spanner::admin::database::v1::CreateBackupScheduleRequest const& + request), + (override)); + + MOCK_METHOD( + StatusOr, + GetBackupSchedule, + (google::spanner::admin::database::v1::GetBackupScheduleRequest const& + request), + (override)); + + MOCK_METHOD( + StatusOr, + UpdateBackupSchedule, + (google::spanner::admin::database::v1::UpdateBackupScheduleRequest const& + request), + (override)); + + MOCK_METHOD( + Status, DeleteBackupSchedule, + (google::spanner::admin::database::v1::DeleteBackupScheduleRequest const& + request), + (override)); + + MOCK_METHOD( + (StreamRange), + ListBackupSchedules, + (google::spanner::admin::database::v1::ListBackupSchedulesRequest + request), + (override)); }; GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END diff --git a/google/cloud/sql/v1/sql_instances_client.h b/google/cloud/sql/v1/sql_instances_client.h index 798fc75542e61..d35e87baf480a 100644 --- a/google/cloud/sql/v1/sql_instances_client.h +++ b/google/cloud/sql/v1/sql_instances_client.h @@ -897,7 +897,7 @@ class SqlInstancesServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.sql.v1.SqlInstancesCreateEphemeralCertRequest]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_instances.proto#L792} - /// [google.cloud.sql.v1.SslCert]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_resources.proto#L1357} + /// [google.cloud.sql.v1.SslCert]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_resources.proto#L1363} /// // clang-format on StatusOr CreateEphemeral( @@ -1156,8 +1156,8 @@ class SqlInstancesServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.sql.v1.SqlInstancesAcquireSsrsLeaseRequest]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_instances.proto#L1657} - /// [google.cloud.sql.v1.SqlInstancesAcquireSsrsLeaseResponse]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_instances.proto#L1674} + /// [google.cloud.sql.v1.SqlInstancesAcquireSsrsLeaseRequest]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_instances.proto#L1692} + /// [google.cloud.sql.v1.SqlInstancesAcquireSsrsLeaseResponse]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_instances.proto#L1709} /// // clang-format on StatusOr @@ -1189,8 +1189,8 @@ class SqlInstancesServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.sql.v1.SqlInstancesReleaseSsrsLeaseRequest]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_instances.proto#L1680} - /// [google.cloud.sql.v1.SqlInstancesReleaseSsrsLeaseResponse]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_instances.proto#L1692} + /// [google.cloud.sql.v1.SqlInstancesReleaseSsrsLeaseRequest]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_instances.proto#L1715} + /// [google.cloud.sql.v1.SqlInstancesReleaseSsrsLeaseResponse]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_instances.proto#L1727} /// // clang-format on StatusOr diff --git a/google/cloud/sql/v1/sql_ssl_certs_client.h b/google/cloud/sql/v1/sql_ssl_certs_client.h index 62288fbd5b531..04deb2723ea09 100644 --- a/google/cloud/sql/v1/sql_ssl_certs_client.h +++ b/google/cloud/sql/v1/sql_ssl_certs_client.h @@ -145,7 +145,7 @@ class SqlSslCertsServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.sql.v1.SqlSslCertsGetRequest]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_ssl_certs.proto#L83} - /// [google.cloud.sql.v1.SslCert]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_resources.proto#L1357} + /// [google.cloud.sql.v1.SslCert]: @googleapis_reference_link{google/cloud/sql/v1/cloud_sql_resources.proto#L1363} /// // clang-format on StatusOr Get( diff --git a/google/cloud/video/livestream/v1/internal/livestream_auth_decorator.cc b/google/cloud/video/livestream/v1/internal/livestream_auth_decorator.cc index ac668eb08bf5b..841605153297b 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_auth_decorator.cc +++ b/google/cloud/video/livestream/v1/internal/livestream_auth_decorator.cc @@ -326,6 +326,80 @@ Status LivestreamServiceAuth::DeleteEvent( return child_->DeleteEvent(context, options, request); } +StatusOr +LivestreamServiceAuth::ListClips( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->ListClips(context, options, request); +} + +StatusOr +LivestreamServiceAuth::GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->GetClip(context, options, request); +} + +future> +LivestreamServiceAuth::AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + using ReturnType = StatusOr; + return auth_->AsyncConfigureContext(std::move(context)) + .then([cq, child = child_, options = std::move(options), + request](future>> + f) mutable { + auto context = f.get(); + if (!context) { + return make_ready_future(ReturnType(std::move(context).status())); + } + return child->AsyncCreateClip(cq, *std::move(context), + std::move(options), request); + }); +} + +StatusOr LivestreamServiceAuth::CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->CreateClip(context, options, request); +} + +future> +LivestreamServiceAuth::AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + using ReturnType = StatusOr; + return auth_->AsyncConfigureContext(std::move(context)) + .then([cq, child = child_, options = std::move(options), + request](future>> + f) mutable { + auto context = f.get(); + if (!context) { + return make_ready_future(ReturnType(std::move(context).status())); + } + return child->AsyncDeleteClip(cq, *std::move(context), + std::move(options), request); + }); +} + +StatusOr LivestreamServiceAuth::DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + auto status = auth_->ConfigureContext(context); + if (!status.ok()) return status; + return child_->DeleteClip(context, options, request); +} + future> LivestreamServiceAuth::AsyncCreateAsset( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/video/livestream/v1/internal/livestream_auth_decorator.h b/google/cloud/video/livestream/v1/internal/livestream_auth_decorator.h index 2cadb75ceed3f..b1a34dac74dc4 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_auth_decorator.h +++ b/google/cloud/video/livestream/v1/internal/livestream_auth_decorator.h @@ -175,6 +175,40 @@ class LivestreamServiceAuth : public LivestreamServiceStub { google::cloud::video::livestream::v1::DeleteEventRequest const& request) override; + StatusOr ListClips( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& request) + override; + + StatusOr GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) + override; + + future> AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + StatusOr CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + future> AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + + StatusOr DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + future> AsyncCreateAsset( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/video/livestream/v1/internal/livestream_connection_impl.cc b/google/cloud/video/livestream/v1/internal/livestream_connection_impl.cc index bc157b3b712c1..33d3318ad9d93 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_connection_impl.cc +++ b/google/cloud/video/livestream/v1/internal/livestream_connection_impl.cc @@ -1005,6 +1005,244 @@ Status LivestreamServiceConnectionImpl::DeleteEvent( *current, request, __func__); } +StreamRange +LivestreamServiceConnectionImpl::ListClips( + google::cloud::video::livestream::v1::ListClipsRequest request) { + request.clear_page_token(); + auto current = google::cloud::internal::SaveCurrentOptions(); + auto idempotency = idempotency_policy(*current)->ListClips(request); + char const* function_name = __func__; + return google::cloud::internal::MakePaginationRange< + StreamRange>( + current, std::move(request), + [idempotency, function_name, stub = stub_, + retry = + std::shared_ptr( + retry_policy(*current)), + backoff = std::shared_ptr(backoff_policy(*current))]( + Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& r) { + return google::cloud::internal::RetryLoop( + retry->clone(), backoff->clone(), idempotency, + [stub](grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& + request) { + return stub->ListClips(context, options, request); + }, + options, r, function_name); + }, + [](google::cloud::video::livestream::v1::ListClipsResponse r) { + std::vector result( + r.clips().size()); + auto& messages = *r.mutable_clips(); + std::move(messages.begin(), messages.end(), result.begin()); + return result; + }); +} + +StatusOr +LivestreamServiceConnectionImpl::GetClip( + google::cloud::video::livestream::v1::GetClipRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->GetClip(request), + [this]( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) { + return stub_->GetClip(context, options, request); + }, + *current, request, __func__); +} + +future> +LivestreamServiceConnectionImpl::CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + auto request_copy = request; + auto const idempotent = + idempotency_policy(*current)->CreateClip(request_copy); + return google::cloud::internal::AsyncLongRunningOperation< + google::cloud::video::livestream::v1::Clip>( + background_->cq(), current, std::move(request_copy), + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& + request) { + return stub->AsyncCreateClip(cq, std::move(context), std::move(options), + request); + }, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultResponse< + google::cloud::video::livestream::v1::Clip>, + retry_policy(*current), backoff_policy(*current), idempotent, + polling_policy(*current), __func__); +} + +StatusOr +LivestreamServiceConnectionImpl::CreateClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->CreateClip(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::CreateClipRequest const& + request) { + return stub_->CreateClip(context, options, request); + }, + *current, request, __func__); +} + +future> +LivestreamServiceConnectionImpl::CreateClip( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto current = google::cloud::internal::SaveCurrentOptions(); + if (!operation.metadata() + .Is()) { + return make_ready_future< + StatusOr>( + internal::InvalidArgumentError( + "operation does not correspond to CreateClip", + GCP_ERROR_INFO().WithMetadata("operation", + operation.metadata().DebugString()))); + } + + return google::cloud::internal::AsyncAwaitLongRunningOperation< + google::cloud::video::livestream::v1::Clip>( + background_->cq(), current, operation, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultResponse< + google::cloud::video::livestream::v1::Clip>, + polling_policy(*current), __func__); +} + +future> +LivestreamServiceConnectionImpl::DeleteClip( + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + auto request_copy = request; + auto const idempotent = + idempotency_policy(*current)->DeleteClip(request_copy); + return google::cloud::internal::AsyncLongRunningOperation< + google::cloud::video::livestream::v1::OperationMetadata>( + background_->cq(), current, std::move(request_copy), + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& + request) { + return stub->AsyncDeleteClip(cq, std::move(context), std::move(options), + request); + }, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultMetadata< + google::cloud::video::livestream::v1::OperationMetadata>, + retry_policy(*current), backoff_policy(*current), idempotent, + polling_policy(*current), __func__); +} + +StatusOr +LivestreamServiceConnectionImpl::DeleteClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + auto current = google::cloud::internal::SaveCurrentOptions(); + return google::cloud::internal::RetryLoop( + retry_policy(*current), backoff_policy(*current), + idempotency_policy(*current)->DeleteClip(request), + [this](grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::DeleteClipRequest const& + request) { + return stub_->DeleteClip(context, options, request); + }, + *current, request, __func__); +} + +future> +LivestreamServiceConnectionImpl::DeleteClip( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto current = google::cloud::internal::SaveCurrentOptions(); + if (!operation.metadata() + .Is()) { + return make_ready_future< + StatusOr>( + internal::InvalidArgumentError( + "operation does not correspond to DeleteClip", + GCP_ERROR_INFO().WithMetadata("operation", + operation.metadata().DebugString()))); + } + + return google::cloud::internal::AsyncAwaitLongRunningOperation< + google::cloud::video::livestream::v1::OperationMetadata>( + background_->cq(), current, operation, + [stub = stub_](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::GetOperationRequest const& request) { + return stub->AsyncGetOperation(cq, std::move(context), + std::move(options), request); + }, + [stub = stub_]( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::longrunning::CancelOperationRequest const& request) { + return stub->AsyncCancelOperation(cq, std::move(context), + std::move(options), request); + }, + &google::cloud::internal::ExtractLongRunningResultMetadata< + google::cloud::video::livestream::v1::OperationMetadata>, + polling_policy(*current), __func__); +} + future> LivestreamServiceConnectionImpl::CreateAsset( google::cloud::video::livestream::v1::CreateAssetRequest const& request) { diff --git a/google/cloud/video/livestream/v1/internal/livestream_connection_impl.h b/google/cloud/video/livestream/v1/internal/livestream_connection_impl.h index f283dc8bd9e18..bf2d8b55cb1ef 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_connection_impl.h +++ b/google/cloud/video/livestream/v1/internal/livestream_connection_impl.h @@ -191,6 +191,39 @@ class LivestreamServiceConnectionImpl google::cloud::video::livestream::v1::DeleteEventRequest const& request) override; + StreamRange ListClips( + google::cloud::video::livestream::v1::ListClipsRequest request) override; + + StatusOr GetClip( + google::cloud::video::livestream::v1::GetClipRequest const& request) + override; + + future> CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + StatusOr CreateClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + future> CreateClip( + ExperimentalTag, + google::longrunning::Operation const& operation) override; + + future> + DeleteClip(google::cloud::video::livestream::v1::DeleteClipRequest const& + request) override; + + StatusOr DeleteClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + + future> + DeleteClip(ExperimentalTag, + google::longrunning::Operation const& operation) override; + future> CreateAsset( google::cloud::video::livestream::v1::CreateAssetRequest const& request) override; diff --git a/google/cloud/video/livestream/v1/internal/livestream_logging_decorator.cc b/google/cloud/video/livestream/v1/internal/livestream_logging_decorator.cc index b756ba538a7ad..b602e3b2800f9 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_logging_decorator.cc +++ b/google/cloud/video/livestream/v1/internal/livestream_logging_decorator.cc @@ -387,6 +387,94 @@ Status LivestreamServiceLogging::DeleteEvent( context, options, request, __func__, tracing_options_); } +StatusOr +LivestreamServiceLogging::ListClips( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& + request) { + return child_->ListClips(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +StatusOr +LivestreamServiceLogging::GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) { + return google::cloud::internal::LogWrapper( + [this]( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) { + return child_->GetClip(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +future> +LivestreamServiceLogging::AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& + request) { + return child_->AsyncCreateClip(cq, std::move(context), + std::move(options), request); + }, + cq, std::move(context), std::move(options), request, __func__, + tracing_options_); +} + +StatusOr LivestreamServiceLogging::CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::CreateClipRequest const& + request) { + return child_->CreateClip(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + +future> +LivestreamServiceLogging::AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& + request) { + return child_->AsyncDeleteClip(cq, std::move(context), + std::move(options), request); + }, + cq, std::move(context), std::move(options), request, __func__, + tracing_options_); +} + +StatusOr LivestreamServiceLogging::DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + return google::cloud::internal::LogWrapper( + [this](grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::DeleteClipRequest const& + request) { + return child_->DeleteClip(context, options, request); + }, + context, options, request, __func__, tracing_options_); +} + future> LivestreamServiceLogging::AsyncCreateAsset( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/video/livestream/v1/internal/livestream_logging_decorator.h b/google/cloud/video/livestream/v1/internal/livestream_logging_decorator.h index a5b7a45d24770..57235b96445db 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_logging_decorator.h +++ b/google/cloud/video/livestream/v1/internal/livestream_logging_decorator.h @@ -175,6 +175,40 @@ class LivestreamServiceLogging : public LivestreamServiceStub { google::cloud::video::livestream::v1::DeleteEventRequest const& request) override; + StatusOr ListClips( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& request) + override; + + StatusOr GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) + override; + + future> AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + StatusOr CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + future> AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + + StatusOr DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + future> AsyncCreateAsset( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/video/livestream/v1/internal/livestream_metadata_decorator.cc b/google/cloud/video/livestream/v1/internal/livestream_metadata_decorator.cc index c35091f713bed..03def6f1fa0c5 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_metadata_decorator.cc +++ b/google/cloud/video/livestream/v1/internal/livestream_metadata_decorator.cc @@ -281,6 +281,64 @@ Status LivestreamServiceMetadata::DeleteEvent( return child_->DeleteEvent(context, options, request); } +StatusOr +LivestreamServiceMetadata::ListClips( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->ListClips(context, options, request); +} + +StatusOr +LivestreamServiceMetadata::GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->GetClip(context, options, request); +} + +future> +LivestreamServiceMetadata::AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + SetMetadata(*context, *options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->AsyncCreateClip(cq, std::move(context), std::move(options), + request); +} + +StatusOr LivestreamServiceMetadata::CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + SetMetadata(context, options, + absl::StrCat("parent=", internal::UrlEncode(request.parent()))); + return child_->CreateClip(context, options, request); +} + +future> +LivestreamServiceMetadata::AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + SetMetadata(*context, *options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->AsyncDeleteClip(cq, std::move(context), std::move(options), + request); +} + +StatusOr LivestreamServiceMetadata::DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + SetMetadata(context, options, + absl::StrCat("name=", internal::UrlEncode(request.name()))); + return child_->DeleteClip(context, options, request); +} + future> LivestreamServiceMetadata::AsyncCreateAsset( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/video/livestream/v1/internal/livestream_metadata_decorator.h b/google/cloud/video/livestream/v1/internal/livestream_metadata_decorator.h index 53ae9edb66bbd..a4f1a1feb6eba 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_metadata_decorator.h +++ b/google/cloud/video/livestream/v1/internal/livestream_metadata_decorator.h @@ -176,6 +176,40 @@ class LivestreamServiceMetadata : public LivestreamServiceStub { google::cloud::video::livestream::v1::DeleteEventRequest const& request) override; + StatusOr ListClips( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& request) + override; + + StatusOr GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) + override; + + future> AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + StatusOr CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + future> AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + + StatusOr DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + future> AsyncCreateAsset( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/video/livestream/v1/internal/livestream_stub.cc b/google/cloud/video/livestream/v1/internal/livestream_stub.cc index f0f6c08d9e893..20c2abbf3f896 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_stub.cc +++ b/google/cloud/video/livestream/v1/internal/livestream_stub.cc @@ -374,6 +374,92 @@ Status DefaultLivestreamServiceStub::DeleteEvent( return google::cloud::Status(); } +StatusOr +DefaultLivestreamServiceStub::ListClips( + grpc::ClientContext& context, Options const&, + google::cloud::video::livestream::v1::ListClipsRequest const& request) { + google::cloud::video::livestream::v1::ListClipsResponse response; + auto status = grpc_stub_->ListClips(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +StatusOr +DefaultLivestreamServiceStub::GetClip( + grpc::ClientContext& context, Options const&, + google::cloud::video::livestream::v1::GetClipRequest const& request) { + google::cloud::video::livestream::v1::Clip response; + auto status = grpc_stub_->GetClip(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +future> +DefaultLivestreamServiceStub::AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + return internal::MakeUnaryRpcImpl< + google::cloud::video::livestream::v1::CreateClipRequest, + google::longrunning::Operation>( + cq, + [this](grpc::ClientContext* context, + google::cloud::video::livestream::v1::CreateClipRequest const& + request, + grpc::CompletionQueue* cq) { + return grpc_stub_->AsyncCreateClip(context, request, cq); + }, + request, std::move(context)); +} + +StatusOr +DefaultLivestreamServiceStub::CreateClip( + grpc::ClientContext& context, Options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + google::longrunning::Operation response; + auto status = grpc_stub_->CreateClip(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + +future> +DefaultLivestreamServiceStub::AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + return internal::MakeUnaryRpcImpl< + google::cloud::video::livestream::v1::DeleteClipRequest, + google::longrunning::Operation>( + cq, + [this](grpc::ClientContext* context, + google::cloud::video::livestream::v1::DeleteClipRequest const& + request, + grpc::CompletionQueue* cq) { + return grpc_stub_->AsyncDeleteClip(context, request, cq); + }, + request, std::move(context)); +} + +StatusOr +DefaultLivestreamServiceStub::DeleteClip( + grpc::ClientContext& context, Options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + google::longrunning::Operation response; + auto status = grpc_stub_->DeleteClip(&context, request, &response); + if (!status.ok()) { + return google::cloud::MakeStatusFromRpcError(status); + } + return response; +} + future> DefaultLivestreamServiceStub::AsyncCreateAsset( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/video/livestream/v1/internal/livestream_stub.h b/google/cloud/video/livestream/v1/internal/livestream_stub.h index 72c1e11836d71..3dbba18a4fcbd 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_stub.h +++ b/google/cloud/video/livestream/v1/internal/livestream_stub.h @@ -172,6 +172,39 @@ class LivestreamServiceStub { google::cloud::video::livestream::v1::DeleteEventRequest const& request) = 0; + virtual StatusOr + ListClips(grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& + request) = 0; + + virtual StatusOr GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) = 0; + + virtual future> AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& + request) = 0; + + virtual StatusOr CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& + request) = 0; + + virtual future> AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& + request) = 0; + + virtual StatusOr DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& + request) = 0; + virtual future> AsyncCreateAsset( google::cloud::CompletionQueue& cq, std::shared_ptr context, @@ -380,6 +413,40 @@ class DefaultLivestreamServiceStub : public LivestreamServiceStub { google::cloud::video::livestream::v1::DeleteEventRequest const& request) override; + StatusOr ListClips( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& request) + override; + + StatusOr GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) + override; + + future> AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + StatusOr CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + future> AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + + StatusOr DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + future> AsyncCreateAsset( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/video/livestream/v1/internal/livestream_tracing_connection.cc b/google/cloud/video/livestream/v1/internal/livestream_tracing_connection.cc index 85bdd8b744b35..e5059fa4713da 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_tracing_connection.cc +++ b/google/cloud/video/livestream/v1/internal/livestream_tracing_connection.cc @@ -353,6 +353,87 @@ Status LivestreamServiceTracingConnection::DeleteEvent( return internal::EndSpan(*span, child_->DeleteEvent(request)); } +StreamRange +LivestreamServiceTracingConnection::ListClips( + google::cloud::video::livestream::v1::ListClipsRequest request) { + auto span = internal::MakeSpan( + "video_livestream_v1::LivestreamServiceConnection::ListClips"); + internal::OTelScope scope(span); + auto sr = child_->ListClips(std::move(request)); + return internal::MakeTracedStreamRange< + google::cloud::video::livestream::v1::Clip>(std::move(span), + std::move(sr)); +} + +StatusOr +LivestreamServiceTracingConnection::GetClip( + google::cloud::video::livestream::v1::GetClipRequest const& request) { + auto span = internal::MakeSpan( + "video_livestream_v1::LivestreamServiceConnection::GetClip"); + auto scope = opentelemetry::trace::Scope(span); + return internal::EndSpan(*span, child_->GetClip(request)); +} + +future> +LivestreamServiceTracingConnection::CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + auto span = internal::MakeSpan( + "video_livestream_v1::LivestreamServiceConnection::CreateClip"); + internal::OTelScope scope(span); + return internal::EndSpan(std::move(span), child_->CreateClip(request)); +} + +StatusOr +LivestreamServiceTracingConnection::CreateClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + auto span = internal::MakeSpan( + "video_livestream_v1::LivestreamServiceConnection::CreateClip"); + opentelemetry::trace::Scope scope(span); + return internal::EndSpan( + *span, child_->CreateClip(ExperimentalTag{}, NoAwaitTag{}, request)); +} + +future> +LivestreamServiceTracingConnection::CreateClip( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto span = internal::MakeSpan( + "video_livestream_v1::LivestreamServiceConnection::CreateClip"); + internal::OTelScope scope(span); + return internal::EndSpan(std::move(span), + child_->CreateClip(ExperimentalTag{}, operation)); +} + +future> +LivestreamServiceTracingConnection::DeleteClip( + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + auto span = internal::MakeSpan( + "video_livestream_v1::LivestreamServiceConnection::DeleteClip"); + internal::OTelScope scope(span); + return internal::EndSpan(std::move(span), child_->DeleteClip(request)); +} + +StatusOr +LivestreamServiceTracingConnection::DeleteClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + auto span = internal::MakeSpan( + "video_livestream_v1::LivestreamServiceConnection::DeleteClip"); + opentelemetry::trace::Scope scope(span); + return internal::EndSpan( + *span, child_->DeleteClip(ExperimentalTag{}, NoAwaitTag{}, request)); +} + +future> +LivestreamServiceTracingConnection::DeleteClip( + ExperimentalTag, google::longrunning::Operation const& operation) { + auto span = internal::MakeSpan( + "video_livestream_v1::LivestreamServiceConnection::DeleteClip"); + internal::OTelScope scope(span); + return internal::EndSpan(std::move(span), + child_->DeleteClip(ExperimentalTag{}, operation)); +} + future> LivestreamServiceTracingConnection::CreateAsset( google::cloud::video::livestream::v1::CreateAssetRequest const& request) { diff --git a/google/cloud/video/livestream/v1/internal/livestream_tracing_connection.h b/google/cloud/video/livestream/v1/internal/livestream_tracing_connection.h index 427664471fc0a..74e0169640638 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_tracing_connection.h +++ b/google/cloud/video/livestream/v1/internal/livestream_tracing_connection.h @@ -179,6 +179,39 @@ class LivestreamServiceTracingConnection google::cloud::video::livestream::v1::DeleteEventRequest const& request) override; + StreamRange ListClips( + google::cloud::video::livestream::v1::ListClipsRequest request) override; + + StatusOr GetClip( + google::cloud::video::livestream::v1::GetClipRequest const& request) + override; + + future> CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + StatusOr CreateClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + future> CreateClip( + ExperimentalTag, + google::longrunning::Operation const& operation) override; + + future> + DeleteClip(google::cloud::video::livestream::v1::DeleteClipRequest const& + request) override; + + StatusOr DeleteClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + + future> + DeleteClip(ExperimentalTag, + google::longrunning::Operation const& operation) override; + future> CreateAsset( google::cloud::video::livestream::v1::CreateAssetRequest const& request) override; diff --git a/google/cloud/video/livestream/v1/internal/livestream_tracing_stub.cc b/google/cloud/video/livestream/v1/internal/livestream_tracing_stub.cc index 7cfc3483c4019..99bb7e948031d 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_tracing_stub.cc +++ b/google/cloud/video/livestream/v1/internal/livestream_tracing_stub.cc @@ -334,6 +334,82 @@ Status LivestreamServiceTracingStub::DeleteEvent( child_->DeleteEvent(context, options, request)); } +StatusOr +LivestreamServiceTracingStub::ListClips( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.video.livestream.v1.LivestreamService", "ListClips"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->ListClips(context, options, request)); +} + +StatusOr +LivestreamServiceTracingStub::GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.video.livestream.v1.LivestreamService", "GetClip"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->GetClip(context, options, request)); +} + +future> +LivestreamServiceTracingStub::AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.video.livestream.v1.LivestreamService", "CreateClip"); + internal::OTelScope scope(span); + internal::InjectTraceContext(*context, *propagator_); + auto f = child_->AsyncCreateClip(cq, context, std::move(options), request); + return internal::EndSpan(std::move(context), std::move(span), std::move(f)); +} + +StatusOr +LivestreamServiceTracingStub::CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.video.livestream.v1.LivestreamService", "CreateClip"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->CreateClip(context, options, request)); +} + +future> +LivestreamServiceTracingStub::AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.video.livestream.v1.LivestreamService", "DeleteClip"); + internal::OTelScope scope(span); + internal::InjectTraceContext(*context, *propagator_); + auto f = child_->AsyncDeleteClip(cq, context, std::move(options), request); + return internal::EndSpan(std::move(context), std::move(span), std::move(f)); +} + +StatusOr +LivestreamServiceTracingStub::DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) { + auto span = internal::MakeSpanGrpc( + "google.cloud.video.livestream.v1.LivestreamService", "DeleteClip"); + auto scope = opentelemetry::trace::Scope(span); + internal::InjectTraceContext(context, *propagator_); + return internal::EndSpan(context, *span, + child_->DeleteClip(context, options, request)); +} + future> LivestreamServiceTracingStub::AsyncCreateAsset( google::cloud::CompletionQueue& cq, diff --git a/google/cloud/video/livestream/v1/internal/livestream_tracing_stub.h b/google/cloud/video/livestream/v1/internal/livestream_tracing_stub.h index 815a5c52c2091..4caf688fc6299 100644 --- a/google/cloud/video/livestream/v1/internal/livestream_tracing_stub.h +++ b/google/cloud/video/livestream/v1/internal/livestream_tracing_stub.h @@ -174,6 +174,40 @@ class LivestreamServiceTracingStub : public LivestreamServiceStub { google::cloud::video::livestream::v1::DeleteEventRequest const& request) override; + StatusOr ListClips( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::ListClipsRequest const& request) + override; + + StatusOr GetClip( + grpc::ClientContext& context, Options const& options, + google::cloud::video::livestream::v1::GetClipRequest const& request) + override; + + future> AsyncCreateClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + StatusOr CreateClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::CreateClipRequest const& request) + override; + + future> AsyncDeleteClip( + google::cloud::CompletionQueue& cq, + std::shared_ptr context, + google::cloud::internal::ImmutableOptions options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + + StatusOr DeleteClip( + grpc::ClientContext& context, Options options, + google::cloud::video::livestream::v1::DeleteClipRequest const& request) + override; + future> AsyncCreateAsset( google::cloud::CompletionQueue& cq, std::shared_ptr context, diff --git a/google/cloud/video/livestream/v1/livestream_client.cc b/google/cloud/video/livestream/v1/livestream_client.cc index 7cbb611fd3a93..bcbe1a9998ae0 100644 --- a/google/cloud/video/livestream/v1/livestream_client.cc +++ b/google/cloud/video/livestream/v1/livestream_client.cc @@ -514,6 +514,127 @@ Status LivestreamServiceClient::DeleteEvent( return connection_->DeleteEvent(request); } +StreamRange +LivestreamServiceClient::ListClips(std::string const& parent, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::video::livestream::v1::ListClipsRequest request; + request.set_parent(parent); + return connection_->ListClips(request); +} + +StreamRange +LivestreamServiceClient::ListClips( + google::cloud::video::livestream::v1::ListClipsRequest request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->ListClips(std::move(request)); +} + +StatusOr +LivestreamServiceClient::GetClip(std::string const& name, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::video::livestream::v1::GetClipRequest request; + request.set_name(name); + return connection_->GetClip(request); +} + +StatusOr +LivestreamServiceClient::GetClip( + google::cloud::video::livestream::v1::GetClipRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->GetClip(request); +} + +future> +LivestreamServiceClient::CreateClip( + std::string const& parent, + google::cloud::video::livestream::v1::Clip const& clip, + std::string const& clip_id, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::video::livestream::v1::CreateClipRequest request; + request.set_parent(parent); + *request.mutable_clip() = clip; + request.set_clip_id(clip_id); + return connection_->CreateClip(request); +} + +StatusOr LivestreamServiceClient::CreateClip( + ExperimentalTag, NoAwaitTag, std::string const& parent, + google::cloud::video::livestream::v1::Clip const& clip, + std::string const& clip_id, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::video::livestream::v1::CreateClipRequest request; + request.set_parent(parent); + *request.mutable_clip() = clip; + request.set_clip_id(clip_id); + return connection_->CreateClip(ExperimentalTag{}, NoAwaitTag{}, request); +} + +future> +LivestreamServiceClient::CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->CreateClip(request); +} + +StatusOr LivestreamServiceClient::CreateClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::CreateClipRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->CreateClip(ExperimentalTag{}, NoAwaitTag{}, request); +} + +future> +LivestreamServiceClient::CreateClip( + ExperimentalTag, google::longrunning::Operation const& operation, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->CreateClip(ExperimentalTag{}, operation); +} + +future> +LivestreamServiceClient::DeleteClip(std::string const& name, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::video::livestream::v1::DeleteClipRequest request; + request.set_name(name); + return connection_->DeleteClip(request); +} + +StatusOr LivestreamServiceClient::DeleteClip( + ExperimentalTag, NoAwaitTag, std::string const& name, Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + google::cloud::video::livestream::v1::DeleteClipRequest request; + request.set_name(name); + return connection_->DeleteClip(ExperimentalTag{}, NoAwaitTag{}, request); +} + +future> +LivestreamServiceClient::DeleteClip( + google::cloud::video::livestream::v1::DeleteClipRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->DeleteClip(request); +} + +StatusOr LivestreamServiceClient::DeleteClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::DeleteClipRequest const& request, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->DeleteClip(ExperimentalTag{}, NoAwaitTag{}, request); +} + +future> +LivestreamServiceClient::DeleteClip( + ExperimentalTag, google::longrunning::Operation const& operation, + Options opts) { + internal::OptionsSpan span(internal::MergeOptions(std::move(opts), options_)); + return connection_->DeleteClip(ExperimentalTag{}, operation); +} + future> LivestreamServiceClient::CreateAsset( std::string const& parent, diff --git a/google/cloud/video/livestream/v1/livestream_client.h b/google/cloud/video/livestream/v1/livestream_client.h index 0f2e3e48cd85f..9d676d79ead7a 100644 --- a/google/cloud/video/livestream/v1/livestream_client.h +++ b/google/cloud/video/livestream/v1/livestream_client.h @@ -126,7 +126,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Channel]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L128} - /// [google.cloud.video.livestream.v1.CreateChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L404} + /// [google.cloud.video.livestream.v1.CreateChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L447} /// // clang-format on future> CreateChannel( @@ -182,7 +182,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Channel]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L128} - /// [google.cloud.video.livestream.v1.CreateChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L404} + /// [google.cloud.video.livestream.v1.CreateChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L447} /// // clang-format on future> CreateChannel( @@ -247,7 +247,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Channel]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L128} - /// [google.cloud.video.livestream.v1.ListChannelsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L439} + /// [google.cloud.video.livestream.v1.ListChannelsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L482} /// // clang-format on StreamRange ListChannels( @@ -286,7 +286,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Channel]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L128} - /// [google.cloud.video.livestream.v1.ListChannelsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L439} + /// [google.cloud.video.livestream.v1.ListChannelsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L482} /// // clang-format on StreamRange ListChannels( @@ -313,7 +313,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Channel]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L128} - /// [google.cloud.video.livestream.v1.GetChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L481} + /// [google.cloud.video.livestream.v1.GetChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L524} /// // clang-format on StatusOr GetChannel( @@ -343,7 +343,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Channel]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L128} - /// [google.cloud.video.livestream.v1.GetChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L481} + /// [google.cloud.video.livestream.v1.GetChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L524} /// // clang-format on StatusOr GetChannel( @@ -376,8 +376,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.DeleteChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L493} - /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L893} + /// [google.cloud.video.livestream.v1.DeleteChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L536} + /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1046} /// // clang-format on future> @@ -427,8 +427,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.DeleteChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L493} - /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L893} + /// [google.cloud.video.livestream.v1.DeleteChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L536} + /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1046} /// // clang-format on future> @@ -512,7 +512,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Channel]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L128} - /// [google.cloud.video.livestream.v1.UpdateChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L526} + /// [google.cloud.video.livestream.v1.UpdateChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L569} /// // clang-format on future> UpdateChannel( @@ -566,7 +566,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Channel]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L128} - /// [google.cloud.video.livestream.v1.UpdateChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L526} + /// [google.cloud.video.livestream.v1.UpdateChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L569} /// // clang-format on future> UpdateChannel( @@ -629,8 +629,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.ChannelOperationResponse]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L890} - /// [google.cloud.video.livestream.v1.StartChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L569} + /// [google.cloud.video.livestream.v1.ChannelOperationResponse]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L933} + /// [google.cloud.video.livestream.v1.StartChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L612} /// // clang-format on future< @@ -684,8 +684,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.ChannelOperationResponse]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L890} - /// [google.cloud.video.livestream.v1.StartChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L569} + /// [google.cloud.video.livestream.v1.ChannelOperationResponse]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L933} + /// [google.cloud.video.livestream.v1.StartChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L612} /// // clang-format on future< @@ -751,8 +751,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.ChannelOperationResponse]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L890} - /// [google.cloud.video.livestream.v1.StopChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L596} + /// [google.cloud.video.livestream.v1.ChannelOperationResponse]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L933} + /// [google.cloud.video.livestream.v1.StopChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L639} /// // clang-format on future< @@ -806,8 +806,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.ChannelOperationResponse]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L890} - /// [google.cloud.video.livestream.v1.StopChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L596} + /// [google.cloud.video.livestream.v1.ChannelOperationResponse]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L933} + /// [google.cloud.video.livestream.v1.StopChannelRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L639} /// // clang-format on future< @@ -876,7 +876,7 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.CreateInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L623} + /// [google.cloud.video.livestream.v1.CreateInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L666} /// [google.cloud.video.livestream.v1.Input]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L36} /// // clang-format on @@ -931,7 +931,7 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.CreateInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L623} + /// [google.cloud.video.livestream.v1.CreateInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L666} /// [google.cloud.video.livestream.v1.Input]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L36} /// // clang-format on @@ -997,7 +997,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Input]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L36} - /// [google.cloud.video.livestream.v1.ListInputsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L658} + /// [google.cloud.video.livestream.v1.ListInputsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L701} /// // clang-format on StreamRange ListInputs( @@ -1036,7 +1036,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Input]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L36} - /// [google.cloud.video.livestream.v1.ListInputsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L658} + /// [google.cloud.video.livestream.v1.ListInputsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L701} /// // clang-format on StreamRange ListInputs( @@ -1062,7 +1062,7 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.GetInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L700} + /// [google.cloud.video.livestream.v1.GetInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L743} /// [google.cloud.video.livestream.v1.Input]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L36} /// // clang-format on @@ -1092,7 +1092,7 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.GetInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L700} + /// [google.cloud.video.livestream.v1.GetInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L743} /// [google.cloud.video.livestream.v1.Input]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L36} /// // clang-format on @@ -1126,8 +1126,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.DeleteInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L712} - /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L893} + /// [google.cloud.video.livestream.v1.DeleteInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L755} + /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1046} /// // clang-format on future> @@ -1179,8 +1179,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.DeleteInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L712} - /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L893} + /// [google.cloud.video.livestream.v1.DeleteInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L755} + /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1046} /// // clang-format on future> @@ -1255,7 +1255,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Input]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L36} - /// [google.cloud.video.livestream.v1.UpdateInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L739} + /// [google.cloud.video.livestream.v1.UpdateInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L782} /// // clang-format on future> UpdateInput( @@ -1309,7 +1309,7 @@ class LivestreamServiceClient { /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status /// [google.cloud.video.livestream.v1.Input]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L36} - /// [google.cloud.video.livestream.v1.UpdateInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L739} + /// [google.cloud.video.livestream.v1.UpdateInputRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L782} /// // clang-format on future> UpdateInput( @@ -1368,8 +1368,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.CreateEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L774} - /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L390} + /// [google.cloud.video.livestream.v1.CreateEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L817} + /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L472} /// // clang-format on StatusOr CreateEvent( @@ -1400,8 +1400,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.CreateEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L774} - /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L390} + /// [google.cloud.video.livestream.v1.CreateEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L817} + /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L472} /// // clang-format on StatusOr CreateEvent( @@ -1436,8 +1436,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L390} - /// [google.cloud.video.livestream.v1.ListEventsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L809} + /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L472} + /// [google.cloud.video.livestream.v1.ListEventsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L852} /// // clang-format on StreamRange ListEvents( @@ -1475,8 +1475,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L390} - /// [google.cloud.video.livestream.v1.ListEventsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L809} + /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L472} + /// [google.cloud.video.livestream.v1.ListEventsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L852} /// // clang-format on StreamRange ListEvents( @@ -1502,8 +1502,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L390} - /// [google.cloud.video.livestream.v1.GetEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L851} + /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L472} + /// [google.cloud.video.livestream.v1.GetEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L894} /// // clang-format on StatusOr GetEvent( @@ -1532,8 +1532,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L390} - /// [google.cloud.video.livestream.v1.GetEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L851} + /// [google.cloud.video.livestream.v1.Event]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L472} + /// [google.cloud.video.livestream.v1.GetEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L894} /// // clang-format on StatusOr GetEvent( @@ -1557,7 +1557,7 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.DeleteEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L863} + /// [google.cloud.video.livestream.v1.DeleteEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L906} /// // clang-format on Status DeleteEvent(std::string const& name, Options opts = {}); @@ -1583,13 +1583,386 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.DeleteEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L863} + /// [google.cloud.video.livestream.v1.DeleteEventRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L906} /// // clang-format on Status DeleteEvent( google::cloud::video::livestream::v1::DeleteEventRequest const& request, Options opts = {}); + // clang-format off + /// + /// Returns a list of all clips in the specified channel. + /// + /// @param parent Required. Parent value for ListClipsRequest + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.video.livestream.v1.Clip], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.video.livestream.v1.Clip]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L608} + /// [google.cloud.video.livestream.v1.ListClipsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L936} + /// + // clang-format on + StreamRange ListClips( + std::string const& parent, Options opts = {}); + + // clang-format off + /// + /// Returns a list of all clips in the specified channel. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.video.livestream.v1.ListClipsRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return a [StreamRange](@ref google::cloud::StreamRange) + /// to iterate of the results. See the documentation of this type for + /// details. In brief, this class has `begin()` and `end()` member + /// functions returning a iterator class meeting the + /// [input iterator requirements]. The value type for this iterator is a + /// [`StatusOr`] as the iteration may fail even after some values are + /// retrieved successfully, for example, if there is a network disconnect. + /// An empty set of results does not indicate an error, it indicates + /// that there are no resources meeting the request criteria. + /// On a successful iteration the `StatusOr` contains elements of type + /// [google.cloud.video.livestream.v1.Clip], or rather, + /// the C++ class generated by Protobuf from that type. Please consult the + /// Protobuf documentation for details on the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.video.livestream.v1.Clip]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L608} + /// [google.cloud.video.livestream.v1.ListClipsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L936} + /// + // clang-format on + StreamRange ListClips( + google::cloud::video::livestream::v1::ListClipsRequest request, + Options opts = {}); + + // clang-format off + /// + /// Returns the specified clip. + /// + /// @param name Required. Name of the resource, in the following form: + /// `projects/{project}/locations/{location}/channels/{channel}/clips/{clip}`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.video.livestream.v1.Clip]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.video.livestream.v1.Clip]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L608} + /// [google.cloud.video.livestream.v1.GetClipRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L972} + /// + // clang-format on + StatusOr GetClip( + std::string const& name, Options opts = {}); + + // clang-format off + /// + /// Returns the specified clip. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.video.livestream.v1.GetClipRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return the result of the RPC. The response message type + /// ([google.cloud.video.livestream.v1.Clip]) + /// is mapped to a C++ class using the [Protobuf mapping rules]. + /// If the request fails, the [`StatusOr`] contains the error details. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.video.livestream.v1.Clip]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L608} + /// [google.cloud.video.livestream.v1.GetClipRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L972} + /// + // clang-format on + StatusOr GetClip( + google::cloud::video::livestream::v1::GetClipRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// Creates a clip with the provided clip ID in the specified channel. + /// + /// @param parent Required. The parent resource name, in the following form: + /// `projects/{project}/locations/{location}/channels/{channel}`. + /// @param clip Required. The resource being created + /// @param clip_id Required. Id of the requesting object in the following form: + /// @n + /// 1. 1 character minimum, 63 characters maximum + /// 2. Only contains letters, digits, underscores, and hyphens + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return A [`future`] that becomes satisfied when the LRO + /// ([Long Running Operation]) completes or the polling policy in effect + /// for this call is exhausted. The future is satisfied with an error if + /// the LRO completes with an error or the polling policy is exhausted. + /// In this case the [`StatusOr`] returned by the future contains the + /// error. If the LRO completes successfully the value of the future + /// contains the LRO's result. For this RPC the result is a + /// [google.cloud.video.livestream.v1.Clip] proto message. + /// The C++ class representing this message is created by Protobuf, using + /// the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [Long Running Operation]: https://google.aip.dev/151 + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.video.livestream.v1.Clip]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L608} + /// [google.cloud.video.livestream.v1.CreateClipRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L982} + /// + // clang-format on + future> CreateClip( + std::string const& parent, + google::cloud::video::livestream::v1::Clip const& clip, + std::string const& clip_id, Options opts = {}); + + // clang-format off + /// + /// @copybrief CreateClip + /// + /// Specifying the [`NoAwaitTag`] immediately returns the + /// [`google::longrunning::Operation`] that corresponds to the Long Running + /// Operation that has been started. No polling for operation status occurs. + /// + /// [`NoAwaitTag`]: @ref google::cloud::NoAwaitTag + /// + // clang-format on + StatusOr CreateClip( + ExperimentalTag, NoAwaitTag, std::string const& parent, + google::cloud::video::livestream::v1::Clip const& clip, + std::string const& clip_id, Options opts = {}); + + // clang-format off + /// + /// Creates a clip with the provided clip ID in the specified channel. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.video.livestream.v1.CreateClipRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return A [`future`] that becomes satisfied when the LRO + /// ([Long Running Operation]) completes or the polling policy in effect + /// for this call is exhausted. The future is satisfied with an error if + /// the LRO completes with an error or the polling policy is exhausted. + /// In this case the [`StatusOr`] returned by the future contains the + /// error. If the LRO completes successfully the value of the future + /// contains the LRO's result. For this RPC the result is a + /// [google.cloud.video.livestream.v1.Clip] proto message. + /// The C++ class representing this message is created by Protobuf, using + /// the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [Long Running Operation]: https://google.aip.dev/151 + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.video.livestream.v1.Clip]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L608} + /// [google.cloud.video.livestream.v1.CreateClipRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L982} + /// + // clang-format on + future> CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief CreateClip + /// + /// Specifying the [`NoAwaitTag`] immediately returns the + /// [`google::longrunning::Operation`] that corresponds to the Long Running + /// Operation that has been started. No polling for operation status occurs. + /// + /// [`NoAwaitTag`]: @ref google::cloud::NoAwaitTag + /// + // clang-format on + StatusOr CreateClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::CreateClipRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief CreateClip + /// + /// This method accepts a `google::longrunning::Operation` that corresponds + /// to a previously started Long Running Operation (LRO) and polls the status + /// of the LRO in the background. + /// + // clang-format on + future> CreateClip( + ExperimentalTag, google::longrunning::Operation const& operation, + Options opts = {}); + + // clang-format off + /// + /// Deletes the specified clip job resource. This method only deletes the clip + /// job and does not delete the VOD clip stored in the GCS. + /// + /// @param name Required. The name of the clip resource, in the form of: + /// `projects/{project}/locations/{location}/channels/{channelId}/clips/{clipId}`. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return A [`future`] that becomes satisfied when the LRO + /// ([Long Running Operation]) completes or the polling policy in effect + /// for this call is exhausted. The future is satisfied with an error if + /// the LRO completes with an error or the polling policy is exhausted. + /// In this case the [`StatusOr`] returned by the future contains the + /// error. If the LRO completes successfully the value of the future + /// contains the LRO's result. For this RPC the result is a + /// [google.cloud.video.livestream.v1.OperationMetadata] proto message. + /// The C++ class representing this message is created by Protobuf, using + /// the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [Long Running Operation]: https://google.aip.dev/151 + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.video.livestream.v1.DeleteClipRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1018} + /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1046} + /// + // clang-format on + future> + DeleteClip(std::string const& name, Options opts = {}); + + // clang-format off + /// + /// @copybrief DeleteClip + /// + /// Specifying the [`NoAwaitTag`] immediately returns the + /// [`google::longrunning::Operation`] that corresponds to the Long Running + /// Operation that has been started. No polling for operation status occurs. + /// + /// [`NoAwaitTag`]: @ref google::cloud::NoAwaitTag + /// + // clang-format on + StatusOr DeleteClip(ExperimentalTag, + NoAwaitTag, + std::string const& name, + Options opts = {}); + + // clang-format off + /// + /// Deletes the specified clip job resource. This method only deletes the clip + /// job and does not delete the VOD clip stored in the GCS. + /// + /// @param request Unary RPCs, such as the one wrapped by this + /// function, receive a single `request` proto message which includes all + /// the inputs for the RPC. In this case, the proto message is a + /// [google.cloud.video.livestream.v1.DeleteClipRequest]. + /// Proto messages are converted to C++ classes by Protobuf, using the + /// [Protobuf mapping rules]. + /// @param opts Optional. Override the class-level options, such as retry and + /// backoff policies. + /// @return A [`future`] that becomes satisfied when the LRO + /// ([Long Running Operation]) completes or the polling policy in effect + /// for this call is exhausted. The future is satisfied with an error if + /// the LRO completes with an error or the polling policy is exhausted. + /// In this case the [`StatusOr`] returned by the future contains the + /// error. If the LRO completes successfully the value of the future + /// contains the LRO's result. For this RPC the result is a + /// [google.cloud.video.livestream.v1.OperationMetadata] proto message. + /// The C++ class representing this message is created by Protobuf, using + /// the [Protobuf mapping rules]. + /// + /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/ + /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator + /// [Long Running Operation]: https://google.aip.dev/151 + /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string + /// [`future`]: @ref google::cloud::future + /// [`StatusOr`]: @ref google::cloud::StatusOr + /// [`Status`]: @ref google::cloud::Status + /// [google.cloud.video.livestream.v1.DeleteClipRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1018} + /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1046} + /// + // clang-format on + future> + DeleteClip( + google::cloud::video::livestream::v1::DeleteClipRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief DeleteClip + /// + /// Specifying the [`NoAwaitTag`] immediately returns the + /// [`google::longrunning::Operation`] that corresponds to the Long Running + /// Operation that has been started. No polling for operation status occurs. + /// + /// [`NoAwaitTag`]: @ref google::cloud::NoAwaitTag + /// + // clang-format on + StatusOr DeleteClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::DeleteClipRequest const& request, + Options opts = {}); + + // clang-format off + /// + /// @copybrief DeleteClip + /// + /// This method accepts a `google::longrunning::Operation` that corresponds + /// to a previously started Long Running Operation (LRO) and polls the status + /// of the LRO in the background. + /// + // clang-format on + future> + DeleteClip(ExperimentalTag, google::longrunning::Operation const& operation, + Options opts = {}); + // clang-format off /// /// Creates a Asset with the provided unique ID in the specified @@ -1621,8 +1994,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L525} - /// [google.cloud.video.livestream.v1.CreateAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L293} + /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L721} + /// [google.cloud.video.livestream.v1.CreateAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L336} /// // clang-format on future> CreateAsset( @@ -1677,8 +2050,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L525} - /// [google.cloud.video.livestream.v1.CreateAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L293} + /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L721} + /// [google.cloud.video.livestream.v1.CreateAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L336} /// // clang-format on future> CreateAsset( @@ -1740,8 +2113,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.DeleteAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L328} - /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L893} + /// [google.cloud.video.livestream.v1.DeleteAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L371} + /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1046} /// // clang-format on future> @@ -1793,8 +2166,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.DeleteAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L328} - /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L893} + /// [google.cloud.video.livestream.v1.DeleteAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L371} + /// [google.cloud.video.livestream.v1.OperationMetadata]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1046} /// // clang-format on future> @@ -1850,8 +2223,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L525} - /// [google.cloud.video.livestream.v1.GetAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L392} + /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L721} + /// [google.cloud.video.livestream.v1.GetAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L435} /// // clang-format on StatusOr GetAsset( @@ -1880,8 +2253,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L525} - /// [google.cloud.video.livestream.v1.GetAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L392} + /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L721} + /// [google.cloud.video.livestream.v1.GetAssetRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L435} /// // clang-format on StatusOr GetAsset( @@ -1916,8 +2289,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L525} - /// [google.cloud.video.livestream.v1.ListAssetsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L355} + /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L721} + /// [google.cloud.video.livestream.v1.ListAssetsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L398} /// // clang-format on StreamRange ListAssets( @@ -1955,8 +2328,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L525} - /// [google.cloud.video.livestream.v1.ListAssetsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L355} + /// [google.cloud.video.livestream.v1.Asset]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L721} + /// [google.cloud.video.livestream.v1.ListAssetsRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L398} /// // clang-format on StreamRange ListAssets( @@ -1982,8 +2355,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.GetPoolRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L920} - /// [google.cloud.video.livestream.v1.Pool]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L692} + /// [google.cloud.video.livestream.v1.GetPoolRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1073} + /// [google.cloud.video.livestream.v1.Pool]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L893} /// // clang-format on StatusOr GetPool( @@ -2012,8 +2385,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.GetPoolRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L920} - /// [google.cloud.video.livestream.v1.Pool]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L692} + /// [google.cloud.video.livestream.v1.GetPoolRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1073} + /// [google.cloud.video.livestream.v1.Pool]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L893} /// // clang-format on StatusOr GetPool( @@ -2052,8 +2425,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Pool]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L692} - /// [google.cloud.video.livestream.v1.UpdatePoolRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L930} + /// [google.cloud.video.livestream.v1.Pool]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L893} + /// [google.cloud.video.livestream.v1.UpdatePoolRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1083} /// // clang-format on future> UpdatePool( @@ -2106,8 +2479,8 @@ class LivestreamServiceClient { /// [`future`]: @ref google::cloud::future /// [`StatusOr`]: @ref google::cloud::StatusOr /// [`Status`]: @ref google::cloud::Status - /// [google.cloud.video.livestream.v1.Pool]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L692} - /// [google.cloud.video.livestream.v1.UpdatePoolRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L930} + /// [google.cloud.video.livestream.v1.Pool]: @googleapis_reference_link{google/cloud/video/livestream/v1/resources.proto#L893} + /// [google.cloud.video.livestream.v1.UpdatePoolRequest]: @googleapis_reference_link{google/cloud/video/livestream/v1/service.proto#L1083} /// // clang-format on future> UpdatePool( diff --git a/google/cloud/video/livestream/v1/livestream_connection.cc b/google/cloud/video/livestream/v1/livestream_connection.cc index 6cc8eade5225f..4ab5091aa1319 100644 --- a/google/cloud/video/livestream/v1/livestream_connection.cc +++ b/google/cloud/video/livestream/v1/livestream_connection.cc @@ -283,6 +283,68 @@ Status LivestreamServiceConnection::DeleteEvent( return Status(StatusCode::kUnimplemented, "not implemented"); } +StreamRange +LivestreamServiceConnection::ListClips( + google::cloud::video::livestream::v1:: + ListClipsRequest) { // NOLINT(performance-unnecessary-value-param) + return google::cloud::internal::MakeUnimplementedPaginationRange< + StreamRange>(); +} + +StatusOr +LivestreamServiceConnection::GetClip( + google::cloud::video::livestream::v1::GetClipRequest const&) { + return Status(StatusCode::kUnimplemented, "not implemented"); +} + +future> +LivestreamServiceConnection::CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const&) { + return google::cloud::make_ready_future< + StatusOr>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +StatusOr +LivestreamServiceConnection::CreateClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::CreateClipRequest const&) { + return StatusOr( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +future> +LivestreamServiceConnection::CreateClip(ExperimentalTag, + google::longrunning::Operation const&) { + return google::cloud::make_ready_future< + StatusOr>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +future> +LivestreamServiceConnection::DeleteClip( + google::cloud::video::livestream::v1::DeleteClipRequest const&) { + return google::cloud::make_ready_future< + StatusOr>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +StatusOr +LivestreamServiceConnection::DeleteClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::DeleteClipRequest const&) { + return StatusOr( + Status(StatusCode::kUnimplemented, "not implemented")); +} + +future> +LivestreamServiceConnection::DeleteClip(ExperimentalTag, + google::longrunning::Operation const&) { + return google::cloud::make_ready_future< + StatusOr>( + Status(StatusCode::kUnimplemented, "not implemented")); +} + future> LivestreamServiceConnection::CreateAsset( google::cloud::video::livestream::v1::CreateAssetRequest const&) { diff --git a/google/cloud/video/livestream/v1/livestream_connection.h b/google/cloud/video/livestream/v1/livestream_connection.h index cd5aba2dff9bf..619bcf3cc5912 100644 --- a/google/cloud/video/livestream/v1/livestream_connection.h +++ b/google/cloud/video/livestream/v1/livestream_connection.h @@ -320,6 +320,36 @@ class LivestreamServiceConnection { virtual Status DeleteEvent( google::cloud::video::livestream::v1::DeleteEventRequest const& request); + virtual StreamRange ListClips( + google::cloud::video::livestream::v1::ListClipsRequest request); + + virtual StatusOr GetClip( + google::cloud::video::livestream::v1::GetClipRequest const& request); + + virtual future> + CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const& request); + + virtual StatusOr CreateClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::CreateClipRequest const& request); + + virtual future> + CreateClip(ExperimentalTag, google::longrunning::Operation const& operation); + + virtual future< + StatusOr> + DeleteClip( + google::cloud::video::livestream::v1::DeleteClipRequest const& request); + + virtual StatusOr DeleteClip( + ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::DeleteClipRequest const& request); + + virtual future< + StatusOr> + DeleteClip(ExperimentalTag, google::longrunning::Operation const& operation); + virtual future> CreateAsset( google::cloud::video::livestream::v1::CreateAssetRequest const& request); diff --git a/google/cloud/video/livestream/v1/livestream_connection_idempotency_policy.cc b/google/cloud/video/livestream/v1/livestream_connection_idempotency_policy.cc index ad5fded6a4621..c9a26a2fa30b1 100644 --- a/google/cloud/video/livestream/v1/livestream_connection_idempotency_policy.cc +++ b/google/cloud/video/livestream/v1/livestream_connection_idempotency_policy.cc @@ -114,6 +114,26 @@ Idempotency LivestreamServiceConnectionIdempotencyPolicy::DeleteEvent( return Idempotency::kNonIdempotent; } +Idempotency LivestreamServiceConnectionIdempotencyPolicy::ListClips( + google::cloud::video::livestream::v1::ListClipsRequest) { // NOLINT + return Idempotency::kIdempotent; +} + +Idempotency LivestreamServiceConnectionIdempotencyPolicy::GetClip( + google::cloud::video::livestream::v1::GetClipRequest const&) { + return Idempotency::kIdempotent; +} + +Idempotency LivestreamServiceConnectionIdempotencyPolicy::CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const&) { + return Idempotency::kNonIdempotent; +} + +Idempotency LivestreamServiceConnectionIdempotencyPolicy::DeleteClip( + google::cloud::video::livestream::v1::DeleteClipRequest const&) { + return Idempotency::kNonIdempotent; +} + Idempotency LivestreamServiceConnectionIdempotencyPolicy::CreateAsset( google::cloud::video::livestream::v1::CreateAssetRequest const&) { return Idempotency::kNonIdempotent; diff --git a/google/cloud/video/livestream/v1/livestream_connection_idempotency_policy.h b/google/cloud/video/livestream/v1/livestream_connection_idempotency_policy.h index 3ef78fea85469..1f370fdacd6d0 100644 --- a/google/cloud/video/livestream/v1/livestream_connection_idempotency_policy.h +++ b/google/cloud/video/livestream/v1/livestream_connection_idempotency_policy.h @@ -88,6 +88,18 @@ class LivestreamServiceConnectionIdempotencyPolicy { virtual google::cloud::Idempotency DeleteEvent( google::cloud::video::livestream::v1::DeleteEventRequest const& request); + virtual google::cloud::Idempotency ListClips( + google::cloud::video::livestream::v1::ListClipsRequest request); + + virtual google::cloud::Idempotency GetClip( + google::cloud::video::livestream::v1::GetClipRequest const& request); + + virtual google::cloud::Idempotency CreateClip( + google::cloud::video::livestream::v1::CreateClipRequest const& request); + + virtual google::cloud::Idempotency DeleteClip( + google::cloud::video::livestream::v1::DeleteClipRequest const& request); + virtual google::cloud::Idempotency CreateAsset( google::cloud::video::livestream::v1::CreateAssetRequest const& request); diff --git a/google/cloud/video/livestream/v1/mocks/mock_livestream_connection.h b/google/cloud/video/livestream/v1/mocks/mock_livestream_connection.h index 6ecd46caab17a..0be4b0c5975b2 100644 --- a/google/cloud/video/livestream/v1/mocks/mock_livestream_connection.h +++ b/google/cloud/video/livestream/v1/mocks/mock_livestream_connection.h @@ -262,6 +262,57 @@ class MockLivestreamServiceConnection (google::cloud::video::livestream::v1::DeleteEventRequest const& request), (override)); + MOCK_METHOD((StreamRange), + ListClips, + (google::cloud::video::livestream::v1::ListClipsRequest request), + (override)); + + MOCK_METHOD( + StatusOr, GetClip, + (google::cloud::video::livestream::v1::GetClipRequest const& request), + (override)); + + /// Due to additional overloads for this method + /// `EXPECT_CALL(*mock, CreateClip)` is now ambiguous. Use + /// `EXPECT_CALL(*mock, CreateClip(::testing::_))` instead. + MOCK_METHOD( + future>, CreateClip, + (google::cloud::video::livestream::v1::CreateClipRequest const& request), + (override)); + + MOCK_METHOD( + StatusOr, CreateClip, + (ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::CreateClipRequest const& request), + (override)); + + MOCK_METHOD(future>, + CreateClip, + (ExperimentalTag, + google::longrunning::Operation const& operation), + (override)); + + /// Due to additional overloads for this method + /// `EXPECT_CALL(*mock, DeleteClip)` is now ambiguous. Use + /// `EXPECT_CALL(*mock, DeleteClip(::testing::_))` instead. + MOCK_METHOD( + future>, + DeleteClip, + (google::cloud::video::livestream::v1::DeleteClipRequest const& request), + (override)); + + MOCK_METHOD( + StatusOr, DeleteClip, + (ExperimentalTag, NoAwaitTag, + google::cloud::video::livestream::v1::DeleteClipRequest const& request), + (override)); + + MOCK_METHOD( + future>, + DeleteClip, + (ExperimentalTag, google::longrunning::Operation const& operation), + (override)); + /// Due to additional overloads for this method /// `EXPECT_CALL(*mock, CreateAsset)` is now ambiguous. Use /// `EXPECT_CALL(*mock, CreateAsset(::testing::_))` instead.