19 #ifndef GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_SPANNER_ADMIN_INTERNAL_INSTANCE_ADMIN_AUTH_DECORATOR_H
20 #define GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_SPANNER_ADMIN_INTERNAL_INSTANCE_ADMIN_AUTH_DECORATOR_H
22 #include "google/cloud/spanner/admin/internal/instance_admin_stub.h"
23 #include "google/cloud/internal/unified_grpc_credentials.h"
24 #include "google/cloud/version.h"
25 #include <google/longrunning/operations.grpc.pb.h>
39 std::shared_ptr<
google::
cloud::internal::GrpcAuthenticationStrategy> auth,
42 StatusOr<
google::spanner::admin::instance::v1::ListInstanceConfigsResponse>
44 grpc::ClientContext& context,
45 google::spanner::admin::instance::v1::ListInstanceConfigsRequest
const&
48 StatusOr<
google::spanner::admin::instance::v1::InstanceConfig>
50 grpc::ClientContext& context,
51 google::spanner::admin::instance::v1::GetInstanceConfigRequest
const&
54 StatusOr<
google::spanner::admin::instance::v1::ListInstancesResponse>
56 grpc::ClientContext& context,
57 google::spanner::admin::instance::v1::ListInstancesRequest
const& request)
61 grpc::ClientContext& context,
62 google::spanner::admin::instance::v1::GetInstanceRequest
const& request)
67 std::unique_ptr<grpc::ClientContext> context,
68 google::spanner::admin::instance::v1::CreateInstanceRequest
const&
73 std::unique_ptr<grpc::ClientContext> context,
74 google::spanner::admin::instance::v1::UpdateInstanceRequest
const&
78 grpc::ClientContext& context,
79 google::spanner::admin::instance::v1::DeleteInstanceRequest
const&
83 grpc::ClientContext& context,
84 google::iam::v1::SetIamPolicyRequest
const& request)
override;
87 grpc::ClientContext& context,
88 google::iam::v1::GetIamPolicyRequest
const& request)
override;
91 grpc::ClientContext& context,
92 google::iam::v1::TestIamPermissionsRequest
const& request)
override;
96 std::unique_ptr<grpc::ClientContext> context,
97 google::longrunning::GetOperationRequest
const& request)
override;
101 std::unique_ptr<grpc::ClientContext> context,
102 google::longrunning::CancelOperationRequest
const& request)
override;
105 std::shared_ptr<
google::
cloud::internal::GrpcAuthenticationStrategy> auth_;