google-cloud-spanner-admin-database-v1 1.4.0 → 1.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/google/cloud/spanner/admin/database/v1/database_admin/client.rb +107 -0
- data/lib/google/cloud/spanner/admin/database/v1/database_admin/rest/client.rb +100 -0
- data/lib/google/cloud/spanner/admin/database/v1/database_admin/rest/service_stub.rb +62 -0
- data/lib/google/cloud/spanner/admin/database/v1/version.rb +1 -1
- data/lib/google/spanner/admin/database/v1/spanner_database_admin_pb.rb +7 -1
- data/lib/google/spanner/admin/database/v1/spanner_database_admin_services_pb.rb +2 -0
- data/proto_docs/google/api/client.rb +8 -0
- data/proto_docs/google/protobuf/struct.rb +108 -0
- data/proto_docs/google/spanner/admin/database/v1/spanner_database_admin.rb +60 -0
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e655704595f4637ac85fc228a7f2cc31670dcff717df4c4c12ce56f6fb05c90a
|
4
|
+
data.tar.gz: 2bdda07f959871c298e8b3c851204fb9be607aee5493cc3cd48e1675bf149906
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 93115268748135734530be5218d5a19358f9e87e5cb6019700f937fe14788a3ce4ce57217c2790b10687e4dad746224c7e64a13929f15abbb8cd584b5dac9de6
|
7
|
+
data.tar.gz: 76defb282d45726992c95752d72f59bdafc4e0e9bff5911916f25093cd31f4f30f7c331e0d512b35232a8c81a791cbe24da70da2082dd4c3e63112b98d95f8b7
|
@@ -160,6 +160,11 @@ module Google
|
|
160
160
|
initial_delay: 1.0, max_delay: 32.0, multiplier: 1.3, retry_codes: [14, 4]
|
161
161
|
}
|
162
162
|
|
163
|
+
default_config.rpcs.add_split_points.timeout = 3600.0
|
164
|
+
default_config.rpcs.add_split_points.retry_policy = {
|
165
|
+
initial_delay: 1.0, max_delay: 32.0, multiplier: 1.3, retry_codes: [14, 4]
|
166
|
+
}
|
167
|
+
|
163
168
|
default_config.rpcs.create_backup_schedule.timeout = 3600.0
|
164
169
|
default_config.rpcs.create_backup_schedule.retry_policy = {
|
165
170
|
initial_delay: 1.0, max_delay: 32.0, multiplier: 1.3, retry_codes: [14, 4]
|
@@ -2618,6 +2623,101 @@ module Google
|
|
2618
2623
|
raise ::Google::Cloud::Error.from_error(e)
|
2619
2624
|
end
|
2620
2625
|
|
2626
|
+
##
|
2627
|
+
# Adds split points to specified tables, indexes of a database.
|
2628
|
+
#
|
2629
|
+
# @overload add_split_points(request, options = nil)
|
2630
|
+
# Pass arguments to `add_split_points` via a request object, either of type
|
2631
|
+
# {::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest} or an equivalent Hash.
|
2632
|
+
#
|
2633
|
+
# @param request [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest, ::Hash]
|
2634
|
+
# A request object representing the call parameters. Required. To specify no
|
2635
|
+
# parameters, or to keep all the default parameter values, pass an empty Hash.
|
2636
|
+
# @param options [::Gapic::CallOptions, ::Hash]
|
2637
|
+
# Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
|
2638
|
+
#
|
2639
|
+
# @overload add_split_points(database: nil, split_points: nil, initiator: nil)
|
2640
|
+
# Pass arguments to `add_split_points` via keyword arguments. Note that at
|
2641
|
+
# least one keyword argument is required. To specify no parameters, or to keep all
|
2642
|
+
# the default parameter values, pass an empty Hash as a request object (see above).
|
2643
|
+
#
|
2644
|
+
# @param database [::String]
|
2645
|
+
# Required. The database on whose tables/indexes split points are to be
|
2646
|
+
# added. Values are of the form
|
2647
|
+
# `projects/<project>/instances/<instance>/databases/<database>`.
|
2648
|
+
# @param split_points [::Array<::Google::Cloud::Spanner::Admin::Database::V1::SplitPoints, ::Hash>]
|
2649
|
+
# Required. The split points to add.
|
2650
|
+
# @param initiator [::String]
|
2651
|
+
# Optional. A user-supplied tag associated with the split points.
|
2652
|
+
# For example, "intital_data_load", "special_event_1".
|
2653
|
+
# Defaults to "CloudAddSplitPointsAPI" if not specified.
|
2654
|
+
# The length of the tag must not exceed 50 characters,else will be trimmed.
|
2655
|
+
# Only valid UTF8 characters are allowed.
|
2656
|
+
#
|
2657
|
+
# @yield [response, operation] Access the result along with the RPC operation
|
2658
|
+
# @yieldparam response [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse]
|
2659
|
+
# @yieldparam operation [::GRPC::ActiveCall::Operation]
|
2660
|
+
#
|
2661
|
+
# @return [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse]
|
2662
|
+
#
|
2663
|
+
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
2664
|
+
#
|
2665
|
+
# @example Basic example
|
2666
|
+
# require "google/cloud/spanner/admin/database/v1"
|
2667
|
+
#
|
2668
|
+
# # Create a client object. The client can be reused for multiple calls.
|
2669
|
+
# client = Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client.new
|
2670
|
+
#
|
2671
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
2672
|
+
# request = Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest.new
|
2673
|
+
#
|
2674
|
+
# # Call the add_split_points method.
|
2675
|
+
# result = client.add_split_points request
|
2676
|
+
#
|
2677
|
+
# # The returned object is of type Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse.
|
2678
|
+
# p result
|
2679
|
+
#
|
2680
|
+
def add_split_points request, options = nil
|
2681
|
+
raise ::ArgumentError, "request must be provided" if request.nil?
|
2682
|
+
|
2683
|
+
request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest
|
2684
|
+
|
2685
|
+
# Converts hash and nil to an options object
|
2686
|
+
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
|
2687
|
+
|
2688
|
+
# Customize the options with defaults
|
2689
|
+
metadata = @config.rpcs.add_split_points.metadata.to_h
|
2690
|
+
|
2691
|
+
# Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
|
2692
|
+
metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
|
2693
|
+
lib_name: @config.lib_name, lib_version: @config.lib_version,
|
2694
|
+
gapic_version: ::Google::Cloud::Spanner::Admin::Database::V1::VERSION
|
2695
|
+
metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
|
2696
|
+
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
2697
|
+
|
2698
|
+
header_params = {}
|
2699
|
+
if request.database
|
2700
|
+
header_params["database"] = request.database
|
2701
|
+
end
|
2702
|
+
|
2703
|
+
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
2704
|
+
metadata[:"x-goog-request-params"] ||= request_params_header
|
2705
|
+
|
2706
|
+
options.apply_defaults timeout: @config.rpcs.add_split_points.timeout,
|
2707
|
+
metadata: metadata,
|
2708
|
+
retry_policy: @config.rpcs.add_split_points.retry_policy
|
2709
|
+
|
2710
|
+
options.apply_defaults timeout: @config.timeout,
|
2711
|
+
metadata: @config.metadata,
|
2712
|
+
retry_policy: @config.retry_policy
|
2713
|
+
|
2714
|
+
@database_admin_stub.call_rpc :add_split_points, request, options: options do |response, operation|
|
2715
|
+
yield response, operation if block_given?
|
2716
|
+
end
|
2717
|
+
rescue ::GRPC::BadStatus => e
|
2718
|
+
raise ::Google::Cloud::Error.from_error(e)
|
2719
|
+
end
|
2720
|
+
|
2621
2721
|
##
|
2622
2722
|
# Creates a new backup schedule.
|
2623
2723
|
#
|
@@ -3345,6 +3445,11 @@ module Google
|
|
3345
3445
|
#
|
3346
3446
|
attr_reader :list_database_roles
|
3347
3447
|
##
|
3448
|
+
# RPC-specific configuration for `add_split_points`
|
3449
|
+
# @return [::Gapic::Config::Method]
|
3450
|
+
#
|
3451
|
+
attr_reader :add_split_points
|
3452
|
+
##
|
3348
3453
|
# RPC-specific configuration for `create_backup_schedule`
|
3349
3454
|
# @return [::Gapic::Config::Method]
|
3350
3455
|
#
|
@@ -3412,6 +3517,8 @@ module Google
|
|
3412
3517
|
@list_backup_operations = ::Gapic::Config::Method.new list_backup_operations_config
|
3413
3518
|
list_database_roles_config = parent_rpcs.list_database_roles if parent_rpcs.respond_to? :list_database_roles
|
3414
3519
|
@list_database_roles = ::Gapic::Config::Method.new list_database_roles_config
|
3520
|
+
add_split_points_config = parent_rpcs.add_split_points if parent_rpcs.respond_to? :add_split_points
|
3521
|
+
@add_split_points = ::Gapic::Config::Method.new add_split_points_config
|
3415
3522
|
create_backup_schedule_config = parent_rpcs.create_backup_schedule if parent_rpcs.respond_to? :create_backup_schedule
|
3416
3523
|
@create_backup_schedule = ::Gapic::Config::Method.new create_backup_schedule_config
|
3417
3524
|
get_backup_schedule_config = parent_rpcs.get_backup_schedule if parent_rpcs.respond_to? :get_backup_schedule
|
@@ -162,6 +162,11 @@ module Google
|
|
162
162
|
initial_delay: 1.0, max_delay: 32.0, multiplier: 1.3, retry_codes: [14, 4]
|
163
163
|
}
|
164
164
|
|
165
|
+
default_config.rpcs.add_split_points.timeout = 3600.0
|
166
|
+
default_config.rpcs.add_split_points.retry_policy = {
|
167
|
+
initial_delay: 1.0, max_delay: 32.0, multiplier: 1.3, retry_codes: [14, 4]
|
168
|
+
}
|
169
|
+
|
165
170
|
default_config.rpcs.create_backup_schedule.timeout = 3600.0
|
166
171
|
default_config.rpcs.create_backup_schedule.retry_policy = {
|
167
172
|
initial_delay: 1.0, max_delay: 32.0, multiplier: 1.3, retry_codes: [14, 4]
|
@@ -2469,6 +2474,94 @@ module Google
|
|
2469
2474
|
raise ::Google::Cloud::Error.from_error(e)
|
2470
2475
|
end
|
2471
2476
|
|
2477
|
+
##
|
2478
|
+
# Adds split points to specified tables, indexes of a database.
|
2479
|
+
#
|
2480
|
+
# @overload add_split_points(request, options = nil)
|
2481
|
+
# Pass arguments to `add_split_points` via a request object, either of type
|
2482
|
+
# {::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest} or an equivalent Hash.
|
2483
|
+
#
|
2484
|
+
# @param request [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest, ::Hash]
|
2485
|
+
# A request object representing the call parameters. Required. To specify no
|
2486
|
+
# parameters, or to keep all the default parameter values, pass an empty Hash.
|
2487
|
+
# @param options [::Gapic::CallOptions, ::Hash]
|
2488
|
+
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
|
2489
|
+
#
|
2490
|
+
# @overload add_split_points(database: nil, split_points: nil, initiator: nil)
|
2491
|
+
# Pass arguments to `add_split_points` via keyword arguments. Note that at
|
2492
|
+
# least one keyword argument is required. To specify no parameters, or to keep all
|
2493
|
+
# the default parameter values, pass an empty Hash as a request object (see above).
|
2494
|
+
#
|
2495
|
+
# @param database [::String]
|
2496
|
+
# Required. The database on whose tables/indexes split points are to be
|
2497
|
+
# added. Values are of the form
|
2498
|
+
# `projects/<project>/instances/<instance>/databases/<database>`.
|
2499
|
+
# @param split_points [::Array<::Google::Cloud::Spanner::Admin::Database::V1::SplitPoints, ::Hash>]
|
2500
|
+
# Required. The split points to add.
|
2501
|
+
# @param initiator [::String]
|
2502
|
+
# Optional. A user-supplied tag associated with the split points.
|
2503
|
+
# For example, "intital_data_load", "special_event_1".
|
2504
|
+
# Defaults to "CloudAddSplitPointsAPI" if not specified.
|
2505
|
+
# The length of the tag must not exceed 50 characters,else will be trimmed.
|
2506
|
+
# Only valid UTF8 characters are allowed.
|
2507
|
+
# @yield [result, operation] Access the result along with the TransportOperation object
|
2508
|
+
# @yieldparam result [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse]
|
2509
|
+
# @yieldparam operation [::Gapic::Rest::TransportOperation]
|
2510
|
+
#
|
2511
|
+
# @return [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse]
|
2512
|
+
#
|
2513
|
+
# @raise [::Google::Cloud::Error] if the REST call is aborted.
|
2514
|
+
#
|
2515
|
+
# @example Basic example
|
2516
|
+
# require "google/cloud/spanner/admin/database/v1"
|
2517
|
+
#
|
2518
|
+
# # Create a client object. The client can be reused for multiple calls.
|
2519
|
+
# client = Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Rest::Client.new
|
2520
|
+
#
|
2521
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
2522
|
+
# request = Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest.new
|
2523
|
+
#
|
2524
|
+
# # Call the add_split_points method.
|
2525
|
+
# result = client.add_split_points request
|
2526
|
+
#
|
2527
|
+
# # The returned object is of type Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse.
|
2528
|
+
# p result
|
2529
|
+
#
|
2530
|
+
def add_split_points request, options = nil
|
2531
|
+
raise ::ArgumentError, "request must be provided" if request.nil?
|
2532
|
+
|
2533
|
+
request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest
|
2534
|
+
|
2535
|
+
# Converts hash and nil to an options object
|
2536
|
+
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
|
2537
|
+
|
2538
|
+
# Customize the options with defaults
|
2539
|
+
call_metadata = @config.rpcs.add_split_points.metadata.to_h
|
2540
|
+
|
2541
|
+
# Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
|
2542
|
+
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
|
2543
|
+
lib_name: @config.lib_name, lib_version: @config.lib_version,
|
2544
|
+
gapic_version: ::Google::Cloud::Spanner::Admin::Database::V1::VERSION,
|
2545
|
+
transports_version_send: [:rest]
|
2546
|
+
|
2547
|
+
call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
|
2548
|
+
call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
2549
|
+
|
2550
|
+
options.apply_defaults timeout: @config.rpcs.add_split_points.timeout,
|
2551
|
+
metadata: call_metadata,
|
2552
|
+
retry_policy: @config.rpcs.add_split_points.retry_policy
|
2553
|
+
|
2554
|
+
options.apply_defaults timeout: @config.timeout,
|
2555
|
+
metadata: @config.metadata,
|
2556
|
+
retry_policy: @config.retry_policy
|
2557
|
+
|
2558
|
+
@database_admin_stub.add_split_points request, options do |result, operation|
|
2559
|
+
yield result, operation if block_given?
|
2560
|
+
end
|
2561
|
+
rescue ::Gapic::Rest::Error => e
|
2562
|
+
raise ::Google::Cloud::Error.from_error(e)
|
2563
|
+
end
|
2564
|
+
|
2472
2565
|
##
|
2473
2566
|
# Creates a new backup schedule.
|
2474
2567
|
#
|
@@ -3141,6 +3234,11 @@ module Google
|
|
3141
3234
|
#
|
3142
3235
|
attr_reader :list_database_roles
|
3143
3236
|
##
|
3237
|
+
# RPC-specific configuration for `add_split_points`
|
3238
|
+
# @return [::Gapic::Config::Method]
|
3239
|
+
#
|
3240
|
+
attr_reader :add_split_points
|
3241
|
+
##
|
3144
3242
|
# RPC-specific configuration for `create_backup_schedule`
|
3145
3243
|
# @return [::Gapic::Config::Method]
|
3146
3244
|
#
|
@@ -3208,6 +3306,8 @@ module Google
|
|
3208
3306
|
@list_backup_operations = ::Gapic::Config::Method.new list_backup_operations_config
|
3209
3307
|
list_database_roles_config = parent_rpcs.list_database_roles if parent_rpcs.respond_to? :list_database_roles
|
3210
3308
|
@list_database_roles = ::Gapic::Config::Method.new list_database_roles_config
|
3309
|
+
add_split_points_config = parent_rpcs.add_split_points if parent_rpcs.respond_to? :add_split_points
|
3310
|
+
@add_split_points = ::Gapic::Config::Method.new add_split_points_config
|
3211
3311
|
create_backup_schedule_config = parent_rpcs.create_backup_schedule if parent_rpcs.respond_to? :create_backup_schedule
|
3212
3312
|
@create_backup_schedule = ::Gapic::Config::Method.new create_backup_schedule_config
|
3213
3313
|
get_backup_schedule_config = parent_rpcs.get_backup_schedule if parent_rpcs.respond_to? :get_backup_schedule
|
@@ -875,6 +875,46 @@ module Google
|
|
875
875
|
end
|
876
876
|
end
|
877
877
|
|
878
|
+
##
|
879
|
+
# Baseline implementation for the add_split_points REST call
|
880
|
+
#
|
881
|
+
# @param request_pb [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest]
|
882
|
+
# A request object representing the call parameters. Required.
|
883
|
+
# @param options [::Gapic::CallOptions]
|
884
|
+
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
|
885
|
+
#
|
886
|
+
# @yield [result, operation] Access the result along with the TransportOperation object
|
887
|
+
# @yieldparam result [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse]
|
888
|
+
# @yieldparam operation [::Gapic::Rest::TransportOperation]
|
889
|
+
#
|
890
|
+
# @return [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse]
|
891
|
+
# A result object deserialized from the server's reply
|
892
|
+
def add_split_points request_pb, options = nil
|
893
|
+
raise ::ArgumentError, "request must be provided" if request_pb.nil?
|
894
|
+
|
895
|
+
verb, uri, query_string_params, body = ServiceStub.transcode_add_split_points_request request_pb
|
896
|
+
query_string_params = if query_string_params.any?
|
897
|
+
query_string_params.to_h { |p| p.split "=", 2 }
|
898
|
+
else
|
899
|
+
{}
|
900
|
+
end
|
901
|
+
|
902
|
+
response = @client_stub.make_http_request(
|
903
|
+
verb,
|
904
|
+
uri: uri,
|
905
|
+
body: body || "",
|
906
|
+
params: query_string_params,
|
907
|
+
method_name: "add_split_points",
|
908
|
+
options: options
|
909
|
+
)
|
910
|
+
operation = ::Gapic::Rest::TransportOperation.new response
|
911
|
+
result = ::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse.decode_json response.body, ignore_unknown_fields: true
|
912
|
+
catch :response do
|
913
|
+
yield result, operation if block_given?
|
914
|
+
result
|
915
|
+
end
|
916
|
+
end
|
917
|
+
|
878
918
|
##
|
879
919
|
# Baseline implementation for the create_backup_schedule REST call
|
880
920
|
#
|
@@ -1561,6 +1601,28 @@ module Google
|
|
1561
1601
|
transcoder.transcode request_pb
|
1562
1602
|
end
|
1563
1603
|
|
1604
|
+
##
|
1605
|
+
# @private
|
1606
|
+
#
|
1607
|
+
# GRPC transcoding helper method for the add_split_points REST call
|
1608
|
+
#
|
1609
|
+
# @param request_pb [::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest]
|
1610
|
+
# A request object representing the call parameters. Required.
|
1611
|
+
# @return [Array(String, [String, nil], Hash{String => String})]
|
1612
|
+
# Uri, Body, Query string parameters
|
1613
|
+
def self.transcode_add_split_points_request request_pb
|
1614
|
+
transcoder = Gapic::Rest::GrpcTranscoder.new
|
1615
|
+
.with_bindings(
|
1616
|
+
uri_method: :post,
|
1617
|
+
uri_template: "/v1/{database}:addSplitPoints",
|
1618
|
+
body: "*",
|
1619
|
+
matches: [
|
1620
|
+
["database", %r{^projects/[^/]+/instances/[^/]+/databases/[^/]+/?$}, false]
|
1621
|
+
]
|
1622
|
+
)
|
1623
|
+
transcoder.transcode request_pb
|
1624
|
+
end
|
1625
|
+
|
1564
1626
|
##
|
1565
1627
|
# @private
|
1566
1628
|
#
|
@@ -13,13 +13,14 @@ require 'google/iam/v1/policy_pb'
|
|
13
13
|
require 'google/longrunning/operations_pb'
|
14
14
|
require 'google/protobuf/empty_pb'
|
15
15
|
require 'google/protobuf/field_mask_pb'
|
16
|
+
require 'google/protobuf/struct_pb'
|
16
17
|
require 'google/protobuf/timestamp_pb'
|
17
18
|
require 'google/spanner/admin/database/v1/backup_pb'
|
18
19
|
require 'google/spanner/admin/database/v1/backup_schedule_pb'
|
19
20
|
require 'google/spanner/admin/database/v1/common_pb'
|
20
21
|
|
21
22
|
|
22
|
-
descriptor_data = "\n=google/spanner/admin/database/v1/spanner_database_admin.proto\x12 google.spanner.admin.database.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1egoogle/iam/v1/iam_policy.proto\x1a\x1agoogle/iam/v1/policy.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a-google/spanner/admin/database/v1/backup.proto\x1a\x36google/spanner/admin/database/v1/backup_schedule.proto\x1a-google/spanner/admin/database/v1/common.proto\"\xab\x01\n\x0bRestoreInfo\x12H\n\x0bsource_type\x18\x01 \x01(\x0e\x32\x33.google.spanner.admin.database.v1.RestoreSourceType\x12\x43\n\x0b\x62\x61\x63kup_info\x18\x02 \x01(\x0b\x32,.google.spanner.admin.database.v1.BackupInfoH\x00\x42\r\n\x0bsource_info\"\xca\x06\n\x08\x44\x61tabase\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x05state\x18\x02 \x01(\x0e\x32\x30.google.spanner.admin.database.v1.Database.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12H\n\x0crestore_info\x18\x04 \x01(\x0b\x32-.google.spanner.admin.database.v1.RestoreInfoB\x03\xe0\x41\x03\x12R\n\x11\x65ncryption_config\x18\x05 \x01(\x0b\x32\x32.google.spanner.admin.database.v1.EncryptionConfigB\x03\xe0\x41\x03\x12N\n\x0f\x65ncryption_info\x18\x08 \x03(\x0b\x32\x30.google.spanner.admin.database.v1.EncryptionInfoB\x03\xe0\x41\x03\x12%\n\x18version_retention_period\x18\x06 \x01(\tB\x03\xe0\x41\x03\x12>\n\x15\x65\x61rliest_version_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x1b\n\x0e\x64\x65\x66\x61ult_leader\x18\t \x01(\tB\x03\xe0\x41\x03\x12P\n\x10\x64\x61tabase_dialect\x18\n \x01(\x0e\x32\x31.google.spanner.admin.database.v1.DatabaseDialectB\x03\xe0\x41\x03\x12\x1e\n\x16\x65nable_drop_protection\x18\x0b \x01(\x08\x12\x18\n\x0breconciling\x18\x0c \x01(\x08\x42\x03\xe0\x41\x03\"M\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\t\n\x05READY\x10\x02\x12\x14\n\x10READY_OPTIMIZING\x10\x03:b\xea\x41_\n\x1fspanner.googleapis.com/Database\x12<projects/{project}/instances/{instance}/databases/{database}\"v\n\x14ListDatabasesRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x11\n\tpage_size\x18\x03 \x01(\x05\x12\x12\n\npage_token\x18\x04 \x01(\t\"o\n\x15ListDatabasesResponse\x12=\n\tdatabases\x18\x01 \x03(\x0b\x32*.google.spanner.admin.database.v1.Database\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xd4\x02\n\x15\x43reateDatabaseRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x1d\n\x10\x63reate_statement\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x1d\n\x10\x65xtra_statements\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12R\n\x11\x65ncryption_config\x18\x04 \x01(\x0b\x32\x32.google.spanner.admin.database.v1.EncryptionConfigB\x03\xe0\x41\x01\x12P\n\x10\x64\x61tabase_dialect\x18\x05 \x01(\x0e\x32\x31.google.spanner.admin.database.v1.DatabaseDialectB\x03\xe0\x41\x01\x12\x1e\n\x11proto_descriptors\x18\x06 \x01(\x0c\x42\x03\xe0\x41\x01\"P\n\x16\x43reateDatabaseMetadata\x12\x36\n\x08\x64\x61tabase\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database\"K\n\x12GetDatabaseRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\"\x90\x01\n\x15UpdateDatabaseRequest\x12\x41\n\x08\x64\x61tabase\x18\x01 \x01(\x0b\x32*.google.spanner.admin.database.v1.DatabaseB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"\xda\x01\n\x16UpdateDatabaseMetadata\x12H\n\x07request\x18\x01 \x01(\x0b\x32\x37.google.spanner.admin.database.v1.UpdateDatabaseRequest\x12\x45\n\x08progress\x18\x02 \x01(\x0b\x32\x33.google.spanner.admin.database.v1.OperationProgress\x12/\n\x0b\x63\x61ncel_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xa4\x01\n\x18UpdateDatabaseDdlRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x17\n\nstatements\x18\x02 \x03(\tB\x03\xe0\x41\x02\x12\x14\n\x0coperation_id\x18\x03 \x01(\t\x12\x1e\n\x11proto_descriptors\x18\x04 \x01(\x0c\x42\x03\xe0\x41\x01\"S\n\x16\x44\x64lStatementActionInfo\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\t\x12\x13\n\x0b\x65ntity_type\x18\x02 \x01(\t\x12\x14\n\x0c\x65ntity_names\x18\x03 \x03(\t\"\xc8\x02\n\x19UpdateDatabaseDdlMetadata\x12\x36\n\x08\x64\x61tabase\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x12\n\nstatements\x18\x02 \x03(\t\x12\x35\n\x11\x63ommit_timestamps\x18\x03 \x03(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x16\n\tthrottled\x18\x04 \x01(\x08\x42\x03\xe0\x41\x03\x12\x45\n\x08progress\x18\x05 \x03(\x0b\x32\x33.google.spanner.admin.database.v1.OperationProgress\x12I\n\x07\x61\x63tions\x18\x06 \x03(\x0b\x32\x38.google.spanner.admin.database.v1.DdlStatementActionInfo\"P\n\x13\x44ropDatabaseRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\"R\n\x15GetDatabaseDdlRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\"G\n\x16GetDatabaseDdlResponse\x12\x12\n\nstatements\x18\x01 \x03(\t\x12\x19\n\x11proto_descriptors\x18\x02 \x01(\x0c\"\x8f\x01\n\x1dListDatabaseOperationsRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x0e\n\x06\x66ilter\x18\x02 \x01(\t\x12\x11\n\tpage_size\x18\x03 \x01(\x05\x12\x12\n\npage_token\x18\x04 \x01(\t\"l\n\x1eListDatabaseOperationsResponse\x12\x31\n\noperations\x18\x01 \x03(\x0b\x32\x1d.google.longrunning.Operation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x8e\x02\n\x16RestoreDatabaseRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x18\n\x0b\x64\x61tabase_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x34\n\x06\x62\x61\x63kup\x18\x03 \x01(\tB\"\xfa\x41\x1f\n\x1dspanner.googleapis.com/BackupH\x00\x12\x61\n\x11\x65ncryption_config\x18\x04 \x01(\x0b\x32\x41.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfigB\x03\xe0\x41\x01\x42\x08\n\x06source\"\xb5\x03\n\x1fRestoreDatabaseEncryptionConfig\x12n\n\x0f\x65ncryption_type\x18\x01 \x01(\x0e\x32P.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.EncryptionTypeB\x03\xe0\x41\x02\x12?\n\x0ckms_key_name\x18\x02 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!cloudkms.googleapis.com/CryptoKey\x12@\n\rkms_key_names\x18\x03 \x03(\tB)\xe0\x41\x01\xfa\x41#\n!cloudkms.googleapis.com/CryptoKey\"\x9e\x01\n\x0e\x45ncryptionType\x12\x1f\n\x1b\x45NCRYPTION_TYPE_UNSPECIFIED\x10\x00\x12+\n\'USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION\x10\x01\x12\x1d\n\x19GOOGLE_DEFAULT_ENCRYPTION\x10\x02\x12\x1f\n\x1b\x43USTOMER_MANAGED_ENCRYPTION\x10\x03\"\x8d\x03\n\x17RestoreDatabaseMetadata\x12\x32\n\x04name\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12H\n\x0bsource_type\x18\x02 \x01(\x0e\x32\x33.google.spanner.admin.database.v1.RestoreSourceType\x12\x43\n\x0b\x62\x61\x63kup_info\x18\x03 \x01(\x0b\x32,.google.spanner.admin.database.v1.BackupInfoH\x00\x12\x45\n\x08progress\x18\x04 \x01(\x0b\x32\x33.google.spanner.admin.database.v1.OperationProgress\x12/\n\x0b\x63\x61ncel_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12(\n optimize_database_operation_name\x18\x06 \x01(\tB\r\n\x0bsource_info\"\x9d\x01\n OptimizeRestoredDatabaseMetadata\x12\x32\n\x04name\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x45\n\x08progress\x18\x02 \x01(\x0b\x32\x33.google.spanner.admin.database.v1.OperationProgress\"\x9e\x01\n\x0c\x44\x61tabaseRole\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02:{\xea\x41x\n#spanner.googleapis.com/DatabaseRole\x12Qprojects/{project}/instances/{instance}/databases/{database}/databaseRoles/{role}\"z\n\x18ListDatabaseRolesRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"|\n\x19ListDatabaseRolesResponse\x12\x46\n\x0e\x64\x61tabase_roles\x18\x01 \x03(\x0b\x32..google.spanner.admin.database.v1.DatabaseRole\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t*5\n\x11RestoreSourceType\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\n\n\x06\x42\x41\x43KUP\x10\x01\x32\x98\x31\n\rDatabaseAdmin\x12\xc0\x01\n\rListDatabases\x12\x36.google.spanner.admin.database.v1.ListDatabasesRequest\x1a\x37.google.spanner.admin.database.v1.ListDatabasesResponse\">\xda\x41\x06parent\x82\xd3\xe4\x93\x02/\x12-/v1/{parent=projects/*/instances/*}/databases\x12\xa4\x02\n\x0e\x43reateDatabase\x12\x37.google.spanner.admin.database.v1.CreateDatabaseRequest\x1a\x1d.google.longrunning.Operation\"\xb9\x01\xca\x41\x64\n)google.spanner.admin.database.v1.Database\x12\x37google.spanner.admin.database.v1.CreateDatabaseMetadata\xda\x41\x17parent,create_statement\x82\xd3\xe4\x93\x02\x32\"-/v1/{parent=projects/*/instances/*}/databases:\x01*\x12\xad\x01\n\x0bGetDatabase\x12\x34.google.spanner.admin.database.v1.GetDatabaseRequest\x1a*.google.spanner.admin.database.v1.Database\"<\xda\x41\x04name\x82\xd3\xe4\x93\x02/\x12-/v1/{name=projects/*/instances/*/databases/*}\x12\xef\x01\n\x0eUpdateDatabase\x12\x37.google.spanner.admin.database.v1.UpdateDatabaseRequest\x1a\x1d.google.longrunning.Operation\"\x84\x01\xca\x41\"\n\x08\x44\x61tabase\x12\x16UpdateDatabaseMetadata\xda\x41\x14\x64\x61tabase,update_mask\x82\xd3\xe4\x93\x02\x42\x32\x36/v1/{database.name=projects/*/instances/*/databases/*}:\x08\x64\x61tabase\x12\x9d\x02\n\x11UpdateDatabaseDdl\x12:.google.spanner.admin.database.v1.UpdateDatabaseDdlRequest\x1a\x1d.google.longrunning.Operation\"\xac\x01\xca\x41S\n\x15google.protobuf.Empty\x12:google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata\xda\x41\x13\x64\x61tabase,statements\x82\xd3\xe4\x93\x02:25/v1/{database=projects/*/instances/*/databases/*}/ddl:\x01*\x12\xa3\x01\n\x0c\x44ropDatabase\x12\x35.google.spanner.admin.database.v1.DropDatabaseRequest\x1a\x16.google.protobuf.Empty\"D\xda\x41\x08\x64\x61tabase\x82\xd3\xe4\x93\x02\x33*1/v1/{database=projects/*/instances/*/databases/*}\x12\xcd\x01\n\x0eGetDatabaseDdl\x12\x37.google.spanner.admin.database.v1.GetDatabaseDdlRequest\x1a\x38.google.spanner.admin.database.v1.GetDatabaseDdlResponse\"H\xda\x41\x08\x64\x61tabase\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{database=projects/*/instances/*/databases/*}/ddl\x12\xc2\x02\n\x0cSetIamPolicy\x12\".google.iam.v1.SetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\"\xf6\x01\xda\x41\x0fresource,policy\x82\xd3\xe4\x93\x02\xdd\x01\">/v1/{resource=projects/*/instances/*/databases/*}:setIamPolicy:\x01*ZA\"</v1/{resource=projects/*/instances/*/backups/*}:setIamPolicy:\x01*ZU\"P/v1/{resource=projects/*/instances/*/databases/*/backupSchedules/*}:setIamPolicy:\x01*\x12\xbb\x02\n\x0cGetIamPolicy\x12\".google.iam.v1.GetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\"\xef\x01\xda\x41\x08resource\x82\xd3\xe4\x93\x02\xdd\x01\">/v1/{resource=projects/*/instances/*/databases/*}:getIamPolicy:\x01*ZA\"</v1/{resource=projects/*/instances/*/backups/*}:getIamPolicy:\x01*ZU\"P/v1/{resource=projects/*/instances/*/databases/*/backupSchedules/*}:getIamPolicy:\x01*\x12\xd4\x03\n\x12TestIamPermissions\x12(.google.iam.v1.TestIamPermissionsRequest\x1a).google.iam.v1.TestIamPermissionsResponse\"\xe8\x02\xda\x41\x14resource,permissions\x82\xd3\xe4\x93\x02\xca\x02\"D/v1/{resource=projects/*/instances/*/databases/*}:testIamPermissions:\x01*ZG\"B/v1/{resource=projects/*/instances/*/backups/*}:testIamPermissions:\x01*Z[\"V/v1/{resource=projects/*/instances/*/databases/*/backupSchedules/*}:testIamPermissions:\x01*ZY\"T/v1/{resource=projects/*/instances/*/databases/*/databaseRoles/*}:testIamPermissions:\x01*\x12\x9f\x02\n\x0c\x43reateBackup\x12\x35.google.spanner.admin.database.v1.CreateBackupRequest\x1a\x1d.google.longrunning.Operation\"\xb8\x01\xca\x41`\n\'google.spanner.admin.database.v1.Backup\x12\x35google.spanner.admin.database.v1.CreateBackupMetadata\xda\x41\x17parent,backup,backup_id\x82\xd3\xe4\x93\x02\x35\"+/v1/{parent=projects/*/instances/*}/backups:\x06\x62\x61\x63kup\x12\xac\x02\n\nCopyBackup\x12\x33.google.spanner.admin.database.v1.CopyBackupRequest\x1a\x1d.google.longrunning.Operation\"\xc9\x01\xca\x41^\n\'google.spanner.admin.database.v1.Backup\x12\x33google.spanner.admin.database.v1.CopyBackupMetadata\xda\x41*parent,backup_id,source_backup,expire_time\x82\xd3\xe4\x93\x02\x35\"0/v1/{parent=projects/*/instances/*}/backups:copy:\x01*\x12\xa5\x01\n\tGetBackup\x12\x32.google.spanner.admin.database.v1.GetBackupRequest\x1a(.google.spanner.admin.database.v1.Backup\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/instances/*/backups/*}\x12\xc8\x01\n\x0cUpdateBackup\x12\x35.google.spanner.admin.database.v1.UpdateBackupRequest\x1a(.google.spanner.admin.database.v1.Backup\"W\xda\x41\x12\x62\x61\x63kup,update_mask\x82\xd3\xe4\x93\x02<22/v1/{backup.name=projects/*/instances/*/backups/*}:\x06\x62\x61\x63kup\x12\x99\x01\n\x0c\x44\x65leteBackup\x12\x35.google.spanner.admin.database.v1.DeleteBackupRequest\x1a\x16.google.protobuf.Empty\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-*+/v1/{name=projects/*/instances/*/backups/*}\x12\xb8\x01\n\x0bListBackups\x12\x34.google.spanner.admin.database.v1.ListBackupsRequest\x1a\x35.google.spanner.admin.database.v1.ListBackupsResponse\"<\xda\x41\x06parent\x82\xd3\xe4\x93\x02-\x12+/v1/{parent=projects/*/instances/*}/backups\x12\xb1\x02\n\x0fRestoreDatabase\x12\x38.google.spanner.admin.database.v1.RestoreDatabaseRequest\x1a\x1d.google.longrunning.Operation\"\xc4\x01\xca\x41\x65\n)google.spanner.admin.database.v1.Database\x12\x38google.spanner.admin.database.v1.RestoreDatabaseMetadata\xda\x41\x19parent,database_id,backup\x82\xd3\xe4\x93\x02:\"5/v1/{parent=projects/*/instances/*}/databases:restore:\x01*\x12\xe4\x01\n\x16ListDatabaseOperations\x12?.google.spanner.admin.database.v1.ListDatabaseOperationsRequest\x1a@.google.spanner.admin.database.v1.ListDatabaseOperationsResponse\"G\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{parent=projects/*/instances/*}/databaseOperations\x12\xdc\x01\n\x14ListBackupOperations\x12=.google.spanner.admin.database.v1.ListBackupOperationsRequest\x1a>.google.spanner.admin.database.v1.ListBackupOperationsResponse\"E\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{parent=projects/*/instances/*}/backupOperations\x12\xdc\x01\n\x11ListDatabaseRoles\x12:.google.spanner.admin.database.v1.ListDatabaseRolesRequest\x1a;.google.spanner.admin.database.v1.ListDatabaseRolesResponse\"N\xda\x41\x06parent\x82\xd3\xe4\x93\x02?\x12=/v1/{parent=projects/*/instances/*/databases/*}/databaseRoles\x12\x8e\x02\n\x14\x43reateBackupSchedule\x12=.google.spanner.admin.database.v1.CreateBackupScheduleRequest\x1a\x30.google.spanner.admin.database.v1.BackupSchedule\"\x84\x01\xda\x41)parent,backup_schedule,backup_schedule_id\x82\xd3\xe4\x93\x02R\"?/v1/{parent=projects/*/instances/*/databases/*}/backupSchedules:\x0f\x62\x61\x63kup_schedule\x12\xd1\x01\n\x11GetBackupSchedule\x12:.google.spanner.admin.database.v1.GetBackupScheduleRequest\x1a\x30.google.spanner.admin.database.v1.BackupSchedule\"N\xda\x41\x04name\x82\xd3\xe4\x93\x02\x41\x12?/v1/{name=projects/*/instances/*/databases/*/backupSchedules/*}\x12\x90\x02\n\x14UpdateBackupSchedule\x12=.google.spanner.admin.database.v1.UpdateBackupScheduleRequest\x1a\x30.google.spanner.admin.database.v1.BackupSchedule\"\x86\x01\xda\x41\x1b\x62\x61\x63kup_schedule,update_mask\x82\xd3\xe4\x93\x02\x62\x32O/v1/{backup_schedule.name=projects/*/instances/*/databases/*/backupSchedules/*}:\x0f\x62\x61\x63kup_schedule\x12\xbd\x01\n\x14\x44\x65leteBackupSchedule\x12=.google.spanner.admin.database.v1.DeleteBackupScheduleRequest\x1a\x16.google.protobuf.Empty\"N\xda\x41\x04name\x82\xd3\xe4\x93\x02\x41*?/v1/{name=projects/*/instances/*/databases/*/backupSchedules/*}\x12\xe4\x01\n\x13ListBackupSchedules\x12<.google.spanner.admin.database.v1.ListBackupSchedulesRequest\x1a=.google.spanner.admin.database.v1.ListBackupSchedulesResponse\"P\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x41\x12?/v1/{parent=projects/*/instances/*/databases/*}/backupSchedules\x1ax\xca\x41\x16spanner.googleapis.com\xd2\x41\\https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/spanner.adminB\xd8\x02\n$com.google.spanner.admin.database.v1B\x19SpannerDatabaseAdminProtoP\x01ZFcloud.google.com/go/spanner/admin/database/apiv1/databasepb;databasepb\xaa\x02&Google.Cloud.Spanner.Admin.Database.V1\xca\x02&Google\\Cloud\\Spanner\\Admin\\Database\\V1\xea\x02+Google::Cloud::Spanner::Admin::Database::V1\xea\x41J\n\x1fspanner.googleapis.com/Instance\x12\'projects/{project}/instances/{instance}b\x06proto3"
|
23
|
+
descriptor_data = "\n=google/spanner/admin/database/v1/spanner_database_admin.proto\x12 google.spanner.admin.database.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1egoogle/iam/v1/iam_policy.proto\x1a\x1agoogle/iam/v1/policy.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a-google/spanner/admin/database/v1/backup.proto\x1a\x36google/spanner/admin/database/v1/backup_schedule.proto\x1a-google/spanner/admin/database/v1/common.proto\"\xab\x01\n\x0bRestoreInfo\x12H\n\x0bsource_type\x18\x01 \x01(\x0e\x32\x33.google.spanner.admin.database.v1.RestoreSourceType\x12\x43\n\x0b\x62\x61\x63kup_info\x18\x02 \x01(\x0b\x32,.google.spanner.admin.database.v1.BackupInfoH\x00\x42\r\n\x0bsource_info\"\xca\x06\n\x08\x44\x61tabase\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x05state\x18\x02 \x01(\x0e\x32\x30.google.spanner.admin.database.v1.Database.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12H\n\x0crestore_info\x18\x04 \x01(\x0b\x32-.google.spanner.admin.database.v1.RestoreInfoB\x03\xe0\x41\x03\x12R\n\x11\x65ncryption_config\x18\x05 \x01(\x0b\x32\x32.google.spanner.admin.database.v1.EncryptionConfigB\x03\xe0\x41\x03\x12N\n\x0f\x65ncryption_info\x18\x08 \x03(\x0b\x32\x30.google.spanner.admin.database.v1.EncryptionInfoB\x03\xe0\x41\x03\x12%\n\x18version_retention_period\x18\x06 \x01(\tB\x03\xe0\x41\x03\x12>\n\x15\x65\x61rliest_version_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x1b\n\x0e\x64\x65\x66\x61ult_leader\x18\t \x01(\tB\x03\xe0\x41\x03\x12P\n\x10\x64\x61tabase_dialect\x18\n \x01(\x0e\x32\x31.google.spanner.admin.database.v1.DatabaseDialectB\x03\xe0\x41\x03\x12\x1e\n\x16\x65nable_drop_protection\x18\x0b \x01(\x08\x12\x18\n\x0breconciling\x18\x0c \x01(\x08\x42\x03\xe0\x41\x03\"M\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\t\n\x05READY\x10\x02\x12\x14\n\x10READY_OPTIMIZING\x10\x03:b\xea\x41_\n\x1fspanner.googleapis.com/Database\x12<projects/{project}/instances/{instance}/databases/{database}\"v\n\x14ListDatabasesRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x11\n\tpage_size\x18\x03 \x01(\x05\x12\x12\n\npage_token\x18\x04 \x01(\t\"o\n\x15ListDatabasesResponse\x12=\n\tdatabases\x18\x01 \x03(\x0b\x32*.google.spanner.admin.database.v1.Database\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xd4\x02\n\x15\x43reateDatabaseRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x1d\n\x10\x63reate_statement\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x1d\n\x10\x65xtra_statements\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12R\n\x11\x65ncryption_config\x18\x04 \x01(\x0b\x32\x32.google.spanner.admin.database.v1.EncryptionConfigB\x03\xe0\x41\x01\x12P\n\x10\x64\x61tabase_dialect\x18\x05 \x01(\x0e\x32\x31.google.spanner.admin.database.v1.DatabaseDialectB\x03\xe0\x41\x01\x12\x1e\n\x11proto_descriptors\x18\x06 \x01(\x0c\x42\x03\xe0\x41\x01\"P\n\x16\x43reateDatabaseMetadata\x12\x36\n\x08\x64\x61tabase\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database\"K\n\x12GetDatabaseRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\"\x90\x01\n\x15UpdateDatabaseRequest\x12\x41\n\x08\x64\x61tabase\x18\x01 \x01(\x0b\x32*.google.spanner.admin.database.v1.DatabaseB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"\xda\x01\n\x16UpdateDatabaseMetadata\x12H\n\x07request\x18\x01 \x01(\x0b\x32\x37.google.spanner.admin.database.v1.UpdateDatabaseRequest\x12\x45\n\x08progress\x18\x02 \x01(\x0b\x32\x33.google.spanner.admin.database.v1.OperationProgress\x12/\n\x0b\x63\x61ncel_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xa4\x01\n\x18UpdateDatabaseDdlRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x17\n\nstatements\x18\x02 \x03(\tB\x03\xe0\x41\x02\x12\x14\n\x0coperation_id\x18\x03 \x01(\t\x12\x1e\n\x11proto_descriptors\x18\x04 \x01(\x0c\x42\x03\xe0\x41\x01\"S\n\x16\x44\x64lStatementActionInfo\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\t\x12\x13\n\x0b\x65ntity_type\x18\x02 \x01(\t\x12\x14\n\x0c\x65ntity_names\x18\x03 \x03(\t\"\xc8\x02\n\x19UpdateDatabaseDdlMetadata\x12\x36\n\x08\x64\x61tabase\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x12\n\nstatements\x18\x02 \x03(\t\x12\x35\n\x11\x63ommit_timestamps\x18\x03 \x03(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x16\n\tthrottled\x18\x04 \x01(\x08\x42\x03\xe0\x41\x03\x12\x45\n\x08progress\x18\x05 \x03(\x0b\x32\x33.google.spanner.admin.database.v1.OperationProgress\x12I\n\x07\x61\x63tions\x18\x06 \x03(\x0b\x32\x38.google.spanner.admin.database.v1.DdlStatementActionInfo\"P\n\x13\x44ropDatabaseRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\"R\n\x15GetDatabaseDdlRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\"G\n\x16GetDatabaseDdlResponse\x12\x12\n\nstatements\x18\x01 \x03(\t\x12\x19\n\x11proto_descriptors\x18\x02 \x01(\x0c\"\x8f\x01\n\x1dListDatabaseOperationsRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x0e\n\x06\x66ilter\x18\x02 \x01(\t\x12\x11\n\tpage_size\x18\x03 \x01(\x05\x12\x12\n\npage_token\x18\x04 \x01(\t\"l\n\x1eListDatabaseOperationsResponse\x12\x31\n\noperations\x18\x01 \x03(\x0b\x32\x1d.google.longrunning.Operation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x8e\x02\n\x16RestoreDatabaseRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x18\n\x0b\x64\x61tabase_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x34\n\x06\x62\x61\x63kup\x18\x03 \x01(\tB\"\xfa\x41\x1f\n\x1dspanner.googleapis.com/BackupH\x00\x12\x61\n\x11\x65ncryption_config\x18\x04 \x01(\x0b\x32\x41.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfigB\x03\xe0\x41\x01\x42\x08\n\x06source\"\xb5\x03\n\x1fRestoreDatabaseEncryptionConfig\x12n\n\x0f\x65ncryption_type\x18\x01 \x01(\x0e\x32P.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.EncryptionTypeB\x03\xe0\x41\x02\x12?\n\x0ckms_key_name\x18\x02 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!cloudkms.googleapis.com/CryptoKey\x12@\n\rkms_key_names\x18\x03 \x03(\tB)\xe0\x41\x01\xfa\x41#\n!cloudkms.googleapis.com/CryptoKey\"\x9e\x01\n\x0e\x45ncryptionType\x12\x1f\n\x1b\x45NCRYPTION_TYPE_UNSPECIFIED\x10\x00\x12+\n\'USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION\x10\x01\x12\x1d\n\x19GOOGLE_DEFAULT_ENCRYPTION\x10\x02\x12\x1f\n\x1b\x43USTOMER_MANAGED_ENCRYPTION\x10\x03\"\x8d\x03\n\x17RestoreDatabaseMetadata\x12\x32\n\x04name\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12H\n\x0bsource_type\x18\x02 \x01(\x0e\x32\x33.google.spanner.admin.database.v1.RestoreSourceType\x12\x43\n\x0b\x62\x61\x63kup_info\x18\x03 \x01(\x0b\x32,.google.spanner.admin.database.v1.BackupInfoH\x00\x12\x45\n\x08progress\x18\x04 \x01(\x0b\x32\x33.google.spanner.admin.database.v1.OperationProgress\x12/\n\x0b\x63\x61ncel_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12(\n optimize_database_operation_name\x18\x06 \x01(\tB\r\n\x0bsource_info\"\x9d\x01\n OptimizeRestoredDatabaseMetadata\x12\x32\n\x04name\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x45\n\x08progress\x18\x02 \x01(\x0b\x32\x33.google.spanner.admin.database.v1.OperationProgress\"\x9e\x01\n\x0c\x44\x61tabaseRole\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02:{\xea\x41x\n#spanner.googleapis.com/DatabaseRole\x12Qprojects/{project}/instances/{instance}/databases/{database}/databaseRoles/{role}\"z\n\x18ListDatabaseRolesRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"|\n\x19ListDatabaseRolesResponse\x12\x46\n\x0e\x64\x61tabase_roles\x18\x01 \x03(\x0b\x32..google.spanner.admin.database.v1.DatabaseRole\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xb4\x01\n\x15\x41\x64\x64SplitPointsRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12H\n\x0csplit_points\x18\x02 \x03(\x0b\x32-.google.spanner.admin.database.v1.SplitPointsB\x03\xe0\x41\x02\x12\x16\n\tinitiator\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x18\n\x16\x41\x64\x64SplitPointsResponse\"\xe2\x01\n\x0bSplitPoints\x12\r\n\x05table\x18\x01 \x01(\t\x12\r\n\x05index\x18\x02 \x01(\t\x12\x44\n\x04keys\x18\x03 \x03(\x0b\x32\x31.google.spanner.admin.database.v1.SplitPoints.KeyB\x03\xe0\x41\x02\x12\x34\n\x0b\x65xpire_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x1a\x39\n\x03Key\x12\x32\n\tkey_parts\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.ListValueB\x03\xe0\x41\x02*5\n\x11RestoreSourceType\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\n\n\x06\x42\x41\x43KUP\x10\x01\x32\x83\x33\n\rDatabaseAdmin\x12\xc0\x01\n\rListDatabases\x12\x36.google.spanner.admin.database.v1.ListDatabasesRequest\x1a\x37.google.spanner.admin.database.v1.ListDatabasesResponse\">\xda\x41\x06parent\x82\xd3\xe4\x93\x02/\x12-/v1/{parent=projects/*/instances/*}/databases\x12\xa4\x02\n\x0e\x43reateDatabase\x12\x37.google.spanner.admin.database.v1.CreateDatabaseRequest\x1a\x1d.google.longrunning.Operation\"\xb9\x01\xca\x41\x64\n)google.spanner.admin.database.v1.Database\x12\x37google.spanner.admin.database.v1.CreateDatabaseMetadata\xda\x41\x17parent,create_statement\x82\xd3\xe4\x93\x02\x32\"-/v1/{parent=projects/*/instances/*}/databases:\x01*\x12\xad\x01\n\x0bGetDatabase\x12\x34.google.spanner.admin.database.v1.GetDatabaseRequest\x1a*.google.spanner.admin.database.v1.Database\"<\xda\x41\x04name\x82\xd3\xe4\x93\x02/\x12-/v1/{name=projects/*/instances/*/databases/*}\x12\xef\x01\n\x0eUpdateDatabase\x12\x37.google.spanner.admin.database.v1.UpdateDatabaseRequest\x1a\x1d.google.longrunning.Operation\"\x84\x01\xca\x41\"\n\x08\x44\x61tabase\x12\x16UpdateDatabaseMetadata\xda\x41\x14\x64\x61tabase,update_mask\x82\xd3\xe4\x93\x02\x42\x32\x36/v1/{database.name=projects/*/instances/*/databases/*}:\x08\x64\x61tabase\x12\x9d\x02\n\x11UpdateDatabaseDdl\x12:.google.spanner.admin.database.v1.UpdateDatabaseDdlRequest\x1a\x1d.google.longrunning.Operation\"\xac\x01\xca\x41S\n\x15google.protobuf.Empty\x12:google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata\xda\x41\x13\x64\x61tabase,statements\x82\xd3\xe4\x93\x02:25/v1/{database=projects/*/instances/*/databases/*}/ddl:\x01*\x12\xa3\x01\n\x0c\x44ropDatabase\x12\x35.google.spanner.admin.database.v1.DropDatabaseRequest\x1a\x16.google.protobuf.Empty\"D\xda\x41\x08\x64\x61tabase\x82\xd3\xe4\x93\x02\x33*1/v1/{database=projects/*/instances/*/databases/*}\x12\xcd\x01\n\x0eGetDatabaseDdl\x12\x37.google.spanner.admin.database.v1.GetDatabaseDdlRequest\x1a\x38.google.spanner.admin.database.v1.GetDatabaseDdlResponse\"H\xda\x41\x08\x64\x61tabase\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{database=projects/*/instances/*/databases/*}/ddl\x12\xc2\x02\n\x0cSetIamPolicy\x12\".google.iam.v1.SetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\"\xf6\x01\xda\x41\x0fresource,policy\x82\xd3\xe4\x93\x02\xdd\x01\">/v1/{resource=projects/*/instances/*/databases/*}:setIamPolicy:\x01*ZA\"</v1/{resource=projects/*/instances/*/backups/*}:setIamPolicy:\x01*ZU\"P/v1/{resource=projects/*/instances/*/databases/*/backupSchedules/*}:setIamPolicy:\x01*\x12\xbb\x02\n\x0cGetIamPolicy\x12\".google.iam.v1.GetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\"\xef\x01\xda\x41\x08resource\x82\xd3\xe4\x93\x02\xdd\x01\">/v1/{resource=projects/*/instances/*/databases/*}:getIamPolicy:\x01*ZA\"</v1/{resource=projects/*/instances/*/backups/*}:getIamPolicy:\x01*ZU\"P/v1/{resource=projects/*/instances/*/databases/*/backupSchedules/*}:getIamPolicy:\x01*\x12\xd4\x03\n\x12TestIamPermissions\x12(.google.iam.v1.TestIamPermissionsRequest\x1a).google.iam.v1.TestIamPermissionsResponse\"\xe8\x02\xda\x41\x14resource,permissions\x82\xd3\xe4\x93\x02\xca\x02\"D/v1/{resource=projects/*/instances/*/databases/*}:testIamPermissions:\x01*ZG\"B/v1/{resource=projects/*/instances/*/backups/*}:testIamPermissions:\x01*Z[\"V/v1/{resource=projects/*/instances/*/databases/*/backupSchedules/*}:testIamPermissions:\x01*ZY\"T/v1/{resource=projects/*/instances/*/databases/*/databaseRoles/*}:testIamPermissions:\x01*\x12\x9f\x02\n\x0c\x43reateBackup\x12\x35.google.spanner.admin.database.v1.CreateBackupRequest\x1a\x1d.google.longrunning.Operation\"\xb8\x01\xca\x41`\n\'google.spanner.admin.database.v1.Backup\x12\x35google.spanner.admin.database.v1.CreateBackupMetadata\xda\x41\x17parent,backup,backup_id\x82\xd3\xe4\x93\x02\x35\"+/v1/{parent=projects/*/instances/*}/backups:\x06\x62\x61\x63kup\x12\xac\x02\n\nCopyBackup\x12\x33.google.spanner.admin.database.v1.CopyBackupRequest\x1a\x1d.google.longrunning.Operation\"\xc9\x01\xca\x41^\n\'google.spanner.admin.database.v1.Backup\x12\x33google.spanner.admin.database.v1.CopyBackupMetadata\xda\x41*parent,backup_id,source_backup,expire_time\x82\xd3\xe4\x93\x02\x35\"0/v1/{parent=projects/*/instances/*}/backups:copy:\x01*\x12\xa5\x01\n\tGetBackup\x12\x32.google.spanner.admin.database.v1.GetBackupRequest\x1a(.google.spanner.admin.database.v1.Backup\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/instances/*/backups/*}\x12\xc8\x01\n\x0cUpdateBackup\x12\x35.google.spanner.admin.database.v1.UpdateBackupRequest\x1a(.google.spanner.admin.database.v1.Backup\"W\xda\x41\x12\x62\x61\x63kup,update_mask\x82\xd3\xe4\x93\x02<22/v1/{backup.name=projects/*/instances/*/backups/*}:\x06\x62\x61\x63kup\x12\x99\x01\n\x0c\x44\x65leteBackup\x12\x35.google.spanner.admin.database.v1.DeleteBackupRequest\x1a\x16.google.protobuf.Empty\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-*+/v1/{name=projects/*/instances/*/backups/*}\x12\xb8\x01\n\x0bListBackups\x12\x34.google.spanner.admin.database.v1.ListBackupsRequest\x1a\x35.google.spanner.admin.database.v1.ListBackupsResponse\"<\xda\x41\x06parent\x82\xd3\xe4\x93\x02-\x12+/v1/{parent=projects/*/instances/*}/backups\x12\xb1\x02\n\x0fRestoreDatabase\x12\x38.google.spanner.admin.database.v1.RestoreDatabaseRequest\x1a\x1d.google.longrunning.Operation\"\xc4\x01\xca\x41\x65\n)google.spanner.admin.database.v1.Database\x12\x38google.spanner.admin.database.v1.RestoreDatabaseMetadata\xda\x41\x19parent,database_id,backup\x82\xd3\xe4\x93\x02:\"5/v1/{parent=projects/*/instances/*}/databases:restore:\x01*\x12\xe4\x01\n\x16ListDatabaseOperations\x12?.google.spanner.admin.database.v1.ListDatabaseOperationsRequest\x1a@.google.spanner.admin.database.v1.ListDatabaseOperationsResponse\"G\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{parent=projects/*/instances/*}/databaseOperations\x12\xdc\x01\n\x14ListBackupOperations\x12=.google.spanner.admin.database.v1.ListBackupOperationsRequest\x1a>.google.spanner.admin.database.v1.ListBackupOperationsResponse\"E\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{parent=projects/*/instances/*}/backupOperations\x12\xdc\x01\n\x11ListDatabaseRoles\x12:.google.spanner.admin.database.v1.ListDatabaseRolesRequest\x1a;.google.spanner.admin.database.v1.ListDatabaseRolesResponse\"N\xda\x41\x06parent\x82\xd3\xe4\x93\x02?\x12=/v1/{parent=projects/*/instances/*/databases/*}/databaseRoles\x12\xe8\x01\n\x0e\x41\x64\x64SplitPoints\x12\x37.google.spanner.admin.database.v1.AddSplitPointsRequest\x1a\x38.google.spanner.admin.database.v1.AddSplitPointsResponse\"c\xda\x41\x15\x64\x61tabase,split_points\x82\xd3\xe4\x93\x02\x45\"@/v1/{database=projects/*/instances/*/databases/*}:addSplitPoints:\x01*\x12\x8e\x02\n\x14\x43reateBackupSchedule\x12=.google.spanner.admin.database.v1.CreateBackupScheduleRequest\x1a\x30.google.spanner.admin.database.v1.BackupSchedule\"\x84\x01\xda\x41)parent,backup_schedule,backup_schedule_id\x82\xd3\xe4\x93\x02R\"?/v1/{parent=projects/*/instances/*/databases/*}/backupSchedules:\x0f\x62\x61\x63kup_schedule\x12\xd1\x01\n\x11GetBackupSchedule\x12:.google.spanner.admin.database.v1.GetBackupScheduleRequest\x1a\x30.google.spanner.admin.database.v1.BackupSchedule\"N\xda\x41\x04name\x82\xd3\xe4\x93\x02\x41\x12?/v1/{name=projects/*/instances/*/databases/*/backupSchedules/*}\x12\x90\x02\n\x14UpdateBackupSchedule\x12=.google.spanner.admin.database.v1.UpdateBackupScheduleRequest\x1a\x30.google.spanner.admin.database.v1.BackupSchedule\"\x86\x01\xda\x41\x1b\x62\x61\x63kup_schedule,update_mask\x82\xd3\xe4\x93\x02\x62\x32O/v1/{backup_schedule.name=projects/*/instances/*/databases/*/backupSchedules/*}:\x0f\x62\x61\x63kup_schedule\x12\xbd\x01\n\x14\x44\x65leteBackupSchedule\x12=.google.spanner.admin.database.v1.DeleteBackupScheduleRequest\x1a\x16.google.protobuf.Empty\"N\xda\x41\x04name\x82\xd3\xe4\x93\x02\x41*?/v1/{name=projects/*/instances/*/databases/*/backupSchedules/*}\x12\xe4\x01\n\x13ListBackupSchedules\x12<.google.spanner.admin.database.v1.ListBackupSchedulesRequest\x1a=.google.spanner.admin.database.v1.ListBackupSchedulesResponse\"P\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x41\x12?/v1/{parent=projects/*/instances/*/databases/*}/backupSchedules\x1ax\xca\x41\x16spanner.googleapis.com\xd2\x41\\https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/spanner.adminB\xd8\x02\n$com.google.spanner.admin.database.v1B\x19SpannerDatabaseAdminProtoP\x01ZFcloud.google.com/go/spanner/admin/database/apiv1/databasepb;databasepb\xaa\x02&Google.Cloud.Spanner.Admin.Database.V1\xca\x02&Google\\Cloud\\Spanner\\Admin\\Database\\V1\xea\x02+Google::Cloud::Spanner::Admin::Database::V1\xea\x41J\n\x1fspanner.googleapis.com/Instance\x12\'projects/{project}/instances/{instance}b\x06proto3"
|
23
24
|
|
24
25
|
pool = Google::Protobuf::DescriptorPool.generated_pool
|
25
26
|
|
@@ -39,6 +40,7 @@ rescue TypeError
|
|
39
40
|
["google.spanner.admin.database.v1.EncryptionConfig", "google/spanner/admin/database/v1/common.proto"],
|
40
41
|
["google.protobuf.FieldMask", "google/protobuf/field_mask.proto"],
|
41
42
|
["google.longrunning.Operation", "google/longrunning/operations.proto"],
|
43
|
+
["google.protobuf.ListValue", "google/protobuf/struct.proto"],
|
42
44
|
]
|
43
45
|
imports.each do |type_name, expected_filename|
|
44
46
|
import_file = pool.lookup(type_name).file_descriptor
|
@@ -82,6 +84,10 @@ module Google
|
|
82
84
|
DatabaseRole = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.admin.database.v1.DatabaseRole").msgclass
|
83
85
|
ListDatabaseRolesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.admin.database.v1.ListDatabaseRolesRequest").msgclass
|
84
86
|
ListDatabaseRolesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.admin.database.v1.ListDatabaseRolesResponse").msgclass
|
87
|
+
AddSplitPointsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.admin.database.v1.AddSplitPointsRequest").msgclass
|
88
|
+
AddSplitPointsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.admin.database.v1.AddSplitPointsResponse").msgclass
|
89
|
+
SplitPoints = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.admin.database.v1.SplitPoints").msgclass
|
90
|
+
SplitPoints::Key = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.admin.database.v1.SplitPoints.Key").msgclass
|
85
91
|
RestoreSourceType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.spanner.admin.database.v1.RestoreSourceType").enummodule
|
86
92
|
end
|
87
93
|
end
|
@@ -218,6 +218,8 @@ module Google
|
|
218
218
|
rpc :ListBackupOperations, ::Google::Cloud::Spanner::Admin::Database::V1::ListBackupOperationsRequest, ::Google::Cloud::Spanner::Admin::Database::V1::ListBackupOperationsResponse
|
219
219
|
# Lists Cloud Spanner database roles.
|
220
220
|
rpc :ListDatabaseRoles, ::Google::Cloud::Spanner::Admin::Database::V1::ListDatabaseRolesRequest, ::Google::Cloud::Spanner::Admin::Database::V1::ListDatabaseRolesResponse
|
221
|
+
# Adds split points to specified tables, indexes of a database.
|
222
|
+
rpc :AddSplitPoints, ::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsRequest, ::Google::Cloud::Spanner::Admin::Database::V1::AddSplitPointsResponse
|
221
223
|
# Creates a new backup schedule.
|
222
224
|
rpc :CreateBackupSchedule, ::Google::Cloud::Spanner::Admin::Database::V1::CreateBackupScheduleRequest, ::Google::Cloud::Spanner::Admin::Database::V1::BackupSchedule
|
223
225
|
# Gets backup schedule for the input schedule name.
|
@@ -409,6 +409,14 @@ module Google
|
|
409
409
|
# @return [::Array<::String>]
|
410
410
|
# An allowlist of the fully qualified names of RPCs that should be included
|
411
411
|
# on public client surfaces.
|
412
|
+
# @!attribute [rw] generate_omitted_as_internal
|
413
|
+
# @return [::Boolean]
|
414
|
+
# Setting this to true indicates to the client generators that methods
|
415
|
+
# that would be excluded from the generation should instead be generated
|
416
|
+
# in a way that indicates these methods should not be consumed by
|
417
|
+
# end users. How this is expressed is up to individual language
|
418
|
+
# implementations to decide. Some examples may be: added annotations,
|
419
|
+
# obfuscated identifiers, or other language idiomatic patterns.
|
412
420
|
class SelectiveGapicGeneration
|
413
421
|
include ::Google::Protobuf::MessageExts
|
414
422
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -0,0 +1,108 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2025 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Protobuf
|
22
|
+
# `Struct` represents a structured data value, consisting of fields
|
23
|
+
# which map to dynamically typed values. In some languages, `Struct`
|
24
|
+
# might be supported by a native representation. For example, in
|
25
|
+
# scripting languages like JS a struct is represented as an
|
26
|
+
# object. The details of that representation are described together
|
27
|
+
# with the proto support for the language.
|
28
|
+
#
|
29
|
+
# The JSON representation for `Struct` is JSON object.
|
30
|
+
# @!attribute [rw] fields
|
31
|
+
# @return [::Google::Protobuf::Map{::String => ::Google::Protobuf::Value}]
|
32
|
+
# Unordered map of dynamically typed values.
|
33
|
+
class Struct
|
34
|
+
include ::Google::Protobuf::MessageExts
|
35
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
36
|
+
|
37
|
+
# @!attribute [rw] key
|
38
|
+
# @return [::String]
|
39
|
+
# @!attribute [rw] value
|
40
|
+
# @return [::Google::Protobuf::Value]
|
41
|
+
class FieldsEntry
|
42
|
+
include ::Google::Protobuf::MessageExts
|
43
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
# `Value` represents a dynamically typed value which can be either
|
48
|
+
# null, a number, a string, a boolean, a recursive struct value, or a
|
49
|
+
# list of values. A producer of value is expected to set one of these
|
50
|
+
# variants. Absence of any variant indicates an error.
|
51
|
+
#
|
52
|
+
# The JSON representation for `Value` is JSON value.
|
53
|
+
# @!attribute [rw] null_value
|
54
|
+
# @return [::Google::Protobuf::NullValue]
|
55
|
+
# Represents a null value.
|
56
|
+
#
|
57
|
+
# Note: The following fields are mutually exclusive: `null_value`, `number_value`, `string_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
58
|
+
# @!attribute [rw] number_value
|
59
|
+
# @return [::Float]
|
60
|
+
# Represents a double value.
|
61
|
+
#
|
62
|
+
# Note: The following fields are mutually exclusive: `number_value`, `null_value`, `string_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
63
|
+
# @!attribute [rw] string_value
|
64
|
+
# @return [::String]
|
65
|
+
# Represents a string value.
|
66
|
+
#
|
67
|
+
# Note: The following fields are mutually exclusive: `string_value`, `null_value`, `number_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
68
|
+
# @!attribute [rw] bool_value
|
69
|
+
# @return [::Boolean]
|
70
|
+
# Represents a boolean value.
|
71
|
+
#
|
72
|
+
# Note: The following fields are mutually exclusive: `bool_value`, `null_value`, `number_value`, `string_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
73
|
+
# @!attribute [rw] struct_value
|
74
|
+
# @return [::Google::Protobuf::Struct]
|
75
|
+
# Represents a structured value.
|
76
|
+
#
|
77
|
+
# Note: The following fields are mutually exclusive: `struct_value`, `null_value`, `number_value`, `string_value`, `bool_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
78
|
+
# @!attribute [rw] list_value
|
79
|
+
# @return [::Google::Protobuf::ListValue]
|
80
|
+
# Represents a repeated `Value`.
|
81
|
+
#
|
82
|
+
# Note: The following fields are mutually exclusive: `list_value`, `null_value`, `number_value`, `string_value`, `bool_value`, `struct_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
83
|
+
class Value
|
84
|
+
include ::Google::Protobuf::MessageExts
|
85
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
86
|
+
end
|
87
|
+
|
88
|
+
# `ListValue` is a wrapper around a repeated field of values.
|
89
|
+
#
|
90
|
+
# The JSON representation for `ListValue` is JSON array.
|
91
|
+
# @!attribute [rw] values
|
92
|
+
# @return [::Array<::Google::Protobuf::Value>]
|
93
|
+
# Repeated field of dynamically typed values.
|
94
|
+
class ListValue
|
95
|
+
include ::Google::Protobuf::MessageExts
|
96
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
97
|
+
end
|
98
|
+
|
99
|
+
# `NullValue` is a singleton enumeration to represent the null value for the
|
100
|
+
# `Value` type union.
|
101
|
+
#
|
102
|
+
# The JSON representation for `NullValue` is JSON `null`.
|
103
|
+
module NullValue
|
104
|
+
# Null value.
|
105
|
+
NULL_VALUE = 0
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
@@ -726,6 +726,66 @@ module Google
|
|
726
726
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
727
727
|
end
|
728
728
|
|
729
|
+
# The request for
|
730
|
+
# {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#add_split_points AddSplitPoints}.
|
731
|
+
# @!attribute [rw] database
|
732
|
+
# @return [::String]
|
733
|
+
# Required. The database on whose tables/indexes split points are to be
|
734
|
+
# added. Values are of the form
|
735
|
+
# `projects/<project>/instances/<instance>/databases/<database>`.
|
736
|
+
# @!attribute [rw] split_points
|
737
|
+
# @return [::Array<::Google::Cloud::Spanner::Admin::Database::V1::SplitPoints>]
|
738
|
+
# Required. The split points to add.
|
739
|
+
# @!attribute [rw] initiator
|
740
|
+
# @return [::String]
|
741
|
+
# Optional. A user-supplied tag associated with the split points.
|
742
|
+
# For example, "intital_data_load", "special_event_1".
|
743
|
+
# Defaults to "CloudAddSplitPointsAPI" if not specified.
|
744
|
+
# The length of the tag must not exceed 50 characters,else will be trimmed.
|
745
|
+
# Only valid UTF8 characters are allowed.
|
746
|
+
class AddSplitPointsRequest
|
747
|
+
include ::Google::Protobuf::MessageExts
|
748
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
749
|
+
end
|
750
|
+
|
751
|
+
# The response for
|
752
|
+
# {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#add_split_points AddSplitPoints}.
|
753
|
+
class AddSplitPointsResponse
|
754
|
+
include ::Google::Protobuf::MessageExts
|
755
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
756
|
+
end
|
757
|
+
|
758
|
+
# The split points of a table/index.
|
759
|
+
# @!attribute [rw] table
|
760
|
+
# @return [::String]
|
761
|
+
# The table to split.
|
762
|
+
# @!attribute [rw] index
|
763
|
+
# @return [::String]
|
764
|
+
# The index to split.
|
765
|
+
# If specified, the `table` field must refer to the index's base table.
|
766
|
+
# @!attribute [rw] keys
|
767
|
+
# @return [::Array<::Google::Cloud::Spanner::Admin::Database::V1::SplitPoints::Key>]
|
768
|
+
# Required. The list of split keys, i.e., the split boundaries.
|
769
|
+
# @!attribute [rw] expire_time
|
770
|
+
# @return [::Google::Protobuf::Timestamp]
|
771
|
+
# Optional. The expiration timestamp of the split points.
|
772
|
+
# A timestamp in the past means immediate expiration.
|
773
|
+
# The maximum value can be 30 days in the future.
|
774
|
+
# Defaults to 10 days in the future if not specified.
|
775
|
+
class SplitPoints
|
776
|
+
include ::Google::Protobuf::MessageExts
|
777
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
778
|
+
|
779
|
+
# A split key.
|
780
|
+
# @!attribute [rw] key_parts
|
781
|
+
# @return [::Google::Protobuf::ListValue]
|
782
|
+
# Required. The column values making up the split key.
|
783
|
+
class Key
|
784
|
+
include ::Google::Protobuf::MessageExts
|
785
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
786
|
+
end
|
787
|
+
end
|
788
|
+
|
729
789
|
# Indicates the type of the restore source.
|
730
790
|
module RestoreSourceType
|
731
791
|
# No restore associated.
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-spanner-admin-database-v1
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Google LLC
|
8
8
|
bindir: bin
|
9
9
|
cert_chain: []
|
10
|
-
date: 2025-01-
|
10
|
+
date: 2025-01-31 00:00:00.000000000 Z
|
11
11
|
dependencies:
|
12
12
|
- !ruby/object:Gem::Dependency
|
13
13
|
name: gapic-common
|
@@ -101,6 +101,7 @@ files:
|
|
101
101
|
- proto_docs/google/protobuf/duration.rb
|
102
102
|
- proto_docs/google/protobuf/empty.rb
|
103
103
|
- proto_docs/google/protobuf/field_mask.rb
|
104
|
+
- proto_docs/google/protobuf/struct.rb
|
104
105
|
- proto_docs/google/protobuf/timestamp.rb
|
105
106
|
- proto_docs/google/rpc/status.rb
|
106
107
|
- proto_docs/google/spanner/admin/database/v1/backup.rb
|
@@ -126,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
126
127
|
- !ruby/object:Gem::Version
|
127
128
|
version: '0'
|
128
129
|
requirements: []
|
129
|
-
rubygems_version: 3.6.
|
130
|
+
rubygems_version: 3.6.3
|
130
131
|
specification_version: 4
|
131
132
|
summary: Cloud Spanner is a managed, mission-critical, globally consistent and scalable
|
132
133
|
relational database service.
|