19#ifndef GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_SPANNER_ADMIN_INSTANCE_ADMIN_CLIENT_H
20#define GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_SPANNER_ADMIN_INSTANCE_ADMIN_CLIENT_H
22#include "google/cloud/spanner/admin/instance_admin_connection.h"
23#include "google/cloud/future.h"
24#include "google/cloud/iam_updater.h"
25#include "google/cloud/options.h"
26#include "google/cloud/polling_policy.h"
27#include "google/cloud/status_or.h"
28#include "google/cloud/version.h"
29#include <google/longrunning/operations.grpc.pb.h>
36GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_BEGIN
102 return a.connection_ == b.connection_;
144 StreamRange<
google::spanner::admin::instance::v1::InstanceConfig>
184 StreamRange<
google::spanner::admin::instance::v1::InstanceConfig>
186 google::spanner::admin::instance::v1::ListInstanceConfigsRequest request,
213 StatusOr<
google::spanner::admin::instance::v1::InstanceConfig>
244 StatusOr<
google::spanner::admin::instance::v1::InstanceConfig>
246 google::spanner::admin::instance::v1::GetInstanceConfigRequest
const&
335 future<StatusOr<
google::spanner::admin::instance::v1::InstanceConfig>>
337 std::string
const& parent,
338 google::spanner::admin::instance::v1::InstanceConfig
const&
340 std::string
const& instance_config_id,
Options opts
= {});
422 future<StatusOr<
google::spanner::admin::instance::v1::InstanceConfig>>
424 google::spanner::admin::instance::v1::CreateInstanceConfigRequest
const&
518 future<StatusOr<
google::spanner::admin::instance::v1::InstanceConfig>>
520 google::spanner::admin::instance::v1::InstanceConfig
const&
608 future<StatusOr<
google::spanner::admin::instance::v1::InstanceConfig>>
610 google::spanner::admin::instance::v1::UpdateInstanceConfigRequest
const&
680 google::spanner::admin::instance::v1::DeleteInstanceConfigRequest
const&
729 std::string
const& parent,
Options opts
= {});
780 google::spanner::admin::instance::v1::ListInstanceConfigOperationsRequest
818 std::string
const& parent,
Options opts
= {});
858 google::spanner::admin::instance::v1::ListInstancesRequest request,
917 google::spanner::admin::instance::v1::GetInstanceRequest
const& request,
992 future<StatusOr<
google::spanner::admin::instance::v1::Instance>>
993 CreateInstance(std::string
const& parent, std::string
const& instance_id,
994 google::spanner::admin::instance::v1::Instance
const& instance,
1068 future<StatusOr<
google::spanner::admin::instance::v1::Instance>>
1070 google::spanner::admin::instance::v1::CreateInstanceRequest
const&
1156 future<StatusOr<
google::spanner::admin::instance::v1::Instance>>
1158 google::protobuf::FieldMask
const& field_mask,
1240 future<StatusOr<
google::spanner::admin::instance::v1::Instance>>
1242 google::spanner::admin::instance::v1::UpdateInstanceRequest
const&
1315 google::spanner::admin::instance::v1::DeleteInstanceRequest
const&
1353 std::string
const& resource,
google::iam::v1::Policy
const& policy,
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1377 IamUpdater
const& updater,
1518 std::string
const& resource, std::vector<std::string>
const& permissions,
1555 google::iam::v1::TestIamPermissionsRequest
const& request,
1563GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END
1564namespace gcpcxxV1 = GOOGLE_CLOUD_CPP_NS;
friend friend class future
Cloud Spanner Instance Admin API.
Definition: instance_admin_client.h:84
InstanceAdminClient & operator=(InstanceAdminClient const &)=default
StatusOr< google::iam::v1::TestIamPermissionsResponse > TestIamPermissions(std::string const &resource, std::vector< std::string > const &permissions, Options opts={})
Returns permissions that the caller has on the specified instance resource.
StreamRange< google::spanner::admin::instance::v1::Instance > ListInstances(std::string const &parent, Options opts={})
Lists all instances in the given project.
StatusOr< google::spanner::admin::instance::v1::Instance > GetInstance(google::spanner::admin::instance::v1::GetInstanceRequest const &request, Options opts={})
Gets information about a particular instance.
InstanceAdminClient(InstanceAdminClient const &)=default
StatusOr< google::iam::v1::Policy > SetIamPolicy(std::string const &resource, IamUpdater const &updater, Options opts={})
Updates the IAM policy for resource using an optimistic concurrency control loop.
StreamRange< google::spanner::admin::instance::v1::InstanceConfig > ListInstanceConfigs(google::spanner::admin::instance::v1::ListInstanceConfigsRequest request, Options opts={})
Lists the supported instance configurations for a given project.
StatusOr< google::iam::v1::Policy > SetIamPolicy(google::iam::v1::SetIamPolicyRequest const &request, Options opts={})
Sets the access control policy on an instance resource.
StatusOr< google::spanner::admin::instance::v1::InstanceConfig > GetInstanceConfig(std::string const &name, Options opts={})
Gets information about a particular instance configuration.
Status DeleteInstance(std::string const &name, Options opts={})
Deletes an instance.
future< StatusOr< google::spanner::admin::instance::v1::Instance > > UpdateInstance(google::spanner::admin::instance::v1::Instance const &instance, google::protobuf::FieldMask const &field_mask, Options opts={})
Updates an instance, and begins allocating or releasing resources as requested.
Status DeleteInstance(google::spanner::admin::instance::v1::DeleteInstanceRequest const &request, Options opts={})
Deletes an instance.
StreamRange< google::spanner::admin::instance::v1::Instance > ListInstances(google::spanner::admin::instance::v1::ListInstancesRequest request, Options opts={})
Lists all instances in the given project.
StatusOr< google::spanner::admin::instance::v1::InstanceConfig > GetInstanceConfig(google::spanner::admin::instance::v1::GetInstanceConfigRequest const &request, Options opts={})
Gets information about a particular instance configuration.
InstanceAdminClient(std::shared_ptr< InstanceAdminConnection > connection, Options opts={})
future< StatusOr< google::spanner::admin::instance::v1::Instance > > UpdateInstance(google::spanner::admin::instance::v1::UpdateInstanceRequest const &request, Options opts={})
Updates an instance, and begins allocating or releasing resources as requested.
StreamRange< google::spanner::admin::instance::v1::InstanceConfig > ListInstanceConfigs(std::string const &parent, Options opts={})
Lists the supported instance configurations for a given project.
future< StatusOr< google::spanner::admin::instance::v1::Instance > > CreateInstance(google::spanner::admin::instance::v1::CreateInstanceRequest const &request, Options opts={})
Creates an instance and begins preparing it to begin serving.
future< StatusOr< google::spanner::admin::instance::v1::InstanceConfig > > UpdateInstanceConfig(google::spanner::admin::instance::v1::UpdateInstanceConfigRequest const &request, Options opts={})
Updates an instance config.
future< StatusOr< google::spanner::admin::instance::v1::InstanceConfig > > CreateInstanceConfig(std::string const &parent, google::spanner::admin::instance::v1::InstanceConfig const &instance_config, std::string const &instance_config_id, Options opts={})
Creates an instance config and begins preparing it to be used.
future< StatusOr< google::spanner::admin::instance::v1::Instance > > CreateInstance(std::string const &parent, std::string const &instance_id, google::spanner::admin::instance::v1::Instance const &instance, Options opts={})
Creates an instance and begins preparing it to begin serving.
StatusOr< google::iam::v1::Policy > SetIamPolicy(std::string const &resource, google::iam::v1::Policy const &policy, Options opts={})
Sets the access control policy on an instance resource.
StatusOr< google::iam::v1::Policy > GetIamPolicy(std::string const &resource, Options opts={})
Gets the access control policy for an instance resource.
StatusOr< google::spanner::admin::instance::v1::Instance > GetInstance(std::string const &name, Options opts={})
Gets information about a particular instance.
InstanceAdminClient(InstanceAdminClient &&)=default
Status DeleteInstanceConfig(std::string const &name, Options opts={})
Deletes the instance config.
InstanceAdminClient & operator=(InstanceAdminClient &&)=default
StreamRange< google::longrunning::Operation > ListInstanceConfigOperations(google::spanner::admin::instance::v1::ListInstanceConfigOperationsRequest request, Options opts={})
Lists the user-managed instance config long-running operations in the given project.
future< StatusOr< google::spanner::admin::instance::v1::InstanceConfig > > UpdateInstanceConfig(google::spanner::admin::instance::v1::InstanceConfig const &instance_config, google::protobuf::FieldMask const &update_mask, Options opts={})
Updates an instance config.
StatusOr< google::iam::v1::Policy > GetIamPolicy(google::iam::v1::GetIamPolicyRequest const &request, Options opts={})
Gets the access control policy for an instance resource.
StreamRange< google::longrunning::Operation > ListInstanceConfigOperations(std::string const &parent, Options opts={})
Lists the user-managed instance config long-running operations in the given project.
future< StatusOr< google::spanner::admin::instance::v1::InstanceConfig > > CreateInstanceConfig(google::spanner::admin::instance::v1::CreateInstanceConfigRequest const &request, Options opts={})
Creates an instance config and begins preparing it to be used.
friend bool operator!=(InstanceAdminClient const &a, InstanceAdminClient const &b)
Definition: instance_admin_client.h:104
StatusOr< google::iam::v1::TestIamPermissionsResponse > TestIamPermissions(google::iam::v1::TestIamPermissionsRequest const &request, Options opts={})
Returns permissions that the caller has on the specified instance resource.
Status DeleteInstanceConfig(google::spanner::admin::instance::v1::DeleteInstanceConfigRequest const &request, Options opts={})
Deletes the instance config.
friend bool operator==(InstanceAdminClient const &a, InstanceAdminClient const &b)
Definition: instance_admin_client.h:100
The InstanceAdminConnection object for InstanceAdminClient.
Definition: instance_admin_connection.h:64
Definition: database_admin_client.h:34