google-cloud-bigquery-reservation-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 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
+ # This gem does not autoload during Bundler.require. To load this gem,
20
+ # issue explicit require statements for the packages desired, e.g.:
21
+ # require "google/cloud/bigquery/reservation/v1"
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 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
+ require "google/cloud/bigquery/reservation/v1/reservation_service"
20
+ require "google/cloud/bigquery/reservation/v1/version"
21
+
22
+ module Google
23
+ module Cloud
24
+ module Bigquery
25
+ module Reservation
26
+ ##
27
+ # To load this package, including all its services, and instantiate a client:
28
+ #
29
+ # require "google/cloud/bigquery/reservation/v1"
30
+ # client = ::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
31
+ #
32
+ module V1
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,205 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/bigquery/reservation/v1/reservation.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ require 'google/api/client_pb'
8
+ require 'google/api/field_behavior_pb'
9
+ require 'google/api/resource_pb'
10
+ require 'google/protobuf/empty_pb'
11
+ require 'google/protobuf/field_mask_pb'
12
+ require 'google/protobuf/timestamp_pb'
13
+ require 'google/rpc/status_pb'
14
+ Google::Protobuf::DescriptorPool.generated_pool.build do
15
+ add_file("google/cloud/bigquery/reservation/v1/reservation.proto", :syntax => :proto3) do
16
+ add_message "google.cloud.bigquery.reservation.v1.Reservation" do
17
+ optional :name, :string, 1
18
+ optional :slot_capacity, :int64, 2
19
+ optional :ignore_idle_slots, :bool, 4
20
+ end
21
+ add_message "google.cloud.bigquery.reservation.v1.CapacityCommitment" do
22
+ optional :name, :string, 1
23
+ optional :slot_count, :int64, 2
24
+ optional :plan, :enum, 3, "google.cloud.bigquery.reservation.v1.CapacityCommitment.CommitmentPlan"
25
+ optional :state, :enum, 4, "google.cloud.bigquery.reservation.v1.CapacityCommitment.State"
26
+ optional :commitment_end_time, :message, 5, "google.protobuf.Timestamp"
27
+ optional :failure_status, :message, 7, "google.rpc.Status"
28
+ optional :renewal_plan, :enum, 8, "google.cloud.bigquery.reservation.v1.CapacityCommitment.CommitmentPlan"
29
+ end
30
+ add_enum "google.cloud.bigquery.reservation.v1.CapacityCommitment.CommitmentPlan" do
31
+ value :COMMITMENT_PLAN_UNSPECIFIED, 0
32
+ value :FLEX, 3
33
+ value :TRIAL, 5
34
+ value :MONTHLY, 2
35
+ value :ANNUAL, 4
36
+ end
37
+ add_enum "google.cloud.bigquery.reservation.v1.CapacityCommitment.State" do
38
+ value :STATE_UNSPECIFIED, 0
39
+ value :PENDING, 1
40
+ value :ACTIVE, 2
41
+ value :FAILED, 3
42
+ end
43
+ add_message "google.cloud.bigquery.reservation.v1.CreateReservationRequest" do
44
+ optional :parent, :string, 1
45
+ optional :reservation_id, :string, 2
46
+ optional :reservation, :message, 3, "google.cloud.bigquery.reservation.v1.Reservation"
47
+ end
48
+ add_message "google.cloud.bigquery.reservation.v1.ListReservationsRequest" do
49
+ optional :parent, :string, 1
50
+ optional :page_size, :int32, 2
51
+ optional :page_token, :string, 3
52
+ end
53
+ add_message "google.cloud.bigquery.reservation.v1.ListReservationsResponse" do
54
+ repeated :reservations, :message, 1, "google.cloud.bigquery.reservation.v1.Reservation"
55
+ optional :next_page_token, :string, 2
56
+ end
57
+ add_message "google.cloud.bigquery.reservation.v1.GetReservationRequest" do
58
+ optional :name, :string, 1
59
+ end
60
+ add_message "google.cloud.bigquery.reservation.v1.DeleteReservationRequest" do
61
+ optional :name, :string, 1
62
+ end
63
+ add_message "google.cloud.bigquery.reservation.v1.UpdateReservationRequest" do
64
+ optional :reservation, :message, 1, "google.cloud.bigquery.reservation.v1.Reservation"
65
+ optional :update_mask, :message, 2, "google.protobuf.FieldMask"
66
+ end
67
+ add_message "google.cloud.bigquery.reservation.v1.CreateCapacityCommitmentRequest" do
68
+ optional :parent, :string, 1
69
+ optional :capacity_commitment, :message, 2, "google.cloud.bigquery.reservation.v1.CapacityCommitment"
70
+ optional :enforce_single_admin_project_per_org, :bool, 4
71
+ end
72
+ add_message "google.cloud.bigquery.reservation.v1.ListCapacityCommitmentsRequest" do
73
+ optional :parent, :string, 1
74
+ optional :page_size, :int32, 2
75
+ optional :page_token, :string, 3
76
+ end
77
+ add_message "google.cloud.bigquery.reservation.v1.ListCapacityCommitmentsResponse" do
78
+ repeated :capacity_commitments, :message, 1, "google.cloud.bigquery.reservation.v1.CapacityCommitment"
79
+ optional :next_page_token, :string, 2
80
+ end
81
+ add_message "google.cloud.bigquery.reservation.v1.GetCapacityCommitmentRequest" do
82
+ optional :name, :string, 1
83
+ end
84
+ add_message "google.cloud.bigquery.reservation.v1.DeleteCapacityCommitmentRequest" do
85
+ optional :name, :string, 1
86
+ end
87
+ add_message "google.cloud.bigquery.reservation.v1.UpdateCapacityCommitmentRequest" do
88
+ optional :capacity_commitment, :message, 1, "google.cloud.bigquery.reservation.v1.CapacityCommitment"
89
+ optional :update_mask, :message, 2, "google.protobuf.FieldMask"
90
+ end
91
+ add_message "google.cloud.bigquery.reservation.v1.SplitCapacityCommitmentRequest" do
92
+ optional :name, :string, 1
93
+ optional :slot_count, :int64, 2
94
+ end
95
+ add_message "google.cloud.bigquery.reservation.v1.SplitCapacityCommitmentResponse" do
96
+ optional :first, :message, 1, "google.cloud.bigquery.reservation.v1.CapacityCommitment"
97
+ optional :second, :message, 2, "google.cloud.bigquery.reservation.v1.CapacityCommitment"
98
+ end
99
+ add_message "google.cloud.bigquery.reservation.v1.MergeCapacityCommitmentsRequest" do
100
+ optional :parent, :string, 1
101
+ repeated :capacity_commitment_ids, :string, 2
102
+ end
103
+ add_message "google.cloud.bigquery.reservation.v1.Assignment" do
104
+ optional :name, :string, 1
105
+ optional :assignee, :string, 4
106
+ optional :job_type, :enum, 3, "google.cloud.bigquery.reservation.v1.Assignment.JobType"
107
+ optional :state, :enum, 6, "google.cloud.bigquery.reservation.v1.Assignment.State"
108
+ end
109
+ add_enum "google.cloud.bigquery.reservation.v1.Assignment.JobType" do
110
+ value :JOB_TYPE_UNSPECIFIED, 0
111
+ value :PIPELINE, 1
112
+ value :QUERY, 2
113
+ end
114
+ add_enum "google.cloud.bigquery.reservation.v1.Assignment.State" do
115
+ value :STATE_UNSPECIFIED, 0
116
+ value :PENDING, 1
117
+ value :ACTIVE, 2
118
+ end
119
+ add_message "google.cloud.bigquery.reservation.v1.CreateAssignmentRequest" do
120
+ optional :parent, :string, 1
121
+ optional :assignment, :message, 2, "google.cloud.bigquery.reservation.v1.Assignment"
122
+ end
123
+ add_message "google.cloud.bigquery.reservation.v1.ListAssignmentsRequest" do
124
+ optional :parent, :string, 1
125
+ optional :page_size, :int32, 2
126
+ optional :page_token, :string, 3
127
+ end
128
+ add_message "google.cloud.bigquery.reservation.v1.ListAssignmentsResponse" do
129
+ repeated :assignments, :message, 1, "google.cloud.bigquery.reservation.v1.Assignment"
130
+ optional :next_page_token, :string, 2
131
+ end
132
+ add_message "google.cloud.bigquery.reservation.v1.DeleteAssignmentRequest" do
133
+ optional :name, :string, 1
134
+ end
135
+ add_message "google.cloud.bigquery.reservation.v1.SearchAssignmentsRequest" do
136
+ optional :parent, :string, 1
137
+ optional :query, :string, 2
138
+ optional :page_size, :int32, 3
139
+ optional :page_token, :string, 4
140
+ end
141
+ add_message "google.cloud.bigquery.reservation.v1.SearchAssignmentsResponse" do
142
+ repeated :assignments, :message, 1, "google.cloud.bigquery.reservation.v1.Assignment"
143
+ optional :next_page_token, :string, 2
144
+ end
145
+ add_message "google.cloud.bigquery.reservation.v1.MoveAssignmentRequest" do
146
+ optional :name, :string, 1
147
+ optional :destination_id, :string, 3
148
+ end
149
+ add_message "google.cloud.bigquery.reservation.v1.BiReservation" do
150
+ optional :name, :string, 1
151
+ optional :update_time, :message, 3, "google.protobuf.Timestamp"
152
+ optional :size, :int64, 4
153
+ end
154
+ add_message "google.cloud.bigquery.reservation.v1.GetBiReservationRequest" do
155
+ optional :name, :string, 1
156
+ end
157
+ add_message "google.cloud.bigquery.reservation.v1.UpdateBiReservationRequest" do
158
+ optional :bi_reservation, :message, 1, "google.cloud.bigquery.reservation.v1.BiReservation"
159
+ optional :update_mask, :message, 2, "google.protobuf.FieldMask"
160
+ end
161
+ end
162
+ end
163
+
164
+ module Google
165
+ module Cloud
166
+ module Bigquery
167
+ module Reservation
168
+ module V1
169
+ Reservation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.Reservation").msgclass
170
+ CapacityCommitment = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.CapacityCommitment").msgclass
171
+ CapacityCommitment::CommitmentPlan = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.CapacityCommitment.CommitmentPlan").enummodule
172
+ CapacityCommitment::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.CapacityCommitment.State").enummodule
173
+ CreateReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.CreateReservationRequest").msgclass
174
+ ListReservationsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.ListReservationsRequest").msgclass
175
+ ListReservationsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.ListReservationsResponse").msgclass
176
+ GetReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.GetReservationRequest").msgclass
177
+ DeleteReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.DeleteReservationRequest").msgclass
178
+ UpdateReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.UpdateReservationRequest").msgclass
179
+ CreateCapacityCommitmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.CreateCapacityCommitmentRequest").msgclass
180
+ ListCapacityCommitmentsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.ListCapacityCommitmentsRequest").msgclass
181
+ ListCapacityCommitmentsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.ListCapacityCommitmentsResponse").msgclass
182
+ GetCapacityCommitmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.GetCapacityCommitmentRequest").msgclass
183
+ DeleteCapacityCommitmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.DeleteCapacityCommitmentRequest").msgclass
184
+ UpdateCapacityCommitmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.UpdateCapacityCommitmentRequest").msgclass
185
+ SplitCapacityCommitmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.SplitCapacityCommitmentRequest").msgclass
186
+ SplitCapacityCommitmentResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.SplitCapacityCommitmentResponse").msgclass
187
+ MergeCapacityCommitmentsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.MergeCapacityCommitmentsRequest").msgclass
188
+ Assignment = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.Assignment").msgclass
189
+ Assignment::JobType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.Assignment.JobType").enummodule
190
+ Assignment::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.Assignment.State").enummodule
191
+ CreateAssignmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.CreateAssignmentRequest").msgclass
192
+ ListAssignmentsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.ListAssignmentsRequest").msgclass
193
+ ListAssignmentsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.ListAssignmentsResponse").msgclass
194
+ DeleteAssignmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.DeleteAssignmentRequest").msgclass
195
+ SearchAssignmentsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.SearchAssignmentsRequest").msgclass
196
+ SearchAssignmentsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.SearchAssignmentsResponse").msgclass
197
+ MoveAssignmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.MoveAssignmentRequest").msgclass
198
+ BiReservation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.BiReservation").msgclass
199
+ GetBiReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.GetBiReservationRequest").msgclass
200
+ UpdateBiReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.reservation.v1.UpdateBiReservationRequest").msgclass
201
+ end
202
+ end
203
+ end
204
+ end
205
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 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
+ require "gapic/common"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/cloud/bigquery/reservation/v1/version"
24
+
25
+ require "google/cloud/bigquery/reservation/v1/reservation_service/credentials"
26
+ require "google/cloud/bigquery/reservation/v1/reservation_service/paths"
27
+ require "google/cloud/bigquery/reservation/v1/reservation_service/client"
28
+
29
+ module Google
30
+ module Cloud
31
+ module Bigquery
32
+ module Reservation
33
+ module V1
34
+ ##
35
+ # This API allows users to manage their flat-rate BigQuery reservations.
36
+ #
37
+ # A reservation provides computational resource guarantees, in the form of
38
+ # [slots](https://cloud.google.com/bigquery/docs/slots), to users. A slot is a
39
+ # unit of computational power in BigQuery, and serves as the basic unit of
40
+ # parallelism. In a scan of a multi-partitioned table, a single slot operates
41
+ # on a single partition of the table. A reservation resource exists as a child
42
+ # resource of the admin project and location, e.g.:
43
+ # `projects/myproject/locations/US/reservations/reservationName`.
44
+ #
45
+ # A capacity commitment is a way to purchase compute capacity for BigQuery jobs
46
+ # (in the form of slots) with some committed period of usage. A capacity
47
+ # commitment resource exists as a child resource of the admin project and
48
+ # location, e.g.:
49
+ # `projects/myproject/locations/US/capacityCommitments/id`.
50
+ #
51
+ # To load this service and instantiate a client:
52
+ #
53
+ # require "google/cloud/bigquery/reservation/v1/reservation_service"
54
+ # client = ::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
55
+ #
56
+ module ReservationService
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
63
+
64
+ helper_path = ::File.join __dir__, "reservation_service", "helpers.rb"
65
+ require "google/cloud/bigquery/reservation/v1/reservation_service/helpers" if ::File.file? helper_path
@@ -0,0 +1,1996 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 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
+ require "google/cloud/errors"
20
+ require "google/cloud/bigquery/reservation/v1/reservation_pb"
21
+
22
+ module Google
23
+ module Cloud
24
+ module Bigquery
25
+ module Reservation
26
+ module V1
27
+ module ReservationService
28
+ ##
29
+ # Client for the ReservationService service.
30
+ #
31
+ # This API allows users to manage their flat-rate BigQuery reservations.
32
+ #
33
+ # A reservation provides computational resource guarantees, in the form of
34
+ # [slots](https://cloud.google.com/bigquery/docs/slots), to users. A slot is a
35
+ # unit of computational power in BigQuery, and serves as the basic unit of
36
+ # parallelism. In a scan of a multi-partitioned table, a single slot operates
37
+ # on a single partition of the table. A reservation resource exists as a child
38
+ # resource of the admin project and location, e.g.:
39
+ # `projects/myproject/locations/US/reservations/reservationName`.
40
+ #
41
+ # A capacity commitment is a way to purchase compute capacity for BigQuery jobs
42
+ # (in the form of slots) with some committed period of usage. A capacity
43
+ # commitment resource exists as a child resource of the admin project and
44
+ # location, e.g.:
45
+ # `projects/myproject/locations/US/capacityCommitments/id`.
46
+ #
47
+ class Client
48
+ include Paths
49
+
50
+ # @private
51
+ attr_reader :reservation_service_stub
52
+
53
+ ##
54
+ # Configure the ReservationService Client class.
55
+ #
56
+ # See {::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client::Configuration}
57
+ # for a description of the configuration fields.
58
+ #
59
+ # ## Example
60
+ #
61
+ # To modify the configuration for all ReservationService clients:
62
+ #
63
+ # ::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.configure do |config|
64
+ # config.timeout = 10.0
65
+ # end
66
+ #
67
+ # @yield [config] Configure the Client client.
68
+ # @yieldparam config [Client::Configuration]
69
+ #
70
+ # @return [Client::Configuration]
71
+ #
72
+ def self.configure
73
+ @configure ||= begin
74
+ namespace = ["Google", "Cloud", "Bigquery", "Reservation", "V1"]
75
+ parent_config = while namespace.any?
76
+ parent_name = namespace.join "::"
77
+ parent_const = const_get parent_name
78
+ break parent_const.configure if parent_const&.respond_to? :configure
79
+ namespace.pop
80
+ end
81
+ default_config = Client::Configuration.new parent_config
82
+
83
+ default_config.rpcs.create_reservation.timeout = 60.0
84
+
85
+ default_config.rpcs.list_reservations.timeout = 60.0
86
+ default_config.rpcs.list_reservations.retry_policy = {
87
+ initial_delay: 0.1,
88
+ max_delay: 60.0,
89
+ multiplier: 1.3,
90
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
91
+ }
92
+
93
+ default_config.rpcs.get_reservation.timeout = 60.0
94
+ default_config.rpcs.get_reservation.retry_policy = {
95
+ initial_delay: 0.1,
96
+ max_delay: 60.0,
97
+ multiplier: 1.3,
98
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
99
+ }
100
+
101
+ default_config.rpcs.delete_reservation.timeout = 60.0
102
+ default_config.rpcs.delete_reservation.retry_policy = {
103
+ initial_delay: 0.1,
104
+ max_delay: 60.0,
105
+ multiplier: 1.3,
106
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
107
+ }
108
+
109
+ default_config.rpcs.update_reservation.timeout = 60.0
110
+
111
+ default_config.rpcs.create_capacity_commitment.timeout = 60.0
112
+
113
+ default_config.rpcs.list_capacity_commitments.timeout = 60.0
114
+ default_config.rpcs.list_capacity_commitments.retry_policy = {
115
+ initial_delay: 0.1,
116
+ max_delay: 60.0,
117
+ multiplier: 1.3,
118
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
119
+ }
120
+
121
+ default_config.rpcs.get_capacity_commitment.timeout = 60.0
122
+ default_config.rpcs.get_capacity_commitment.retry_policy = {
123
+ initial_delay: 0.1,
124
+ max_delay: 60.0,
125
+ multiplier: 1.3,
126
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
127
+ }
128
+
129
+ default_config.rpcs.delete_capacity_commitment.timeout = 60.0
130
+ default_config.rpcs.delete_capacity_commitment.retry_policy = {
131
+ initial_delay: 0.1,
132
+ max_delay: 60.0,
133
+ multiplier: 1.3,
134
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
135
+ }
136
+
137
+ default_config.rpcs.update_capacity_commitment.timeout = 60.0
138
+
139
+ default_config.rpcs.split_capacity_commitment.timeout = 60.0
140
+
141
+ default_config.rpcs.merge_capacity_commitments.timeout = 60.0
142
+
143
+ default_config.rpcs.create_assignment.timeout = 60.0
144
+
145
+ default_config.rpcs.list_assignments.timeout = 60.0
146
+ default_config.rpcs.list_assignments.retry_policy = {
147
+ initial_delay: 0.1,
148
+ max_delay: 60.0,
149
+ multiplier: 1.3,
150
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
151
+ }
152
+
153
+ default_config.rpcs.delete_assignment.timeout = 60.0
154
+ default_config.rpcs.delete_assignment.retry_policy = {
155
+ initial_delay: 0.1,
156
+ max_delay: 60.0,
157
+ multiplier: 1.3,
158
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
159
+ }
160
+
161
+ default_config.rpcs.search_assignments.timeout = 60.0
162
+ default_config.rpcs.search_assignments.retry_policy = {
163
+ initial_delay: 0.1,
164
+ max_delay: 60.0,
165
+ multiplier: 1.3,
166
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
167
+ }
168
+
169
+ default_config.rpcs.move_assignment.timeout = 60.0
170
+
171
+ default_config.rpcs.get_bi_reservation.timeout = 60.0
172
+ default_config.rpcs.get_bi_reservation.retry_policy = {
173
+ initial_delay: 0.1,
174
+ max_delay: 60.0,
175
+ multiplier: 1.3,
176
+ retry_codes: ["DEADLINE_EXCEEDED", "UNAVAILABLE"]
177
+ }
178
+
179
+ default_config.rpcs.update_bi_reservation.timeout = 60.0
180
+
181
+ default_config
182
+ end
183
+ yield @configure if block_given?
184
+ @configure
185
+ end
186
+
187
+ ##
188
+ # Configure the ReservationService Client instance.
189
+ #
190
+ # The configuration is set to the derived mode, meaning that values can be changed,
191
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
192
+ # should be made on {Client.configure}.
193
+ #
194
+ # See {::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client::Configuration}
195
+ # for a description of the configuration fields.
196
+ #
197
+ # @yield [config] Configure the Client client.
198
+ # @yieldparam config [Client::Configuration]
199
+ #
200
+ # @return [Client::Configuration]
201
+ #
202
+ def configure
203
+ yield @config if block_given?
204
+ @config
205
+ end
206
+
207
+ ##
208
+ # Create a new ReservationService client object.
209
+ #
210
+ # ## Examples
211
+ #
212
+ # To create a new ReservationService client with the default
213
+ # configuration:
214
+ #
215
+ # client = ::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
216
+ #
217
+ # To create a new ReservationService client with a custom
218
+ # configuration:
219
+ #
220
+ # client = ::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new do |config|
221
+ # config.timeout = 10.0
222
+ # end
223
+ #
224
+ # @yield [config] Configure the ReservationService client.
225
+ # @yieldparam config [Client::Configuration]
226
+ #
227
+ def initialize
228
+ # These require statements are intentionally placed here to initialize
229
+ # the gRPC module only when it's required.
230
+ # See https://github.com/googleapis/toolkit/issues/446
231
+ require "gapic/grpc"
232
+ require "google/cloud/bigquery/reservation/v1/reservation_services_pb"
233
+
234
+ # Create the configuration object
235
+ @config = Configuration.new Client.configure
236
+
237
+ # Yield the configuration if needed
238
+ yield @config if block_given?
239
+
240
+ # Create credentials
241
+ credentials = @config.credentials
242
+ credentials ||= Credentials.default scope: @config.scope
243
+ if credentials.is_a?(String) || credentials.is_a?(Hash)
244
+ credentials = Credentials.new credentials, scope: @config.scope
245
+ end
246
+ @quota_project_id = @config.quota_project
247
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
248
+
249
+ @reservation_service_stub = ::Gapic::ServiceStub.new(
250
+ ::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Stub,
251
+ credentials: credentials,
252
+ endpoint: @config.endpoint,
253
+ channel_args: @config.channel_args,
254
+ interceptors: @config.interceptors
255
+ )
256
+ end
257
+
258
+ # Service calls
259
+
260
+ ##
261
+ # Creates a new reservation resource.
262
+ #
263
+ # @overload create_reservation(request, options = nil)
264
+ # Pass arguments to `create_reservation` via a request object, either of type
265
+ # {::Google::Cloud::Bigquery::Reservation::V1::CreateReservationRequest} or an equivalent Hash.
266
+ #
267
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::CreateReservationRequest, ::Hash]
268
+ # A request object representing the call parameters. Required. To specify no
269
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
270
+ # @param options [::Gapic::CallOptions, ::Hash]
271
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
272
+ #
273
+ # @overload create_reservation(parent: nil, reservation_id: nil, reservation: nil)
274
+ # Pass arguments to `create_reservation` via keyword arguments. Note that at
275
+ # least one keyword argument is required. To specify no parameters, or to keep all
276
+ # the default parameter values, pass an empty Hash as a request object (see above).
277
+ #
278
+ # @param parent [::String]
279
+ # Required. Project, location. E.g.,
280
+ # `projects/myproject/locations/US`
281
+ # @param reservation_id [::String]
282
+ # The reservation ID. This field must only contain lower case alphanumeric
283
+ # characters or dash. Max length is 64 characters.
284
+ # @param reservation [::Google::Cloud::Bigquery::Reservation::V1::Reservation, ::Hash]
285
+ # Definition of the new reservation to create.
286
+ #
287
+ # @yield [response, operation] Access the result along with the RPC operation
288
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::Reservation]
289
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
290
+ #
291
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::Reservation]
292
+ #
293
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
294
+ #
295
+ def create_reservation request, options = nil
296
+ raise ::ArgumentError, "request must be provided" if request.nil?
297
+
298
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::CreateReservationRequest
299
+
300
+ # Converts hash and nil to an options object
301
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
302
+
303
+ # Customize the options with defaults
304
+ metadata = @config.rpcs.create_reservation.metadata.to_h
305
+
306
+ # Set x-goog-api-client and x-goog-user-project headers
307
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
308
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
309
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
310
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
311
+
312
+ header_params = {
313
+ "parent" => request.parent
314
+ }
315
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
316
+ metadata[:"x-goog-request-params"] ||= request_params_header
317
+
318
+ options.apply_defaults timeout: @config.rpcs.create_reservation.timeout,
319
+ metadata: metadata,
320
+ retry_policy: @config.rpcs.create_reservation.retry_policy
321
+ options.apply_defaults metadata: @config.metadata,
322
+ retry_policy: @config.retry_policy
323
+
324
+ @reservation_service_stub.call_rpc :create_reservation, request, options: options do |response, operation|
325
+ yield response, operation if block_given?
326
+ return response
327
+ end
328
+ rescue ::GRPC::BadStatus => e
329
+ raise ::Google::Cloud::Error.from_error(e)
330
+ end
331
+
332
+ ##
333
+ # Lists all the reservations for the project in the specified location.
334
+ #
335
+ # @overload list_reservations(request, options = nil)
336
+ # Pass arguments to `list_reservations` via a request object, either of type
337
+ # {::Google::Cloud::Bigquery::Reservation::V1::ListReservationsRequest} or an equivalent Hash.
338
+ #
339
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::ListReservationsRequest, ::Hash]
340
+ # A request object representing the call parameters. Required. To specify no
341
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
342
+ # @param options [::Gapic::CallOptions, ::Hash]
343
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
344
+ #
345
+ # @overload list_reservations(parent: nil, page_size: nil, page_token: nil)
346
+ # Pass arguments to `list_reservations` via keyword arguments. Note that at
347
+ # least one keyword argument is required. To specify no parameters, or to keep all
348
+ # the default parameter values, pass an empty Hash as a request object (see above).
349
+ #
350
+ # @param parent [::String]
351
+ # Required. The parent resource name containing project and location, e.g.:
352
+ # `projects/myproject/locations/US`
353
+ # @param page_size [::Integer]
354
+ # The maximum number of items to return per page.
355
+ # @param page_token [::String]
356
+ # The next_page_token value returned from a previous List request, if any.
357
+ #
358
+ # @yield [response, operation] Access the result along with the RPC operation
359
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::Reservation>]
360
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
361
+ #
362
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::Reservation>]
363
+ #
364
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
365
+ #
366
+ def list_reservations request, options = nil
367
+ raise ::ArgumentError, "request must be provided" if request.nil?
368
+
369
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::ListReservationsRequest
370
+
371
+ # Converts hash and nil to an options object
372
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
373
+
374
+ # Customize the options with defaults
375
+ metadata = @config.rpcs.list_reservations.metadata.to_h
376
+
377
+ # Set x-goog-api-client and x-goog-user-project headers
378
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
379
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
380
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
381
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
382
+
383
+ header_params = {
384
+ "parent" => request.parent
385
+ }
386
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
387
+ metadata[:"x-goog-request-params"] ||= request_params_header
388
+
389
+ options.apply_defaults timeout: @config.rpcs.list_reservations.timeout,
390
+ metadata: metadata,
391
+ retry_policy: @config.rpcs.list_reservations.retry_policy
392
+ options.apply_defaults metadata: @config.metadata,
393
+ retry_policy: @config.retry_policy
394
+
395
+ @reservation_service_stub.call_rpc :list_reservations, request, options: options do |response, operation|
396
+ response = ::Gapic::PagedEnumerable.new @reservation_service_stub, :list_reservations, request, response, operation, options
397
+ yield response, operation if block_given?
398
+ return response
399
+ end
400
+ rescue ::GRPC::BadStatus => e
401
+ raise ::Google::Cloud::Error.from_error(e)
402
+ end
403
+
404
+ ##
405
+ # Returns information about the reservation.
406
+ #
407
+ # @overload get_reservation(request, options = nil)
408
+ # Pass arguments to `get_reservation` via a request object, either of type
409
+ # {::Google::Cloud::Bigquery::Reservation::V1::GetReservationRequest} or an equivalent Hash.
410
+ #
411
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::GetReservationRequest, ::Hash]
412
+ # A request object representing the call parameters. Required. To specify no
413
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
414
+ # @param options [::Gapic::CallOptions, ::Hash]
415
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
416
+ #
417
+ # @overload get_reservation(name: nil)
418
+ # Pass arguments to `get_reservation` via keyword arguments. Note that at
419
+ # least one keyword argument is required. To specify no parameters, or to keep all
420
+ # the default parameter values, pass an empty Hash as a request object (see above).
421
+ #
422
+ # @param name [::String]
423
+ # Required. Resource name of the reservation to retrieve. E.g.,
424
+ # `projects/myproject/locations/US/reservations/team1-prod`
425
+ #
426
+ # @yield [response, operation] Access the result along with the RPC operation
427
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::Reservation]
428
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
429
+ #
430
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::Reservation]
431
+ #
432
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
433
+ #
434
+ def get_reservation request, options = nil
435
+ raise ::ArgumentError, "request must be provided" if request.nil?
436
+
437
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::GetReservationRequest
438
+
439
+ # Converts hash and nil to an options object
440
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
441
+
442
+ # Customize the options with defaults
443
+ metadata = @config.rpcs.get_reservation.metadata.to_h
444
+
445
+ # Set x-goog-api-client and x-goog-user-project headers
446
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
447
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
448
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
449
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
450
+
451
+ header_params = {
452
+ "name" => request.name
453
+ }
454
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
455
+ metadata[:"x-goog-request-params"] ||= request_params_header
456
+
457
+ options.apply_defaults timeout: @config.rpcs.get_reservation.timeout,
458
+ metadata: metadata,
459
+ retry_policy: @config.rpcs.get_reservation.retry_policy
460
+ options.apply_defaults metadata: @config.metadata,
461
+ retry_policy: @config.retry_policy
462
+
463
+ @reservation_service_stub.call_rpc :get_reservation, request, options: options do |response, operation|
464
+ yield response, operation if block_given?
465
+ return response
466
+ end
467
+ rescue ::GRPC::BadStatus => e
468
+ raise ::Google::Cloud::Error.from_error(e)
469
+ end
470
+
471
+ ##
472
+ # Deletes a reservation.
473
+ # Returns `google.rpc.Code.FAILED_PRECONDITION` when reservation has
474
+ # assignments.
475
+ #
476
+ # @overload delete_reservation(request, options = nil)
477
+ # Pass arguments to `delete_reservation` via a request object, either of type
478
+ # {::Google::Cloud::Bigquery::Reservation::V1::DeleteReservationRequest} or an equivalent Hash.
479
+ #
480
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::DeleteReservationRequest, ::Hash]
481
+ # A request object representing the call parameters. Required. To specify no
482
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
483
+ # @param options [::Gapic::CallOptions, ::Hash]
484
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
485
+ #
486
+ # @overload delete_reservation(name: nil)
487
+ # Pass arguments to `delete_reservation` via keyword arguments. Note that at
488
+ # least one keyword argument is required. To specify no parameters, or to keep all
489
+ # the default parameter values, pass an empty Hash as a request object (see above).
490
+ #
491
+ # @param name [::String]
492
+ # Required. Resource name of the reservation to retrieve. E.g.,
493
+ # `projects/myproject/locations/US/reservations/team1-prod`
494
+ #
495
+ # @yield [response, operation] Access the result along with the RPC operation
496
+ # @yieldparam response [::Google::Protobuf::Empty]
497
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
498
+ #
499
+ # @return [::Google::Protobuf::Empty]
500
+ #
501
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
502
+ #
503
+ def delete_reservation request, options = nil
504
+ raise ::ArgumentError, "request must be provided" if request.nil?
505
+
506
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::DeleteReservationRequest
507
+
508
+ # Converts hash and nil to an options object
509
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
510
+
511
+ # Customize the options with defaults
512
+ metadata = @config.rpcs.delete_reservation.metadata.to_h
513
+
514
+ # Set x-goog-api-client and x-goog-user-project headers
515
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
516
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
517
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
518
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
519
+
520
+ header_params = {
521
+ "name" => request.name
522
+ }
523
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
524
+ metadata[:"x-goog-request-params"] ||= request_params_header
525
+
526
+ options.apply_defaults timeout: @config.rpcs.delete_reservation.timeout,
527
+ metadata: metadata,
528
+ retry_policy: @config.rpcs.delete_reservation.retry_policy
529
+ options.apply_defaults metadata: @config.metadata,
530
+ retry_policy: @config.retry_policy
531
+
532
+ @reservation_service_stub.call_rpc :delete_reservation, request, options: options do |response, operation|
533
+ yield response, operation if block_given?
534
+ return response
535
+ end
536
+ rescue ::GRPC::BadStatus => e
537
+ raise ::Google::Cloud::Error.from_error(e)
538
+ end
539
+
540
+ ##
541
+ # Updates an existing reservation resource.
542
+ #
543
+ # @overload update_reservation(request, options = nil)
544
+ # Pass arguments to `update_reservation` via a request object, either of type
545
+ # {::Google::Cloud::Bigquery::Reservation::V1::UpdateReservationRequest} or an equivalent Hash.
546
+ #
547
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::UpdateReservationRequest, ::Hash]
548
+ # A request object representing the call parameters. Required. To specify no
549
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
550
+ # @param options [::Gapic::CallOptions, ::Hash]
551
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
552
+ #
553
+ # @overload update_reservation(reservation: nil, update_mask: nil)
554
+ # Pass arguments to `update_reservation` via keyword arguments. Note that at
555
+ # least one keyword argument is required. To specify no parameters, or to keep all
556
+ # the default parameter values, pass an empty Hash as a request object (see above).
557
+ #
558
+ # @param reservation [::Google::Cloud::Bigquery::Reservation::V1::Reservation, ::Hash]
559
+ # Content of the reservation to update.
560
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
561
+ # Standard field mask for the set of fields to be updated.
562
+ #
563
+ # @yield [response, operation] Access the result along with the RPC operation
564
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::Reservation]
565
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
566
+ #
567
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::Reservation]
568
+ #
569
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
570
+ #
571
+ def update_reservation request, options = nil
572
+ raise ::ArgumentError, "request must be provided" if request.nil?
573
+
574
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::UpdateReservationRequest
575
+
576
+ # Converts hash and nil to an options object
577
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
578
+
579
+ # Customize the options with defaults
580
+ metadata = @config.rpcs.update_reservation.metadata.to_h
581
+
582
+ # Set x-goog-api-client and x-goog-user-project headers
583
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
584
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
585
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
586
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
587
+
588
+ header_params = {
589
+ "reservation.name" => request.reservation.name
590
+ }
591
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
592
+ metadata[:"x-goog-request-params"] ||= request_params_header
593
+
594
+ options.apply_defaults timeout: @config.rpcs.update_reservation.timeout,
595
+ metadata: metadata,
596
+ retry_policy: @config.rpcs.update_reservation.retry_policy
597
+ options.apply_defaults metadata: @config.metadata,
598
+ retry_policy: @config.retry_policy
599
+
600
+ @reservation_service_stub.call_rpc :update_reservation, request, options: options do |response, operation|
601
+ yield response, operation if block_given?
602
+ return response
603
+ end
604
+ rescue ::GRPC::BadStatus => e
605
+ raise ::Google::Cloud::Error.from_error(e)
606
+ end
607
+
608
+ ##
609
+ # Creates a new capacity commitment resource.
610
+ #
611
+ # @overload create_capacity_commitment(request, options = nil)
612
+ # Pass arguments to `create_capacity_commitment` via a request object, either of type
613
+ # {::Google::Cloud::Bigquery::Reservation::V1::CreateCapacityCommitmentRequest} or an equivalent Hash.
614
+ #
615
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::CreateCapacityCommitmentRequest, ::Hash]
616
+ # A request object representing the call parameters. Required. To specify no
617
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
618
+ # @param options [::Gapic::CallOptions, ::Hash]
619
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
620
+ #
621
+ # @overload create_capacity_commitment(parent: nil, capacity_commitment: nil, enforce_single_admin_project_per_org: nil)
622
+ # Pass arguments to `create_capacity_commitment` via keyword arguments. Note that at
623
+ # least one keyword argument is required. To specify no parameters, or to keep all
624
+ # the default parameter values, pass an empty Hash as a request object (see above).
625
+ #
626
+ # @param parent [::String]
627
+ # Required. Resource name of the parent reservation. E.g.,
628
+ # `projects/myproject/locations/US`
629
+ # @param capacity_commitment [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment, ::Hash]
630
+ # Content of the capacity commitment to create.
631
+ # @param enforce_single_admin_project_per_org [::Boolean]
632
+ # If true, fail the request if another project in the organization has a
633
+ # capacity commitment.
634
+ #
635
+ # @yield [response, operation] Access the result along with the RPC operation
636
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment]
637
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
638
+ #
639
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment]
640
+ #
641
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
642
+ #
643
+ def create_capacity_commitment request, options = nil
644
+ raise ::ArgumentError, "request must be provided" if request.nil?
645
+
646
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::CreateCapacityCommitmentRequest
647
+
648
+ # Converts hash and nil to an options object
649
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
650
+
651
+ # Customize the options with defaults
652
+ metadata = @config.rpcs.create_capacity_commitment.metadata.to_h
653
+
654
+ # Set x-goog-api-client and x-goog-user-project headers
655
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
656
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
657
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
658
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
659
+
660
+ header_params = {
661
+ "parent" => request.parent
662
+ }
663
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
664
+ metadata[:"x-goog-request-params"] ||= request_params_header
665
+
666
+ options.apply_defaults timeout: @config.rpcs.create_capacity_commitment.timeout,
667
+ metadata: metadata,
668
+ retry_policy: @config.rpcs.create_capacity_commitment.retry_policy
669
+ options.apply_defaults metadata: @config.metadata,
670
+ retry_policy: @config.retry_policy
671
+
672
+ @reservation_service_stub.call_rpc :create_capacity_commitment, request, options: options do |response, operation|
673
+ yield response, operation if block_given?
674
+ return response
675
+ end
676
+ rescue ::GRPC::BadStatus => e
677
+ raise ::Google::Cloud::Error.from_error(e)
678
+ end
679
+
680
+ ##
681
+ # Lists all the capacity commitments for the admin project.
682
+ #
683
+ # @overload list_capacity_commitments(request, options = nil)
684
+ # Pass arguments to `list_capacity_commitments` via a request object, either of type
685
+ # {::Google::Cloud::Bigquery::Reservation::V1::ListCapacityCommitmentsRequest} or an equivalent Hash.
686
+ #
687
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::ListCapacityCommitmentsRequest, ::Hash]
688
+ # A request object representing the call parameters. Required. To specify no
689
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
690
+ # @param options [::Gapic::CallOptions, ::Hash]
691
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
692
+ #
693
+ # @overload list_capacity_commitments(parent: nil, page_size: nil, page_token: nil)
694
+ # Pass arguments to `list_capacity_commitments` via keyword arguments. Note that at
695
+ # least one keyword argument is required. To specify no parameters, or to keep all
696
+ # the default parameter values, pass an empty Hash as a request object (see above).
697
+ #
698
+ # @param parent [::String]
699
+ # Required. Resource name of the parent reservation. E.g.,
700
+ # `projects/myproject/locations/US`
701
+ # @param page_size [::Integer]
702
+ # The maximum number of items to return.
703
+ # @param page_token [::String]
704
+ # The next_page_token value returned from a previous List request, if any.
705
+ #
706
+ # @yield [response, operation] Access the result along with the RPC operation
707
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment>]
708
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
709
+ #
710
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment>]
711
+ #
712
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
713
+ #
714
+ def list_capacity_commitments request, options = nil
715
+ raise ::ArgumentError, "request must be provided" if request.nil?
716
+
717
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::ListCapacityCommitmentsRequest
718
+
719
+ # Converts hash and nil to an options object
720
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
721
+
722
+ # Customize the options with defaults
723
+ metadata = @config.rpcs.list_capacity_commitments.metadata.to_h
724
+
725
+ # Set x-goog-api-client and x-goog-user-project headers
726
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
727
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
728
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
729
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
730
+
731
+ header_params = {
732
+ "parent" => request.parent
733
+ }
734
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
735
+ metadata[:"x-goog-request-params"] ||= request_params_header
736
+
737
+ options.apply_defaults timeout: @config.rpcs.list_capacity_commitments.timeout,
738
+ metadata: metadata,
739
+ retry_policy: @config.rpcs.list_capacity_commitments.retry_policy
740
+ options.apply_defaults metadata: @config.metadata,
741
+ retry_policy: @config.retry_policy
742
+
743
+ @reservation_service_stub.call_rpc :list_capacity_commitments, request, options: options do |response, operation|
744
+ response = ::Gapic::PagedEnumerable.new @reservation_service_stub, :list_capacity_commitments, request, response, operation, options
745
+ yield response, operation if block_given?
746
+ return response
747
+ end
748
+ rescue ::GRPC::BadStatus => e
749
+ raise ::Google::Cloud::Error.from_error(e)
750
+ end
751
+
752
+ ##
753
+ # Returns information about the capacity commitment.
754
+ #
755
+ # @overload get_capacity_commitment(request, options = nil)
756
+ # Pass arguments to `get_capacity_commitment` via a request object, either of type
757
+ # {::Google::Cloud::Bigquery::Reservation::V1::GetCapacityCommitmentRequest} or an equivalent Hash.
758
+ #
759
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::GetCapacityCommitmentRequest, ::Hash]
760
+ # A request object representing the call parameters. Required. To specify no
761
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
762
+ # @param options [::Gapic::CallOptions, ::Hash]
763
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
764
+ #
765
+ # @overload get_capacity_commitment(name: nil)
766
+ # Pass arguments to `get_capacity_commitment` via keyword arguments. Note that at
767
+ # least one keyword argument is required. To specify no parameters, or to keep all
768
+ # the default parameter values, pass an empty Hash as a request object (see above).
769
+ #
770
+ # @param name [::String]
771
+ # Required. Resource name of the capacity commitment to retrieve. E.g.,
772
+ # `projects/myproject/locations/US/capacityCommitments/123`
773
+ #
774
+ # @yield [response, operation] Access the result along with the RPC operation
775
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment]
776
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
777
+ #
778
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment]
779
+ #
780
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
781
+ #
782
+ def get_capacity_commitment request, options = nil
783
+ raise ::ArgumentError, "request must be provided" if request.nil?
784
+
785
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::GetCapacityCommitmentRequest
786
+
787
+ # Converts hash and nil to an options object
788
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
789
+
790
+ # Customize the options with defaults
791
+ metadata = @config.rpcs.get_capacity_commitment.metadata.to_h
792
+
793
+ # Set x-goog-api-client and x-goog-user-project headers
794
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
795
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
796
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
797
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
798
+
799
+ header_params = {
800
+ "name" => request.name
801
+ }
802
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
803
+ metadata[:"x-goog-request-params"] ||= request_params_header
804
+
805
+ options.apply_defaults timeout: @config.rpcs.get_capacity_commitment.timeout,
806
+ metadata: metadata,
807
+ retry_policy: @config.rpcs.get_capacity_commitment.retry_policy
808
+ options.apply_defaults metadata: @config.metadata,
809
+ retry_policy: @config.retry_policy
810
+
811
+ @reservation_service_stub.call_rpc :get_capacity_commitment, request, options: options do |response, operation|
812
+ yield response, operation if block_given?
813
+ return response
814
+ end
815
+ rescue ::GRPC::BadStatus => e
816
+ raise ::Google::Cloud::Error.from_error(e)
817
+ end
818
+
819
+ ##
820
+ # Deletes a capacity commitment. Attempting to delete capacity commitment
821
+ # before its commitment_end_time will fail with the error code
822
+ # `google.rpc.Code.FAILED_PRECONDITION`.
823
+ #
824
+ # @overload delete_capacity_commitment(request, options = nil)
825
+ # Pass arguments to `delete_capacity_commitment` via a request object, either of type
826
+ # {::Google::Cloud::Bigquery::Reservation::V1::DeleteCapacityCommitmentRequest} or an equivalent Hash.
827
+ #
828
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::DeleteCapacityCommitmentRequest, ::Hash]
829
+ # A request object representing the call parameters. Required. To specify no
830
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
831
+ # @param options [::Gapic::CallOptions, ::Hash]
832
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
833
+ #
834
+ # @overload delete_capacity_commitment(name: nil)
835
+ # Pass arguments to `delete_capacity_commitment` via keyword arguments. Note that at
836
+ # least one keyword argument is required. To specify no parameters, or to keep all
837
+ # the default parameter values, pass an empty Hash as a request object (see above).
838
+ #
839
+ # @param name [::String]
840
+ # Required. Resource name of the capacity commitment to delete. E.g.,
841
+ # `projects/myproject/locations/US/capacityCommitments/123`
842
+ #
843
+ # @yield [response, operation] Access the result along with the RPC operation
844
+ # @yieldparam response [::Google::Protobuf::Empty]
845
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
846
+ #
847
+ # @return [::Google::Protobuf::Empty]
848
+ #
849
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
850
+ #
851
+ def delete_capacity_commitment request, options = nil
852
+ raise ::ArgumentError, "request must be provided" if request.nil?
853
+
854
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::DeleteCapacityCommitmentRequest
855
+
856
+ # Converts hash and nil to an options object
857
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
858
+
859
+ # Customize the options with defaults
860
+ metadata = @config.rpcs.delete_capacity_commitment.metadata.to_h
861
+
862
+ # Set x-goog-api-client and x-goog-user-project headers
863
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
864
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
865
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
866
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
867
+
868
+ header_params = {
869
+ "name" => request.name
870
+ }
871
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
872
+ metadata[:"x-goog-request-params"] ||= request_params_header
873
+
874
+ options.apply_defaults timeout: @config.rpcs.delete_capacity_commitment.timeout,
875
+ metadata: metadata,
876
+ retry_policy: @config.rpcs.delete_capacity_commitment.retry_policy
877
+ options.apply_defaults metadata: @config.metadata,
878
+ retry_policy: @config.retry_policy
879
+
880
+ @reservation_service_stub.call_rpc :delete_capacity_commitment, request, options: options do |response, operation|
881
+ yield response, operation if block_given?
882
+ return response
883
+ end
884
+ rescue ::GRPC::BadStatus => e
885
+ raise ::Google::Cloud::Error.from_error(e)
886
+ end
887
+
888
+ ##
889
+ # Updates an existing capacity commitment.
890
+ #
891
+ # Only `plan` and `renewal_plan` fields can be updated.
892
+ #
893
+ # Plan can only be changed to a plan of a longer commitment period.
894
+ # Attempting to change to a plan with shorter commitment period will fail
895
+ # with the error code `google.rpc.Code.FAILED_PRECONDITION`.
896
+ #
897
+ # @overload update_capacity_commitment(request, options = nil)
898
+ # Pass arguments to `update_capacity_commitment` via a request object, either of type
899
+ # {::Google::Cloud::Bigquery::Reservation::V1::UpdateCapacityCommitmentRequest} or an equivalent Hash.
900
+ #
901
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::UpdateCapacityCommitmentRequest, ::Hash]
902
+ # A request object representing the call parameters. Required. To specify no
903
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
904
+ # @param options [::Gapic::CallOptions, ::Hash]
905
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
906
+ #
907
+ # @overload update_capacity_commitment(capacity_commitment: nil, update_mask: nil)
908
+ # Pass arguments to `update_capacity_commitment` via keyword arguments. Note that at
909
+ # least one keyword argument is required. To specify no parameters, or to keep all
910
+ # the default parameter values, pass an empty Hash as a request object (see above).
911
+ #
912
+ # @param capacity_commitment [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment, ::Hash]
913
+ # Content of the capacity commitment to update.
914
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
915
+ # Standard field mask for the set of fields to be updated.
916
+ #
917
+ # @yield [response, operation] Access the result along with the RPC operation
918
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment]
919
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
920
+ #
921
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment]
922
+ #
923
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
924
+ #
925
+ def update_capacity_commitment request, options = nil
926
+ raise ::ArgumentError, "request must be provided" if request.nil?
927
+
928
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::UpdateCapacityCommitmentRequest
929
+
930
+ # Converts hash and nil to an options object
931
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
932
+
933
+ # Customize the options with defaults
934
+ metadata = @config.rpcs.update_capacity_commitment.metadata.to_h
935
+
936
+ # Set x-goog-api-client and x-goog-user-project headers
937
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
938
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
939
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
940
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
941
+
942
+ header_params = {
943
+ "capacity_commitment.name" => request.capacity_commitment.name
944
+ }
945
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
946
+ metadata[:"x-goog-request-params"] ||= request_params_header
947
+
948
+ options.apply_defaults timeout: @config.rpcs.update_capacity_commitment.timeout,
949
+ metadata: metadata,
950
+ retry_policy: @config.rpcs.update_capacity_commitment.retry_policy
951
+ options.apply_defaults metadata: @config.metadata,
952
+ retry_policy: @config.retry_policy
953
+
954
+ @reservation_service_stub.call_rpc :update_capacity_commitment, request, options: options do |response, operation|
955
+ yield response, operation if block_given?
956
+ return response
957
+ end
958
+ rescue ::GRPC::BadStatus => e
959
+ raise ::Google::Cloud::Error.from_error(e)
960
+ end
961
+
962
+ ##
963
+ # Splits capacity commitment to two commitments of the same plan and
964
+ # `commitment_end_time`.
965
+ #
966
+ # A common use case is to enable downgrading commitments.
967
+ #
968
+ # For example, in order to downgrade from 10000 slots to 8000, you might
969
+ # split a 10000 capacity commitment into commitments of 2000 and 8000. Then,
970
+ # you would change the plan of the first one to `FLEX` and then delete it.
971
+ #
972
+ # @overload split_capacity_commitment(request, options = nil)
973
+ # Pass arguments to `split_capacity_commitment` via a request object, either of type
974
+ # {::Google::Cloud::Bigquery::Reservation::V1::SplitCapacityCommitmentRequest} or an equivalent Hash.
975
+ #
976
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::SplitCapacityCommitmentRequest, ::Hash]
977
+ # A request object representing the call parameters. Required. To specify no
978
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
979
+ # @param options [::Gapic::CallOptions, ::Hash]
980
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
981
+ #
982
+ # @overload split_capacity_commitment(name: nil, slot_count: nil)
983
+ # Pass arguments to `split_capacity_commitment` via keyword arguments. Note that at
984
+ # least one keyword argument is required. To specify no parameters, or to keep all
985
+ # the default parameter values, pass an empty Hash as a request object (see above).
986
+ #
987
+ # @param name [::String]
988
+ # Required. The resource name e.g.,:
989
+ # `projects/myproject/locations/US/capacityCommitments/123`
990
+ # @param slot_count [::Integer]
991
+ # Number of slots in the capacity commitment after the split.
992
+ #
993
+ # @yield [response, operation] Access the result along with the RPC operation
994
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::SplitCapacityCommitmentResponse]
995
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
996
+ #
997
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::SplitCapacityCommitmentResponse]
998
+ #
999
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1000
+ #
1001
+ def split_capacity_commitment request, options = nil
1002
+ raise ::ArgumentError, "request must be provided" if request.nil?
1003
+
1004
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::SplitCapacityCommitmentRequest
1005
+
1006
+ # Converts hash and nil to an options object
1007
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1008
+
1009
+ # Customize the options with defaults
1010
+ metadata = @config.rpcs.split_capacity_commitment.metadata.to_h
1011
+
1012
+ # Set x-goog-api-client and x-goog-user-project headers
1013
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1014
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1015
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
1016
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1017
+
1018
+ header_params = {
1019
+ "name" => request.name
1020
+ }
1021
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1022
+ metadata[:"x-goog-request-params"] ||= request_params_header
1023
+
1024
+ options.apply_defaults timeout: @config.rpcs.split_capacity_commitment.timeout,
1025
+ metadata: metadata,
1026
+ retry_policy: @config.rpcs.split_capacity_commitment.retry_policy
1027
+ options.apply_defaults metadata: @config.metadata,
1028
+ retry_policy: @config.retry_policy
1029
+
1030
+ @reservation_service_stub.call_rpc :split_capacity_commitment, request, options: options do |response, operation|
1031
+ yield response, operation if block_given?
1032
+ return response
1033
+ end
1034
+ rescue ::GRPC::BadStatus => e
1035
+ raise ::Google::Cloud::Error.from_error(e)
1036
+ end
1037
+
1038
+ ##
1039
+ # Merges capacity commitments of the same plan into a single commitment.
1040
+ #
1041
+ # The resulting capacity commitment has the greater commitment_end_time
1042
+ # out of the to-be-merged capacity commitments.
1043
+ #
1044
+ # Attempting to merge capacity commitments of different plan will fail
1045
+ # with the error code `google.rpc.Code.FAILED_PRECONDITION`.
1046
+ #
1047
+ # @overload merge_capacity_commitments(request, options = nil)
1048
+ # Pass arguments to `merge_capacity_commitments` via a request object, either of type
1049
+ # {::Google::Cloud::Bigquery::Reservation::V1::MergeCapacityCommitmentsRequest} or an equivalent Hash.
1050
+ #
1051
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::MergeCapacityCommitmentsRequest, ::Hash]
1052
+ # A request object representing the call parameters. Required. To specify no
1053
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1054
+ # @param options [::Gapic::CallOptions, ::Hash]
1055
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1056
+ #
1057
+ # @overload merge_capacity_commitments(parent: nil, capacity_commitment_ids: nil)
1058
+ # Pass arguments to `merge_capacity_commitments` via keyword arguments. Note that at
1059
+ # least one keyword argument is required. To specify no parameters, or to keep all
1060
+ # the default parameter values, pass an empty Hash as a request object (see above).
1061
+ #
1062
+ # @param parent [::String]
1063
+ # Parent resource that identifies admin project and location e.g.,
1064
+ # `projects/myproject/locations/us`
1065
+ # @param capacity_commitment_ids [::Array<::String>]
1066
+ # Ids of capacity commitments to merge.
1067
+ # These capacity commitments must exist under admin project and location
1068
+ # specified in the parent.
1069
+ # ID is the last portion of capacity commitment name e.g., 'abc' for
1070
+ # projects/myproject/locations/US/capacityCommitments/abc
1071
+ #
1072
+ # @yield [response, operation] Access the result along with the RPC operation
1073
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment]
1074
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1075
+ #
1076
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment]
1077
+ #
1078
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1079
+ #
1080
+ def merge_capacity_commitments request, options = nil
1081
+ raise ::ArgumentError, "request must be provided" if request.nil?
1082
+
1083
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::MergeCapacityCommitmentsRequest
1084
+
1085
+ # Converts hash and nil to an options object
1086
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1087
+
1088
+ # Customize the options with defaults
1089
+ metadata = @config.rpcs.merge_capacity_commitments.metadata.to_h
1090
+
1091
+ # Set x-goog-api-client and x-goog-user-project headers
1092
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1093
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1094
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
1095
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1096
+
1097
+ header_params = {
1098
+ "parent" => request.parent
1099
+ }
1100
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1101
+ metadata[:"x-goog-request-params"] ||= request_params_header
1102
+
1103
+ options.apply_defaults timeout: @config.rpcs.merge_capacity_commitments.timeout,
1104
+ metadata: metadata,
1105
+ retry_policy: @config.rpcs.merge_capacity_commitments.retry_policy
1106
+ options.apply_defaults metadata: @config.metadata,
1107
+ retry_policy: @config.retry_policy
1108
+
1109
+ @reservation_service_stub.call_rpc :merge_capacity_commitments, request, options: options do |response, operation|
1110
+ yield response, operation if block_given?
1111
+ return response
1112
+ end
1113
+ rescue ::GRPC::BadStatus => e
1114
+ raise ::Google::Cloud::Error.from_error(e)
1115
+ end
1116
+
1117
+ ##
1118
+ # Creates an assignment object which allows the given project to submit jobs
1119
+ # of a certain type using slots from the specified reservation.
1120
+ #
1121
+ # Currently a
1122
+ # resource (project, folder, organization) can only have one assignment per
1123
+ # each (job_type, location) combination, and that reservation will be used
1124
+ # for all jobs of the matching type.
1125
+ #
1126
+ # Different assignments can be created on different levels of the
1127
+ # projects, folders or organization hierarchy. During query execution,
1128
+ # the assignment is looked up at the project, folder and organization levels
1129
+ # in that order. The first assignment found is applied to the query.
1130
+ #
1131
+ # When creating assignments, it does not matter if other assignments exist at
1132
+ # higher levels.
1133
+ #
1134
+ # Example:
1135
+ #
1136
+ # * The organization `organizationA` contains two projects, `project1`
1137
+ # and `project2`.
1138
+ # * Assignments for all three entities (`organizationA`, `project1`, and
1139
+ # `project2`) could all be created and mapped to the same or different
1140
+ # reservations.
1141
+ #
1142
+ # Returns `google.rpc.Code.PERMISSION_DENIED` if user does not have
1143
+ # 'bigquery.admin' permissions on the project using the reservation
1144
+ # and the project that owns this reservation.
1145
+ #
1146
+ # Returns `google.rpc.Code.INVALID_ARGUMENT` when location of the assignment
1147
+ # does not match location of the reservation.
1148
+ #
1149
+ # @overload create_assignment(request, options = nil)
1150
+ # Pass arguments to `create_assignment` via a request object, either of type
1151
+ # {::Google::Cloud::Bigquery::Reservation::V1::CreateAssignmentRequest} or an equivalent Hash.
1152
+ #
1153
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::CreateAssignmentRequest, ::Hash]
1154
+ # A request object representing the call parameters. Required. To specify no
1155
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1156
+ # @param options [::Gapic::CallOptions, ::Hash]
1157
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1158
+ #
1159
+ # @overload create_assignment(parent: nil, assignment: nil)
1160
+ # Pass arguments to `create_assignment` via keyword arguments. Note that at
1161
+ # least one keyword argument is required. To specify no parameters, or to keep all
1162
+ # the default parameter values, pass an empty Hash as a request object (see above).
1163
+ #
1164
+ # @param parent [::String]
1165
+ # Required. The parent resource name of the assignment
1166
+ # E.g. `projects/myproject/locations/US/reservations/team1-prod`
1167
+ # @param assignment [::Google::Cloud::Bigquery::Reservation::V1::Assignment, ::Hash]
1168
+ # Assignment resource to create.
1169
+ #
1170
+ # @yield [response, operation] Access the result along with the RPC operation
1171
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::Assignment]
1172
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1173
+ #
1174
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::Assignment]
1175
+ #
1176
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1177
+ #
1178
+ def create_assignment request, options = nil
1179
+ raise ::ArgumentError, "request must be provided" if request.nil?
1180
+
1181
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::CreateAssignmentRequest
1182
+
1183
+ # Converts hash and nil to an options object
1184
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1185
+
1186
+ # Customize the options with defaults
1187
+ metadata = @config.rpcs.create_assignment.metadata.to_h
1188
+
1189
+ # Set x-goog-api-client and x-goog-user-project headers
1190
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1191
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1192
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
1193
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1194
+
1195
+ header_params = {
1196
+ "parent" => request.parent
1197
+ }
1198
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1199
+ metadata[:"x-goog-request-params"] ||= request_params_header
1200
+
1201
+ options.apply_defaults timeout: @config.rpcs.create_assignment.timeout,
1202
+ metadata: metadata,
1203
+ retry_policy: @config.rpcs.create_assignment.retry_policy
1204
+ options.apply_defaults metadata: @config.metadata,
1205
+ retry_policy: @config.retry_policy
1206
+
1207
+ @reservation_service_stub.call_rpc :create_assignment, request, options: options do |response, operation|
1208
+ yield response, operation if block_given?
1209
+ return response
1210
+ end
1211
+ rescue ::GRPC::BadStatus => e
1212
+ raise ::Google::Cloud::Error.from_error(e)
1213
+ end
1214
+
1215
+ ##
1216
+ # Lists assignments.
1217
+ #
1218
+ # Only explicitly created assignments will be returned.
1219
+ #
1220
+ # Example:
1221
+ #
1222
+ # * Organization `organizationA` contains two projects, `project1` and
1223
+ # `project2`.
1224
+ # * Reservation `res1` exists and was created previously.
1225
+ # * CreateAssignment was used previously to define the following
1226
+ # associations between entities and reservations: `<organizationA, res1>`
1227
+ # and `<project1, res1>`
1228
+ #
1229
+ # In this example, ListAssignments will just return the above two assignments
1230
+ # for reservation `res1`, and no expansion/merge will happen.
1231
+ #
1232
+ # The wildcard "-" can be used for
1233
+ # reservations in the request. In that case all assignments belongs to the
1234
+ # specified project and location will be listed.
1235
+ #
1236
+ # **Note** "-" cannot be used for projects nor locations.
1237
+ #
1238
+ # @overload list_assignments(request, options = nil)
1239
+ # Pass arguments to `list_assignments` via a request object, either of type
1240
+ # {::Google::Cloud::Bigquery::Reservation::V1::ListAssignmentsRequest} or an equivalent Hash.
1241
+ #
1242
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::ListAssignmentsRequest, ::Hash]
1243
+ # A request object representing the call parameters. Required. To specify no
1244
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1245
+ # @param options [::Gapic::CallOptions, ::Hash]
1246
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1247
+ #
1248
+ # @overload list_assignments(parent: nil, page_size: nil, page_token: nil)
1249
+ # Pass arguments to `list_assignments` via keyword arguments. Note that at
1250
+ # least one keyword argument is required. To specify no parameters, or to keep all
1251
+ # the default parameter values, pass an empty Hash as a request object (see above).
1252
+ #
1253
+ # @param parent [::String]
1254
+ # Required. The parent resource name e.g.:
1255
+ #
1256
+ # `projects/myproject/locations/US/reservations/team1-prod`
1257
+ #
1258
+ # Or:
1259
+ #
1260
+ # `projects/myproject/locations/US/reservations/-`
1261
+ # @param page_size [::Integer]
1262
+ # The maximum number of items to return per page.
1263
+ # @param page_token [::String]
1264
+ # The next_page_token value returned from a previous List request, if any.
1265
+ #
1266
+ # @yield [response, operation] Access the result along with the RPC operation
1267
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::Assignment>]
1268
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1269
+ #
1270
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::Assignment>]
1271
+ #
1272
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1273
+ #
1274
+ def list_assignments request, options = nil
1275
+ raise ::ArgumentError, "request must be provided" if request.nil?
1276
+
1277
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::ListAssignmentsRequest
1278
+
1279
+ # Converts hash and nil to an options object
1280
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1281
+
1282
+ # Customize the options with defaults
1283
+ metadata = @config.rpcs.list_assignments.metadata.to_h
1284
+
1285
+ # Set x-goog-api-client and x-goog-user-project headers
1286
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1287
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1288
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
1289
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1290
+
1291
+ header_params = {
1292
+ "parent" => request.parent
1293
+ }
1294
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1295
+ metadata[:"x-goog-request-params"] ||= request_params_header
1296
+
1297
+ options.apply_defaults timeout: @config.rpcs.list_assignments.timeout,
1298
+ metadata: metadata,
1299
+ retry_policy: @config.rpcs.list_assignments.retry_policy
1300
+ options.apply_defaults metadata: @config.metadata,
1301
+ retry_policy: @config.retry_policy
1302
+
1303
+ @reservation_service_stub.call_rpc :list_assignments, request, options: options do |response, operation|
1304
+ response = ::Gapic::PagedEnumerable.new @reservation_service_stub, :list_assignments, request, response, operation, options
1305
+ yield response, operation if block_given?
1306
+ return response
1307
+ end
1308
+ rescue ::GRPC::BadStatus => e
1309
+ raise ::Google::Cloud::Error.from_error(e)
1310
+ end
1311
+
1312
+ ##
1313
+ # Deletes a assignment. No expansion will happen.
1314
+ #
1315
+ # Example:
1316
+ #
1317
+ # * Organization `organizationA` contains two projects, `project1` and
1318
+ # `project2`.
1319
+ # * Reservation `res1` exists and was created previously.
1320
+ # * CreateAssignment was used previously to define the following
1321
+ # associations between entities and reservations: `<organizationA, res1>`
1322
+ # and `<project1, res1>`
1323
+ #
1324
+ # In this example, deletion of the `<organizationA, res1>` assignment won't
1325
+ # affect the other assignment `<project1, res1>`. After said deletion,
1326
+ # queries from `project1` will still use `res1` while queries from
1327
+ # `project2` will switch to use on-demand mode.
1328
+ #
1329
+ # @overload delete_assignment(request, options = nil)
1330
+ # Pass arguments to `delete_assignment` via a request object, either of type
1331
+ # {::Google::Cloud::Bigquery::Reservation::V1::DeleteAssignmentRequest} or an equivalent Hash.
1332
+ #
1333
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::DeleteAssignmentRequest, ::Hash]
1334
+ # A request object representing the call parameters. Required. To specify no
1335
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1336
+ # @param options [::Gapic::CallOptions, ::Hash]
1337
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1338
+ #
1339
+ # @overload delete_assignment(name: nil)
1340
+ # Pass arguments to `delete_assignment` via keyword arguments. Note that at
1341
+ # least one keyword argument is required. To specify no parameters, or to keep all
1342
+ # the default parameter values, pass an empty Hash as a request object (see above).
1343
+ #
1344
+ # @param name [::String]
1345
+ # Required. Name of the resource, e.g.
1346
+ # `projects/myproject/locations/US/reservations/team1-prod/assignments/123`
1347
+ #
1348
+ # @yield [response, operation] Access the result along with the RPC operation
1349
+ # @yieldparam response [::Google::Protobuf::Empty]
1350
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1351
+ #
1352
+ # @return [::Google::Protobuf::Empty]
1353
+ #
1354
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1355
+ #
1356
+ def delete_assignment request, options = nil
1357
+ raise ::ArgumentError, "request must be provided" if request.nil?
1358
+
1359
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::DeleteAssignmentRequest
1360
+
1361
+ # Converts hash and nil to an options object
1362
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1363
+
1364
+ # Customize the options with defaults
1365
+ metadata = @config.rpcs.delete_assignment.metadata.to_h
1366
+
1367
+ # Set x-goog-api-client and x-goog-user-project headers
1368
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1369
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1370
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
1371
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1372
+
1373
+ header_params = {
1374
+ "name" => request.name
1375
+ }
1376
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1377
+ metadata[:"x-goog-request-params"] ||= request_params_header
1378
+
1379
+ options.apply_defaults timeout: @config.rpcs.delete_assignment.timeout,
1380
+ metadata: metadata,
1381
+ retry_policy: @config.rpcs.delete_assignment.retry_policy
1382
+ options.apply_defaults metadata: @config.metadata,
1383
+ retry_policy: @config.retry_policy
1384
+
1385
+ @reservation_service_stub.call_rpc :delete_assignment, request, options: options do |response, operation|
1386
+ yield response, operation if block_given?
1387
+ return response
1388
+ end
1389
+ rescue ::GRPC::BadStatus => e
1390
+ raise ::Google::Cloud::Error.from_error(e)
1391
+ end
1392
+
1393
+ ##
1394
+ # Looks up assignments for a specified resource for a particular region.
1395
+ # If the request is about a project:
1396
+ #
1397
+ # 1. Assignments created on the project will be returned if they exist.
1398
+ # 2. Otherwise assignments created on the closest ancestor will be
1399
+ # returned.
1400
+ # 3. Assignments for different JobTypes will all be returned.
1401
+ #
1402
+ # The same logic applies if the request is about a folder.
1403
+ #
1404
+ # If the request is about an organization, then assignments created on the
1405
+ # organization will be returned (organization doesn't have ancestors).
1406
+ #
1407
+ # Comparing to ListAssignments, there are some behavior
1408
+ # differences:
1409
+ #
1410
+ # 1. permission on the assignee will be verified in this API.
1411
+ # 2. Hierarchy lookup (project->folder->organization) happens in this API.
1412
+ # 3. Parent here is `projects/*/locations/*`, instead of
1413
+ # `projects/*/locations/*reservations/*`.
1414
+ #
1415
+ # **Note** "-" cannot be used for projects
1416
+ # nor locations.
1417
+ #
1418
+ # @overload search_assignments(request, options = nil)
1419
+ # Pass arguments to `search_assignments` via a request object, either of type
1420
+ # {::Google::Cloud::Bigquery::Reservation::V1::SearchAssignmentsRequest} or an equivalent Hash.
1421
+ #
1422
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::SearchAssignmentsRequest, ::Hash]
1423
+ # A request object representing the call parameters. Required. To specify no
1424
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1425
+ # @param options [::Gapic::CallOptions, ::Hash]
1426
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1427
+ #
1428
+ # @overload search_assignments(parent: nil, query: nil, page_size: nil, page_token: nil)
1429
+ # Pass arguments to `search_assignments` via keyword arguments. Note that at
1430
+ # least one keyword argument is required. To specify no parameters, or to keep all
1431
+ # the default parameter values, pass an empty Hash as a request object (see above).
1432
+ #
1433
+ # @param parent [::String]
1434
+ # Required. The resource name of the admin project(containing project and location),
1435
+ # e.g.:
1436
+ # `projects/myproject/locations/US`.
1437
+ # @param query [::String]
1438
+ # Please specify resource name as assignee in the query.
1439
+ #
1440
+ # Examples:
1441
+ #
1442
+ # * `assignee=projects/myproject`
1443
+ # * `assignee=folders/123`
1444
+ # * `assignee=organizations/456`
1445
+ # @param page_size [::Integer]
1446
+ # The maximum number of items to return per page.
1447
+ # @param page_token [::String]
1448
+ # The next_page_token value returned from a previous List request, if any.
1449
+ #
1450
+ # @yield [response, operation] Access the result along with the RPC operation
1451
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::Assignment>]
1452
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1453
+ #
1454
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::Assignment>]
1455
+ #
1456
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1457
+ #
1458
+ def search_assignments request, options = nil
1459
+ raise ::ArgumentError, "request must be provided" if request.nil?
1460
+
1461
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::SearchAssignmentsRequest
1462
+
1463
+ # Converts hash and nil to an options object
1464
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1465
+
1466
+ # Customize the options with defaults
1467
+ metadata = @config.rpcs.search_assignments.metadata.to_h
1468
+
1469
+ # Set x-goog-api-client and x-goog-user-project headers
1470
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1471
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1472
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
1473
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1474
+
1475
+ header_params = {
1476
+ "parent" => request.parent
1477
+ }
1478
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1479
+ metadata[:"x-goog-request-params"] ||= request_params_header
1480
+
1481
+ options.apply_defaults timeout: @config.rpcs.search_assignments.timeout,
1482
+ metadata: metadata,
1483
+ retry_policy: @config.rpcs.search_assignments.retry_policy
1484
+ options.apply_defaults metadata: @config.metadata,
1485
+ retry_policy: @config.retry_policy
1486
+
1487
+ @reservation_service_stub.call_rpc :search_assignments, request, options: options do |response, operation|
1488
+ response = ::Gapic::PagedEnumerable.new @reservation_service_stub, :search_assignments, request, response, operation, options
1489
+ yield response, operation if block_given?
1490
+ return response
1491
+ end
1492
+ rescue ::GRPC::BadStatus => e
1493
+ raise ::Google::Cloud::Error.from_error(e)
1494
+ end
1495
+
1496
+ ##
1497
+ # Moves an assignment under a new reservation.
1498
+ #
1499
+ # This differs from removing an existing assignment and recreating a new one
1500
+ # by providing a transactional change that ensures an assignee always has an
1501
+ # associated reservation.
1502
+ #
1503
+ # @overload move_assignment(request, options = nil)
1504
+ # Pass arguments to `move_assignment` via a request object, either of type
1505
+ # {::Google::Cloud::Bigquery::Reservation::V1::MoveAssignmentRequest} or an equivalent Hash.
1506
+ #
1507
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::MoveAssignmentRequest, ::Hash]
1508
+ # A request object representing the call parameters. Required. To specify no
1509
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1510
+ # @param options [::Gapic::CallOptions, ::Hash]
1511
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1512
+ #
1513
+ # @overload move_assignment(name: nil, destination_id: nil)
1514
+ # Pass arguments to `move_assignment` via keyword arguments. Note that at
1515
+ # least one keyword argument is required. To specify no parameters, or to keep all
1516
+ # the default parameter values, pass an empty Hash as a request object (see above).
1517
+ #
1518
+ # @param name [::String]
1519
+ # Required. The resource name of the assignment,
1520
+ # e.g.
1521
+ # `projects/myproject/locations/US/reservations/team1-prod/assignments/123`
1522
+ # @param destination_id [::String]
1523
+ # The new reservation ID, e.g.:
1524
+ # `projects/myotherproject/locations/US/reservations/team2-prod`
1525
+ #
1526
+ # @yield [response, operation] Access the result along with the RPC operation
1527
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::Assignment]
1528
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1529
+ #
1530
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::Assignment]
1531
+ #
1532
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1533
+ #
1534
+ def move_assignment request, options = nil
1535
+ raise ::ArgumentError, "request must be provided" if request.nil?
1536
+
1537
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::MoveAssignmentRequest
1538
+
1539
+ # Converts hash and nil to an options object
1540
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1541
+
1542
+ # Customize the options with defaults
1543
+ metadata = @config.rpcs.move_assignment.metadata.to_h
1544
+
1545
+ # Set x-goog-api-client and x-goog-user-project headers
1546
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1547
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1548
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
1549
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1550
+
1551
+ header_params = {
1552
+ "name" => request.name
1553
+ }
1554
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1555
+ metadata[:"x-goog-request-params"] ||= request_params_header
1556
+
1557
+ options.apply_defaults timeout: @config.rpcs.move_assignment.timeout,
1558
+ metadata: metadata,
1559
+ retry_policy: @config.rpcs.move_assignment.retry_policy
1560
+ options.apply_defaults metadata: @config.metadata,
1561
+ retry_policy: @config.retry_policy
1562
+
1563
+ @reservation_service_stub.call_rpc :move_assignment, request, options: options do |response, operation|
1564
+ yield response, operation if block_given?
1565
+ return response
1566
+ end
1567
+ rescue ::GRPC::BadStatus => e
1568
+ raise ::Google::Cloud::Error.from_error(e)
1569
+ end
1570
+
1571
+ ##
1572
+ # Retrieves a BI reservation.
1573
+ #
1574
+ # @overload get_bi_reservation(request, options = nil)
1575
+ # Pass arguments to `get_bi_reservation` via a request object, either of type
1576
+ # {::Google::Cloud::Bigquery::Reservation::V1::GetBiReservationRequest} or an equivalent Hash.
1577
+ #
1578
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::GetBiReservationRequest, ::Hash]
1579
+ # A request object representing the call parameters. Required. To specify no
1580
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1581
+ # @param options [::Gapic::CallOptions, ::Hash]
1582
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1583
+ #
1584
+ # @overload get_bi_reservation(name: nil)
1585
+ # Pass arguments to `get_bi_reservation` via keyword arguments. Note that at
1586
+ # least one keyword argument is required. To specify no parameters, or to keep all
1587
+ # the default parameter values, pass an empty Hash as a request object (see above).
1588
+ #
1589
+ # @param name [::String]
1590
+ # Required. Name of the requested reservation, for example:
1591
+ # `projects/{project_id}/locations/{location_id}/bireservation`
1592
+ #
1593
+ # @yield [response, operation] Access the result along with the RPC operation
1594
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::BiReservation]
1595
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1596
+ #
1597
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::BiReservation]
1598
+ #
1599
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1600
+ #
1601
+ def get_bi_reservation request, options = nil
1602
+ raise ::ArgumentError, "request must be provided" if request.nil?
1603
+
1604
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::GetBiReservationRequest
1605
+
1606
+ # Converts hash and nil to an options object
1607
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1608
+
1609
+ # Customize the options with defaults
1610
+ metadata = @config.rpcs.get_bi_reservation.metadata.to_h
1611
+
1612
+ # Set x-goog-api-client and x-goog-user-project headers
1613
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1614
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1615
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
1616
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1617
+
1618
+ header_params = {
1619
+ "name" => request.name
1620
+ }
1621
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1622
+ metadata[:"x-goog-request-params"] ||= request_params_header
1623
+
1624
+ options.apply_defaults timeout: @config.rpcs.get_bi_reservation.timeout,
1625
+ metadata: metadata,
1626
+ retry_policy: @config.rpcs.get_bi_reservation.retry_policy
1627
+ options.apply_defaults metadata: @config.metadata,
1628
+ retry_policy: @config.retry_policy
1629
+
1630
+ @reservation_service_stub.call_rpc :get_bi_reservation, request, options: options do |response, operation|
1631
+ yield response, operation if block_given?
1632
+ return response
1633
+ end
1634
+ rescue ::GRPC::BadStatus => e
1635
+ raise ::Google::Cloud::Error.from_error(e)
1636
+ end
1637
+
1638
+ ##
1639
+ # Updates a BI reservation.
1640
+ #
1641
+ # Only fields specified in the `field_mask` are updated.
1642
+ #
1643
+ # A singleton BI reservation always exists with default size 0.
1644
+ # In order to reserve BI capacity it needs to be updated to an amount
1645
+ # greater than 0. In order to release BI capacity reservation size
1646
+ # must be set to 0.
1647
+ #
1648
+ # @overload update_bi_reservation(request, options = nil)
1649
+ # Pass arguments to `update_bi_reservation` via a request object, either of type
1650
+ # {::Google::Cloud::Bigquery::Reservation::V1::UpdateBiReservationRequest} or an equivalent Hash.
1651
+ #
1652
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::UpdateBiReservationRequest, ::Hash]
1653
+ # A request object representing the call parameters. Required. To specify no
1654
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1655
+ # @param options [::Gapic::CallOptions, ::Hash]
1656
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1657
+ #
1658
+ # @overload update_bi_reservation(bi_reservation: nil, update_mask: nil)
1659
+ # Pass arguments to `update_bi_reservation` via keyword arguments. Note that at
1660
+ # least one keyword argument is required. To specify no parameters, or to keep all
1661
+ # the default parameter values, pass an empty Hash as a request object (see above).
1662
+ #
1663
+ # @param bi_reservation [::Google::Cloud::Bigquery::Reservation::V1::BiReservation, ::Hash]
1664
+ # A reservation to update.
1665
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
1666
+ # A list of fields to be updated in this request.
1667
+ #
1668
+ # @yield [response, operation] Access the result along with the RPC operation
1669
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::BiReservation]
1670
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1671
+ #
1672
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::BiReservation]
1673
+ #
1674
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1675
+ #
1676
+ def update_bi_reservation request, options = nil
1677
+ raise ::ArgumentError, "request must be provided" if request.nil?
1678
+
1679
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::UpdateBiReservationRequest
1680
+
1681
+ # Converts hash and nil to an options object
1682
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1683
+
1684
+ # Customize the options with defaults
1685
+ metadata = @config.rpcs.update_bi_reservation.metadata.to_h
1686
+
1687
+ # Set x-goog-api-client and x-goog-user-project headers
1688
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1689
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1690
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
1691
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1692
+
1693
+ header_params = {
1694
+ "bi_reservation.name" => request.bi_reservation.name
1695
+ }
1696
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1697
+ metadata[:"x-goog-request-params"] ||= request_params_header
1698
+
1699
+ options.apply_defaults timeout: @config.rpcs.update_bi_reservation.timeout,
1700
+ metadata: metadata,
1701
+ retry_policy: @config.rpcs.update_bi_reservation.retry_policy
1702
+ options.apply_defaults metadata: @config.metadata,
1703
+ retry_policy: @config.retry_policy
1704
+
1705
+ @reservation_service_stub.call_rpc :update_bi_reservation, request, options: options do |response, operation|
1706
+ yield response, operation if block_given?
1707
+ return response
1708
+ end
1709
+ rescue ::GRPC::BadStatus => e
1710
+ raise ::Google::Cloud::Error.from_error(e)
1711
+ end
1712
+
1713
+ ##
1714
+ # Configuration class for the ReservationService API.
1715
+ #
1716
+ # This class represents the configuration for ReservationService,
1717
+ # providing control over timeouts, retry behavior, logging, transport
1718
+ # parameters, and other low-level controls. Certain parameters can also be
1719
+ # applied individually to specific RPCs. See
1720
+ # {::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client::Configuration::Rpcs}
1721
+ # for a list of RPCs that can be configured independently.
1722
+ #
1723
+ # Configuration can be applied globally to all clients, or to a single client
1724
+ # on construction.
1725
+ #
1726
+ # # Examples
1727
+ #
1728
+ # To modify the global config, setting the timeout for create_reservation
1729
+ # to 20 seconds, and all remaining timeouts to 10 seconds:
1730
+ #
1731
+ # ::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.configure do |config|
1732
+ # config.timeout = 10.0
1733
+ # config.rpcs.create_reservation.timeout = 20.0
1734
+ # end
1735
+ #
1736
+ # To apply the above configuration only to a new client:
1737
+ #
1738
+ # client = ::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new do |config|
1739
+ # config.timeout = 10.0
1740
+ # config.rpcs.create_reservation.timeout = 20.0
1741
+ # end
1742
+ #
1743
+ # @!attribute [rw] endpoint
1744
+ # The hostname or hostname:port of the service endpoint.
1745
+ # Defaults to `"bigqueryreservation.googleapis.com"`.
1746
+ # @return [::String]
1747
+ # @!attribute [rw] credentials
1748
+ # Credentials to send with calls. You may provide any of the following types:
1749
+ # * (`String`) The path to a service account key file in JSON format
1750
+ # * (`Hash`) A service account key as a Hash
1751
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
1752
+ # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
1753
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
1754
+ # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
1755
+ # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
1756
+ # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
1757
+ # * (`nil`) indicating no credentials
1758
+ # @return [::Object]
1759
+ # @!attribute [rw] scope
1760
+ # The OAuth scopes
1761
+ # @return [::Array<::String>]
1762
+ # @!attribute [rw] lib_name
1763
+ # The library name as recorded in instrumentation and logging
1764
+ # @return [::String]
1765
+ # @!attribute [rw] lib_version
1766
+ # The library version as recorded in instrumentation and logging
1767
+ # @return [::String]
1768
+ # @!attribute [rw] channel_args
1769
+ # Extra parameters passed to the gRPC channel. Note: this is ignored if a
1770
+ # `GRPC::Core::Channel` object is provided as the credential.
1771
+ # @return [::Hash]
1772
+ # @!attribute [rw] interceptors
1773
+ # An array of interceptors that are run before calls are executed.
1774
+ # @return [::Array<::GRPC::ClientInterceptor>]
1775
+ # @!attribute [rw] timeout
1776
+ # The call timeout in seconds.
1777
+ # @return [::Numeric]
1778
+ # @!attribute [rw] metadata
1779
+ # Additional gRPC headers to be sent with the call.
1780
+ # @return [::Hash{::Symbol=>::String}]
1781
+ # @!attribute [rw] retry_policy
1782
+ # The retry policy. The value is a hash with the following keys:
1783
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
1784
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
1785
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
1786
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
1787
+ # trigger a retry.
1788
+ # @return [::Hash]
1789
+ # @!attribute [rw] quota_project
1790
+ # A separate project against which to charge quota.
1791
+ # @return [::String]
1792
+ #
1793
+ class Configuration
1794
+ extend ::Gapic::Config
1795
+
1796
+ config_attr :endpoint, "bigqueryreservation.googleapis.com", ::String
1797
+ config_attr :credentials, nil do |value|
1798
+ allowed = [::String, ::Hash, ::Proc, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1799
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
1800
+ allowed.any? { |klass| klass === value }
1801
+ end
1802
+ config_attr :scope, nil, ::String, ::Array, nil
1803
+ config_attr :lib_name, nil, ::String, nil
1804
+ config_attr :lib_version, nil, ::String, nil
1805
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
1806
+ config_attr :interceptors, nil, ::Array, nil
1807
+ config_attr :timeout, nil, ::Numeric, nil
1808
+ config_attr :metadata, nil, ::Hash, nil
1809
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1810
+ config_attr :quota_project, nil, ::String, nil
1811
+
1812
+ # @private
1813
+ def initialize parent_config = nil
1814
+ @parent_config = parent_config unless parent_config.nil?
1815
+
1816
+ yield self if block_given?
1817
+ end
1818
+
1819
+ ##
1820
+ # Configurations for individual RPCs
1821
+ # @return [Rpcs]
1822
+ #
1823
+ def rpcs
1824
+ @rpcs ||= begin
1825
+ parent_rpcs = nil
1826
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
1827
+ Rpcs.new parent_rpcs
1828
+ end
1829
+ end
1830
+
1831
+ ##
1832
+ # Configuration RPC class for the ReservationService API.
1833
+ #
1834
+ # Includes fields providing the configuration for each RPC in this service.
1835
+ # Each configuration object is of type `Gapic::Config::Method` and includes
1836
+ # the following configuration fields:
1837
+ #
1838
+ # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
1839
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
1840
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
1841
+ # include the following keys:
1842
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
1843
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
1844
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
1845
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
1846
+ # trigger a retry.
1847
+ #
1848
+ class Rpcs
1849
+ ##
1850
+ # RPC-specific configuration for `create_reservation`
1851
+ # @return [::Gapic::Config::Method]
1852
+ #
1853
+ attr_reader :create_reservation
1854
+ ##
1855
+ # RPC-specific configuration for `list_reservations`
1856
+ # @return [::Gapic::Config::Method]
1857
+ #
1858
+ attr_reader :list_reservations
1859
+ ##
1860
+ # RPC-specific configuration for `get_reservation`
1861
+ # @return [::Gapic::Config::Method]
1862
+ #
1863
+ attr_reader :get_reservation
1864
+ ##
1865
+ # RPC-specific configuration for `delete_reservation`
1866
+ # @return [::Gapic::Config::Method]
1867
+ #
1868
+ attr_reader :delete_reservation
1869
+ ##
1870
+ # RPC-specific configuration for `update_reservation`
1871
+ # @return [::Gapic::Config::Method]
1872
+ #
1873
+ attr_reader :update_reservation
1874
+ ##
1875
+ # RPC-specific configuration for `create_capacity_commitment`
1876
+ # @return [::Gapic::Config::Method]
1877
+ #
1878
+ attr_reader :create_capacity_commitment
1879
+ ##
1880
+ # RPC-specific configuration for `list_capacity_commitments`
1881
+ # @return [::Gapic::Config::Method]
1882
+ #
1883
+ attr_reader :list_capacity_commitments
1884
+ ##
1885
+ # RPC-specific configuration for `get_capacity_commitment`
1886
+ # @return [::Gapic::Config::Method]
1887
+ #
1888
+ attr_reader :get_capacity_commitment
1889
+ ##
1890
+ # RPC-specific configuration for `delete_capacity_commitment`
1891
+ # @return [::Gapic::Config::Method]
1892
+ #
1893
+ attr_reader :delete_capacity_commitment
1894
+ ##
1895
+ # RPC-specific configuration for `update_capacity_commitment`
1896
+ # @return [::Gapic::Config::Method]
1897
+ #
1898
+ attr_reader :update_capacity_commitment
1899
+ ##
1900
+ # RPC-specific configuration for `split_capacity_commitment`
1901
+ # @return [::Gapic::Config::Method]
1902
+ #
1903
+ attr_reader :split_capacity_commitment
1904
+ ##
1905
+ # RPC-specific configuration for `merge_capacity_commitments`
1906
+ # @return [::Gapic::Config::Method]
1907
+ #
1908
+ attr_reader :merge_capacity_commitments
1909
+ ##
1910
+ # RPC-specific configuration for `create_assignment`
1911
+ # @return [::Gapic::Config::Method]
1912
+ #
1913
+ attr_reader :create_assignment
1914
+ ##
1915
+ # RPC-specific configuration for `list_assignments`
1916
+ # @return [::Gapic::Config::Method]
1917
+ #
1918
+ attr_reader :list_assignments
1919
+ ##
1920
+ # RPC-specific configuration for `delete_assignment`
1921
+ # @return [::Gapic::Config::Method]
1922
+ #
1923
+ attr_reader :delete_assignment
1924
+ ##
1925
+ # RPC-specific configuration for `search_assignments`
1926
+ # @return [::Gapic::Config::Method]
1927
+ #
1928
+ attr_reader :search_assignments
1929
+ ##
1930
+ # RPC-specific configuration for `move_assignment`
1931
+ # @return [::Gapic::Config::Method]
1932
+ #
1933
+ attr_reader :move_assignment
1934
+ ##
1935
+ # RPC-specific configuration for `get_bi_reservation`
1936
+ # @return [::Gapic::Config::Method]
1937
+ #
1938
+ attr_reader :get_bi_reservation
1939
+ ##
1940
+ # RPC-specific configuration for `update_bi_reservation`
1941
+ # @return [::Gapic::Config::Method]
1942
+ #
1943
+ attr_reader :update_bi_reservation
1944
+
1945
+ # @private
1946
+ def initialize parent_rpcs = nil
1947
+ create_reservation_config = parent_rpcs&.create_reservation if parent_rpcs&.respond_to? :create_reservation
1948
+ @create_reservation = ::Gapic::Config::Method.new create_reservation_config
1949
+ list_reservations_config = parent_rpcs&.list_reservations if parent_rpcs&.respond_to? :list_reservations
1950
+ @list_reservations = ::Gapic::Config::Method.new list_reservations_config
1951
+ get_reservation_config = parent_rpcs&.get_reservation if parent_rpcs&.respond_to? :get_reservation
1952
+ @get_reservation = ::Gapic::Config::Method.new get_reservation_config
1953
+ delete_reservation_config = parent_rpcs&.delete_reservation if parent_rpcs&.respond_to? :delete_reservation
1954
+ @delete_reservation = ::Gapic::Config::Method.new delete_reservation_config
1955
+ update_reservation_config = parent_rpcs&.update_reservation if parent_rpcs&.respond_to? :update_reservation
1956
+ @update_reservation = ::Gapic::Config::Method.new update_reservation_config
1957
+ create_capacity_commitment_config = parent_rpcs&.create_capacity_commitment if parent_rpcs&.respond_to? :create_capacity_commitment
1958
+ @create_capacity_commitment = ::Gapic::Config::Method.new create_capacity_commitment_config
1959
+ list_capacity_commitments_config = parent_rpcs&.list_capacity_commitments if parent_rpcs&.respond_to? :list_capacity_commitments
1960
+ @list_capacity_commitments = ::Gapic::Config::Method.new list_capacity_commitments_config
1961
+ get_capacity_commitment_config = parent_rpcs&.get_capacity_commitment if parent_rpcs&.respond_to? :get_capacity_commitment
1962
+ @get_capacity_commitment = ::Gapic::Config::Method.new get_capacity_commitment_config
1963
+ delete_capacity_commitment_config = parent_rpcs&.delete_capacity_commitment if parent_rpcs&.respond_to? :delete_capacity_commitment
1964
+ @delete_capacity_commitment = ::Gapic::Config::Method.new delete_capacity_commitment_config
1965
+ update_capacity_commitment_config = parent_rpcs&.update_capacity_commitment if parent_rpcs&.respond_to? :update_capacity_commitment
1966
+ @update_capacity_commitment = ::Gapic::Config::Method.new update_capacity_commitment_config
1967
+ split_capacity_commitment_config = parent_rpcs&.split_capacity_commitment if parent_rpcs&.respond_to? :split_capacity_commitment
1968
+ @split_capacity_commitment = ::Gapic::Config::Method.new split_capacity_commitment_config
1969
+ merge_capacity_commitments_config = parent_rpcs&.merge_capacity_commitments if parent_rpcs&.respond_to? :merge_capacity_commitments
1970
+ @merge_capacity_commitments = ::Gapic::Config::Method.new merge_capacity_commitments_config
1971
+ create_assignment_config = parent_rpcs&.create_assignment if parent_rpcs&.respond_to? :create_assignment
1972
+ @create_assignment = ::Gapic::Config::Method.new create_assignment_config
1973
+ list_assignments_config = parent_rpcs&.list_assignments if parent_rpcs&.respond_to? :list_assignments
1974
+ @list_assignments = ::Gapic::Config::Method.new list_assignments_config
1975
+ delete_assignment_config = parent_rpcs&.delete_assignment if parent_rpcs&.respond_to? :delete_assignment
1976
+ @delete_assignment = ::Gapic::Config::Method.new delete_assignment_config
1977
+ search_assignments_config = parent_rpcs&.search_assignments if parent_rpcs&.respond_to? :search_assignments
1978
+ @search_assignments = ::Gapic::Config::Method.new search_assignments_config
1979
+ move_assignment_config = parent_rpcs&.move_assignment if parent_rpcs&.respond_to? :move_assignment
1980
+ @move_assignment = ::Gapic::Config::Method.new move_assignment_config
1981
+ get_bi_reservation_config = parent_rpcs&.get_bi_reservation if parent_rpcs&.respond_to? :get_bi_reservation
1982
+ @get_bi_reservation = ::Gapic::Config::Method.new get_bi_reservation_config
1983
+ update_bi_reservation_config = parent_rpcs&.update_bi_reservation if parent_rpcs&.respond_to? :update_bi_reservation
1984
+ @update_bi_reservation = ::Gapic::Config::Method.new update_bi_reservation_config
1985
+
1986
+ yield self if block_given?
1987
+ end
1988
+ end
1989
+ end
1990
+ end
1991
+ end
1992
+ end
1993
+ end
1994
+ end
1995
+ end
1996
+ end