google-cloud-service_management-v1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +203 -0
  5. data/README.md +75 -0
  6. data/lib/google-cloud-service_management-v1.rb +21 -0
  7. data/lib/google/api/servicemanagement/v1/resources_pb.rb +123 -0
  8. data/lib/google/api/servicemanagement/v1/servicemanager_pb.rb +146 -0
  9. data/lib/google/api/servicemanagement/v1/servicemanager_services_pb.rb +148 -0
  10. data/lib/google/cloud/service_management/v1.rb +35 -0
  11. data/lib/google/cloud/service_management/v1/service_manager.rb +49 -0
  12. data/lib/google/cloud/service_management/v1/service_manager/client.rb +1563 -0
  13. data/lib/google/cloud/service_management/v1/service_manager/credentials.rb +54 -0
  14. data/lib/google/cloud/service_management/v1/service_manager/operations.rb +570 -0
  15. data/lib/google/cloud/service_management/v1/version.rb +28 -0
  16. data/proto_docs/README.md +4 -0
  17. data/proto_docs/google/api/auth.rb +192 -0
  18. data/proto_docs/google/api/backend.rb +55 -0
  19. data/proto_docs/google/api/billing.rb +69 -0
  20. data/proto_docs/google/api/config_change.rb +89 -0
  21. data/proto_docs/google/api/context.rb +67 -0
  22. data/proto_docs/google/api/control.rb +34 -0
  23. data/proto_docs/google/api/documentation.rb +164 -0
  24. data/proto_docs/google/api/endpoint.rb +70 -0
  25. data/proto_docs/google/api/field_behavior.rb +59 -0
  26. data/proto_docs/google/api/label.rb +49 -0
  27. data/proto_docs/google/api/log.rb +54 -0
  28. data/proto_docs/google/api/logging.rb +85 -0
  29. data/proto_docs/google/api/metric.rb +203 -0
  30. data/proto_docs/google/api/monitored_resource.rb +137 -0
  31. data/proto_docs/google/api/monitoring.rb +91 -0
  32. data/proto_docs/google/api/quota.rb +281 -0
  33. data/proto_docs/google/api/resource.rb +283 -0
  34. data/proto_docs/google/api/service.rb +151 -0
  35. data/proto_docs/google/api/servicemanagement/v1/resources.rb +326 -0
  36. data/proto_docs/google/api/servicemanagement/v1/servicemanager.rb +370 -0
  37. data/proto_docs/google/api/source_info.rb +31 -0
  38. data/proto_docs/google/api/system_parameter.rb +103 -0
  39. data/proto_docs/google/api/usage.rb +94 -0
  40. data/proto_docs/google/longrunning/operations.rb +150 -0
  41. data/proto_docs/google/protobuf/any.rb +138 -0
  42. data/proto_docs/google/protobuf/api.rb +194 -0
  43. data/proto_docs/google/protobuf/empty.rb +36 -0
  44. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  45. data/proto_docs/google/protobuf/source_context.rb +33 -0
  46. data/proto_docs/google/protobuf/struct.rb +96 -0
  47. data/proto_docs/google/protobuf/timestamp.rb +120 -0
  48. data/proto_docs/google/protobuf/type.rb +223 -0
  49. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  50. data/proto_docs/google/rpc/status.rb +46 -0
  51. metadata +232 -0
@@ -0,0 +1,49 @@
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/service_management/v1/version"
24
+
25
+ require "google/cloud/service_management/v1/service_manager/credentials"
26
+ require "google/cloud/service_management/v1/service_manager/operations"
27
+ require "google/cloud/service_management/v1/service_manager/client"
28
+
29
+ module Google
30
+ module Cloud
31
+ module ServiceManagement
32
+ module V1
33
+ ##
34
+ # [Google Service Management API](/service-management/overview)
35
+ #
36
+ # To load this service and instantiate a client:
37
+ #
38
+ # require "google/cloud/service_management/v1/service_manager"
39
+ # client = ::Google::Cloud::ServiceManagement::V1::ServiceManager::Client.new
40
+ #
41
+ module ServiceManager
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
47
+
48
+ helper_path = ::File.join __dir__, "service_manager", "helpers.rb"
49
+ require "google/cloud/service_management/v1/service_manager/helpers" if ::File.file? helper_path
@@ -0,0 +1,1563 @@
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/api/servicemanagement/v1/servicemanager_pb"
21
+
22
+ module Google
23
+ module Cloud
24
+ module ServiceManagement
25
+ module V1
26
+ module ServiceManager
27
+ ##
28
+ # Client for the ServiceManager service.
29
+ #
30
+ # [Google Service Management API](/service-management/overview)
31
+ #
32
+ class Client
33
+ # @private
34
+ attr_reader :service_manager_stub
35
+
36
+ ##
37
+ # Configure the ServiceManager Client class.
38
+ #
39
+ # See {::Google::Cloud::ServiceManagement::V1::ServiceManager::Client::Configuration}
40
+ # for a description of the configuration fields.
41
+ #
42
+ # ## Example
43
+ #
44
+ # To modify the configuration for all ServiceManager clients:
45
+ #
46
+ # ::Google::Cloud::ServiceManagement::V1::ServiceManager::Client.configure do |config|
47
+ # config.timeout = 10.0
48
+ # end
49
+ #
50
+ # @yield [config] Configure the Client client.
51
+ # @yieldparam config [Client::Configuration]
52
+ #
53
+ # @return [Client::Configuration]
54
+ #
55
+ def self.configure
56
+ @configure ||= begin
57
+ namespace = ["Google", "Cloud", "ServiceManagement", "V1"]
58
+ parent_config = while namespace.any?
59
+ parent_name = namespace.join "::"
60
+ parent_const = const_get parent_name
61
+ break parent_const.configure if parent_const&.respond_to? :configure
62
+ namespace.pop
63
+ end
64
+ default_config = Client::Configuration.new parent_config
65
+
66
+ default_config
67
+ end
68
+ yield @configure if block_given?
69
+ @configure
70
+ end
71
+
72
+ ##
73
+ # Configure the ServiceManager Client instance.
74
+ #
75
+ # The configuration is set to the derived mode, meaning that values can be changed,
76
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
77
+ # should be made on {Client.configure}.
78
+ #
79
+ # See {::Google::Cloud::ServiceManagement::V1::ServiceManager::Client::Configuration}
80
+ # for a description of the configuration fields.
81
+ #
82
+ # @yield [config] Configure the Client client.
83
+ # @yieldparam config [Client::Configuration]
84
+ #
85
+ # @return [Client::Configuration]
86
+ #
87
+ def configure
88
+ yield @config if block_given?
89
+ @config
90
+ end
91
+
92
+ ##
93
+ # Create a new ServiceManager client object.
94
+ #
95
+ # ## Examples
96
+ #
97
+ # To create a new ServiceManager client with the default
98
+ # configuration:
99
+ #
100
+ # client = ::Google::Cloud::ServiceManagement::V1::ServiceManager::Client.new
101
+ #
102
+ # To create a new ServiceManager client with a custom
103
+ # configuration:
104
+ #
105
+ # client = ::Google::Cloud::ServiceManagement::V1::ServiceManager::Client.new do |config|
106
+ # config.timeout = 10.0
107
+ # end
108
+ #
109
+ # @yield [config] Configure the ServiceManager client.
110
+ # @yieldparam config [Client::Configuration]
111
+ #
112
+ def initialize
113
+ # These require statements are intentionally placed here to initialize
114
+ # the gRPC module only when it's required.
115
+ # See https://github.com/googleapis/toolkit/issues/446
116
+ require "gapic/grpc"
117
+ require "google/api/servicemanagement/v1/servicemanager_services_pb"
118
+
119
+ # Create the configuration object
120
+ @config = Configuration.new Client.configure
121
+
122
+ # Yield the configuration if needed
123
+ yield @config if block_given?
124
+
125
+ # Create credentials
126
+ credentials = @config.credentials
127
+ credentials ||= Credentials.default scope: @config.scope
128
+ if credentials.is_a?(String) || credentials.is_a?(Hash)
129
+ credentials = Credentials.new credentials, scope: @config.scope
130
+ end
131
+ @quota_project_id = @config.quota_project
132
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
133
+
134
+ @operations_client = Operations.new do |config|
135
+ config.credentials = credentials
136
+ config.endpoint = @config.endpoint
137
+ end
138
+
139
+ @service_manager_stub = ::Gapic::ServiceStub.new(
140
+ ::Google::Cloud::ServiceManagement::V1::ServiceManager::Stub,
141
+ credentials: credentials,
142
+ endpoint: @config.endpoint,
143
+ channel_args: @config.channel_args,
144
+ interceptors: @config.interceptors
145
+ )
146
+ end
147
+
148
+ ##
149
+ # Get the associated client for long-running operations.
150
+ #
151
+ # @return [::Google::Cloud::ServiceManagement::V1::ServiceManager::Operations]
152
+ #
153
+ attr_reader :operations_client
154
+
155
+ # Service calls
156
+
157
+ ##
158
+ # Lists managed services.
159
+ #
160
+ # Returns all public services. For authenticated users, also returns all
161
+ # services the calling user has "servicemanagement.services.get" permission
162
+ # for.
163
+ #
164
+ # **BETA:** If the caller specifies the `consumer_id`, it returns only the
165
+ # services enabled on the consumer. The `consumer_id` must have the format
166
+ # of "project:\\{PROJECT-ID}".
167
+ #
168
+ # @overload list_services(request, options = nil)
169
+ # Pass arguments to `list_services` via a request object, either of type
170
+ # {::Google::Cloud::ServiceManagement::V1::ListServicesRequest} or an equivalent Hash.
171
+ #
172
+ # @param request [::Google::Cloud::ServiceManagement::V1::ListServicesRequest, ::Hash]
173
+ # A request object representing the call parameters. Required. To specify no
174
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
175
+ # @param options [::Gapic::CallOptions, ::Hash]
176
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
177
+ #
178
+ # @overload list_services(producer_project_id: nil, page_size: nil, page_token: nil, consumer_id: nil)
179
+ # Pass arguments to `list_services` via keyword arguments. Note that at
180
+ # least one keyword argument is required. To specify no parameters, or to keep all
181
+ # the default parameter values, pass an empty Hash as a request object (see above).
182
+ #
183
+ # @param producer_project_id [::String]
184
+ # Include services produced by the specified project.
185
+ # @param page_size [::Integer]
186
+ # The max number of items to include in the response list. Page size is 50
187
+ # if not specified. Maximum value is 100.
188
+ # @param page_token [::String]
189
+ # Token identifying which result to start with; returned by a previous list
190
+ # call.
191
+ # @param consumer_id [::String]
192
+ # Include services consumed by the specified consumer.
193
+ #
194
+ # The Google Service Management implementation accepts the following
195
+ # forms:
196
+ # - project:<project_id>
197
+ #
198
+ # @yield [response, operation] Access the result along with the RPC operation
199
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::ServiceManagement::V1::ManagedService>]
200
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
201
+ #
202
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::ServiceManagement::V1::ManagedService>]
203
+ #
204
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
205
+ #
206
+ def list_services request, options = nil
207
+ raise ::ArgumentError, "request must be provided" if request.nil?
208
+
209
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::ListServicesRequest
210
+
211
+ # Converts hash and nil to an options object
212
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
213
+
214
+ # Customize the options with defaults
215
+ metadata = @config.rpcs.list_services.metadata.to_h
216
+
217
+ # Set x-goog-api-client and x-goog-user-project headers
218
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
219
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
220
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
221
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
222
+
223
+ options.apply_defaults timeout: @config.rpcs.list_services.timeout,
224
+ metadata: metadata,
225
+ retry_policy: @config.rpcs.list_services.retry_policy
226
+ options.apply_defaults metadata: @config.metadata,
227
+ retry_policy: @config.retry_policy
228
+
229
+ @service_manager_stub.call_rpc :list_services, request, options: options do |response, operation|
230
+ response = ::Gapic::PagedEnumerable.new @service_manager_stub, :list_services, request, response, operation, options
231
+ yield response, operation if block_given?
232
+ return response
233
+ end
234
+ rescue ::GRPC::BadStatus => e
235
+ raise ::Google::Cloud::Error.from_error(e)
236
+ end
237
+
238
+ ##
239
+ # Gets a managed service. Authentication is required unless the service is
240
+ # public.
241
+ #
242
+ # @overload get_service(request, options = nil)
243
+ # Pass arguments to `get_service` via a request object, either of type
244
+ # {::Google::Cloud::ServiceManagement::V1::GetServiceRequest} or an equivalent Hash.
245
+ #
246
+ # @param request [::Google::Cloud::ServiceManagement::V1::GetServiceRequest, ::Hash]
247
+ # A request object representing the call parameters. Required. To specify no
248
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
249
+ # @param options [::Gapic::CallOptions, ::Hash]
250
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
251
+ #
252
+ # @overload get_service(service_name: nil)
253
+ # Pass arguments to `get_service` via keyword arguments. Note that at
254
+ # least one keyword argument is required. To specify no parameters, or to keep all
255
+ # the default parameter values, pass an empty Hash as a request object (see above).
256
+ #
257
+ # @param service_name [::String]
258
+ # Required. The name of the service. See the `ServiceManager` overview for naming
259
+ # requirements. For example: `example.googleapis.com`.
260
+ #
261
+ # @yield [response, operation] Access the result along with the RPC operation
262
+ # @yieldparam response [::Google::Cloud::ServiceManagement::V1::ManagedService]
263
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
264
+ #
265
+ # @return [::Google::Cloud::ServiceManagement::V1::ManagedService]
266
+ #
267
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
268
+ #
269
+ def get_service request, options = nil
270
+ raise ::ArgumentError, "request must be provided" if request.nil?
271
+
272
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::GetServiceRequest
273
+
274
+ # Converts hash and nil to an options object
275
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
276
+
277
+ # Customize the options with defaults
278
+ metadata = @config.rpcs.get_service.metadata.to_h
279
+
280
+ # Set x-goog-api-client and x-goog-user-project headers
281
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
282
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
283
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
284
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
285
+
286
+ header_params = {
287
+ "service_name" => request.service_name
288
+ }
289
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
290
+ metadata[:"x-goog-request-params"] ||= request_params_header
291
+
292
+ options.apply_defaults timeout: @config.rpcs.get_service.timeout,
293
+ metadata: metadata,
294
+ retry_policy: @config.rpcs.get_service.retry_policy
295
+ options.apply_defaults metadata: @config.metadata,
296
+ retry_policy: @config.retry_policy
297
+
298
+ @service_manager_stub.call_rpc :get_service, request, options: options do |response, operation|
299
+ yield response, operation if block_given?
300
+ return response
301
+ end
302
+ rescue ::GRPC::BadStatus => e
303
+ raise ::Google::Cloud::Error.from_error(e)
304
+ end
305
+
306
+ ##
307
+ # Creates a new managed service.
308
+ # Please note one producer project can own no more than 20 services.
309
+ #
310
+ # Operation<response: ManagedService>
311
+ #
312
+ # @overload create_service(request, options = nil)
313
+ # Pass arguments to `create_service` via a request object, either of type
314
+ # {::Google::Cloud::ServiceManagement::V1::CreateServiceRequest} or an equivalent Hash.
315
+ #
316
+ # @param request [::Google::Cloud::ServiceManagement::V1::CreateServiceRequest, ::Hash]
317
+ # A request object representing the call parameters. Required. To specify no
318
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
319
+ # @param options [::Gapic::CallOptions, ::Hash]
320
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
321
+ #
322
+ # @overload create_service(service: nil)
323
+ # Pass arguments to `create_service` via keyword arguments. Note that at
324
+ # least one keyword argument is required. To specify no parameters, or to keep all
325
+ # the default parameter values, pass an empty Hash as a request object (see above).
326
+ #
327
+ # @param service [::Google::Cloud::ServiceManagement::V1::ManagedService, ::Hash]
328
+ # Required. Initial values for the service resource.
329
+ #
330
+ # @yield [response, operation] Access the result along with the RPC operation
331
+ # @yieldparam response [::Gapic::Operation]
332
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
333
+ #
334
+ # @return [::Gapic::Operation]
335
+ #
336
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
337
+ #
338
+ def create_service request, options = nil
339
+ raise ::ArgumentError, "request must be provided" if request.nil?
340
+
341
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::CreateServiceRequest
342
+
343
+ # Converts hash and nil to an options object
344
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
345
+
346
+ # Customize the options with defaults
347
+ metadata = @config.rpcs.create_service.metadata.to_h
348
+
349
+ # Set x-goog-api-client and x-goog-user-project headers
350
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
351
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
352
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
353
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
354
+
355
+ options.apply_defaults timeout: @config.rpcs.create_service.timeout,
356
+ metadata: metadata,
357
+ retry_policy: @config.rpcs.create_service.retry_policy
358
+ options.apply_defaults metadata: @config.metadata,
359
+ retry_policy: @config.retry_policy
360
+
361
+ @service_manager_stub.call_rpc :create_service, request, options: options do |response, operation|
362
+ response = ::Gapic::Operation.new response, @operations_client, options: options
363
+ yield response, operation if block_given?
364
+ return response
365
+ end
366
+ rescue ::GRPC::BadStatus => e
367
+ raise ::Google::Cloud::Error.from_error(e)
368
+ end
369
+
370
+ ##
371
+ # Deletes a managed service. This method will change the service to the
372
+ # `Soft-Delete` state for 30 days. Within this period, service producers may
373
+ # call {::Google::Cloud::ServiceManagement::V1::ServiceManager::Client#undelete_service UndeleteService} to restore the service.
374
+ # After 30 days, the service will be permanently deleted.
375
+ #
376
+ # Operation<response: google.protobuf.Empty>
377
+ #
378
+ # @overload delete_service(request, options = nil)
379
+ # Pass arguments to `delete_service` via a request object, either of type
380
+ # {::Google::Cloud::ServiceManagement::V1::DeleteServiceRequest} or an equivalent Hash.
381
+ #
382
+ # @param request [::Google::Cloud::ServiceManagement::V1::DeleteServiceRequest, ::Hash]
383
+ # A request object representing the call parameters. Required. To specify no
384
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
385
+ # @param options [::Gapic::CallOptions, ::Hash]
386
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
387
+ #
388
+ # @overload delete_service(service_name: nil)
389
+ # Pass arguments to `delete_service` via keyword arguments. Note that at
390
+ # least one keyword argument is required. To specify no parameters, or to keep all
391
+ # the default parameter values, pass an empty Hash as a request object (see above).
392
+ #
393
+ # @param service_name [::String]
394
+ # Required. The name of the service. See the [overview](/service-management/overview)
395
+ # for naming requirements. For example: `example.googleapis.com`.
396
+ #
397
+ # @yield [response, operation] Access the result along with the RPC operation
398
+ # @yieldparam response [::Gapic::Operation]
399
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
400
+ #
401
+ # @return [::Gapic::Operation]
402
+ #
403
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
404
+ #
405
+ def delete_service request, options = nil
406
+ raise ::ArgumentError, "request must be provided" if request.nil?
407
+
408
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::DeleteServiceRequest
409
+
410
+ # Converts hash and nil to an options object
411
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
412
+
413
+ # Customize the options with defaults
414
+ metadata = @config.rpcs.delete_service.metadata.to_h
415
+
416
+ # Set x-goog-api-client and x-goog-user-project headers
417
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
418
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
419
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
420
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
421
+
422
+ header_params = {
423
+ "service_name" => request.service_name
424
+ }
425
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
426
+ metadata[:"x-goog-request-params"] ||= request_params_header
427
+
428
+ options.apply_defaults timeout: @config.rpcs.delete_service.timeout,
429
+ metadata: metadata,
430
+ retry_policy: @config.rpcs.delete_service.retry_policy
431
+ options.apply_defaults metadata: @config.metadata,
432
+ retry_policy: @config.retry_policy
433
+
434
+ @service_manager_stub.call_rpc :delete_service, request, options: options do |response, operation|
435
+ response = ::Gapic::Operation.new response, @operations_client, options: options
436
+ yield response, operation if block_given?
437
+ return response
438
+ end
439
+ rescue ::GRPC::BadStatus => e
440
+ raise ::Google::Cloud::Error.from_error(e)
441
+ end
442
+
443
+ ##
444
+ # Revives a previously deleted managed service. The method restores the
445
+ # service using the configuration at the time the service was deleted.
446
+ # The target service must exist and must have been deleted within the
447
+ # last 30 days.
448
+ #
449
+ # Operation<response: UndeleteServiceResponse>
450
+ #
451
+ # @overload undelete_service(request, options = nil)
452
+ # Pass arguments to `undelete_service` via a request object, either of type
453
+ # {::Google::Cloud::ServiceManagement::V1::UndeleteServiceRequest} or an equivalent Hash.
454
+ #
455
+ # @param request [::Google::Cloud::ServiceManagement::V1::UndeleteServiceRequest, ::Hash]
456
+ # A request object representing the call parameters. Required. To specify no
457
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
458
+ # @param options [::Gapic::CallOptions, ::Hash]
459
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
460
+ #
461
+ # @overload undelete_service(service_name: nil)
462
+ # Pass arguments to `undelete_service` via keyword arguments. Note that at
463
+ # least one keyword argument is required. To specify no parameters, or to keep all
464
+ # the default parameter values, pass an empty Hash as a request object (see above).
465
+ #
466
+ # @param service_name [::String]
467
+ # Required. The name of the service. See the [overview](/service-management/overview)
468
+ # for naming requirements. For example: `example.googleapis.com`.
469
+ #
470
+ # @yield [response, operation] Access the result along with the RPC operation
471
+ # @yieldparam response [::Gapic::Operation]
472
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
473
+ #
474
+ # @return [::Gapic::Operation]
475
+ #
476
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
477
+ #
478
+ def undelete_service request, options = nil
479
+ raise ::ArgumentError, "request must be provided" if request.nil?
480
+
481
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::UndeleteServiceRequest
482
+
483
+ # Converts hash and nil to an options object
484
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
485
+
486
+ # Customize the options with defaults
487
+ metadata = @config.rpcs.undelete_service.metadata.to_h
488
+
489
+ # Set x-goog-api-client and x-goog-user-project headers
490
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
491
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
492
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
493
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
494
+
495
+ header_params = {
496
+ "service_name" => request.service_name
497
+ }
498
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
499
+ metadata[:"x-goog-request-params"] ||= request_params_header
500
+
501
+ options.apply_defaults timeout: @config.rpcs.undelete_service.timeout,
502
+ metadata: metadata,
503
+ retry_policy: @config.rpcs.undelete_service.retry_policy
504
+ options.apply_defaults metadata: @config.metadata,
505
+ retry_policy: @config.retry_policy
506
+
507
+ @service_manager_stub.call_rpc :undelete_service, request, options: options do |response, operation|
508
+ response = ::Gapic::Operation.new response, @operations_client, options: options
509
+ yield response, operation if block_given?
510
+ return response
511
+ end
512
+ rescue ::GRPC::BadStatus => e
513
+ raise ::Google::Cloud::Error.from_error(e)
514
+ end
515
+
516
+ ##
517
+ # Lists the history of the service configuration for a managed service,
518
+ # from the newest to the oldest.
519
+ #
520
+ # @overload list_service_configs(request, options = nil)
521
+ # Pass arguments to `list_service_configs` via a request object, either of type
522
+ # {::Google::Cloud::ServiceManagement::V1::ListServiceConfigsRequest} or an equivalent Hash.
523
+ #
524
+ # @param request [::Google::Cloud::ServiceManagement::V1::ListServiceConfigsRequest, ::Hash]
525
+ # A request object representing the call parameters. Required. To specify no
526
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
527
+ # @param options [::Gapic::CallOptions, ::Hash]
528
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
529
+ #
530
+ # @overload list_service_configs(service_name: nil, page_token: nil, page_size: nil)
531
+ # Pass arguments to `list_service_configs` via keyword arguments. Note that at
532
+ # least one keyword argument is required. To specify no parameters, or to keep all
533
+ # the default parameter values, pass an empty Hash as a request object (see above).
534
+ #
535
+ # @param service_name [::String]
536
+ # Required. The name of the service. See the [overview](/service-management/overview)
537
+ # for naming requirements. For example: `example.googleapis.com`.
538
+ # @param page_token [::String]
539
+ # The token of the page to retrieve.
540
+ # @param page_size [::Integer]
541
+ # The max number of items to include in the response list. Page size is 50
542
+ # if not specified. Maximum value is 100.
543
+ #
544
+ # @yield [response, operation] Access the result along with the RPC operation
545
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Api::Service>]
546
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
547
+ #
548
+ # @return [::Gapic::PagedEnumerable<::Google::Api::Service>]
549
+ #
550
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
551
+ #
552
+ def list_service_configs request, options = nil
553
+ raise ::ArgumentError, "request must be provided" if request.nil?
554
+
555
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::ListServiceConfigsRequest
556
+
557
+ # Converts hash and nil to an options object
558
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
559
+
560
+ # Customize the options with defaults
561
+ metadata = @config.rpcs.list_service_configs.metadata.to_h
562
+
563
+ # Set x-goog-api-client and x-goog-user-project headers
564
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
565
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
566
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
567
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
568
+
569
+ header_params = {
570
+ "service_name" => request.service_name
571
+ }
572
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
573
+ metadata[:"x-goog-request-params"] ||= request_params_header
574
+
575
+ options.apply_defaults timeout: @config.rpcs.list_service_configs.timeout,
576
+ metadata: metadata,
577
+ retry_policy: @config.rpcs.list_service_configs.retry_policy
578
+ options.apply_defaults metadata: @config.metadata,
579
+ retry_policy: @config.retry_policy
580
+
581
+ @service_manager_stub.call_rpc :list_service_configs, request, options: options do |response, operation|
582
+ response = ::Gapic::PagedEnumerable.new @service_manager_stub, :list_service_configs, request, response, operation, options
583
+ yield response, operation if block_given?
584
+ return response
585
+ end
586
+ rescue ::GRPC::BadStatus => e
587
+ raise ::Google::Cloud::Error.from_error(e)
588
+ end
589
+
590
+ ##
591
+ # Gets a service configuration (version) for a managed service.
592
+ #
593
+ # @overload get_service_config(request, options = nil)
594
+ # Pass arguments to `get_service_config` via a request object, either of type
595
+ # {::Google::Cloud::ServiceManagement::V1::GetServiceConfigRequest} or an equivalent Hash.
596
+ #
597
+ # @param request [::Google::Cloud::ServiceManagement::V1::GetServiceConfigRequest, ::Hash]
598
+ # A request object representing the call parameters. Required. To specify no
599
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
600
+ # @param options [::Gapic::CallOptions, ::Hash]
601
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
602
+ #
603
+ # @overload get_service_config(service_name: nil, config_id: nil, view: nil)
604
+ # Pass arguments to `get_service_config` via keyword arguments. Note that at
605
+ # least one keyword argument is required. To specify no parameters, or to keep all
606
+ # the default parameter values, pass an empty Hash as a request object (see above).
607
+ #
608
+ # @param service_name [::String]
609
+ # Required. The name of the service. See the [overview](/service-management/overview)
610
+ # for naming requirements. For example: `example.googleapis.com`.
611
+ # @param config_id [::String]
612
+ # Required. The id of the service configuration resource.
613
+ #
614
+ # This field must be specified for the server to return all fields, including
615
+ # `SourceInfo`.
616
+ # @param view [::Google::Cloud::ServiceManagement::V1::GetServiceConfigRequest::ConfigView]
617
+ # Specifies which parts of the Service Config should be returned in the
618
+ # response.
619
+ #
620
+ # @yield [response, operation] Access the result along with the RPC operation
621
+ # @yieldparam response [::Google::Api::Service]
622
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
623
+ #
624
+ # @return [::Google::Api::Service]
625
+ #
626
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
627
+ #
628
+ def get_service_config request, options = nil
629
+ raise ::ArgumentError, "request must be provided" if request.nil?
630
+
631
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::GetServiceConfigRequest
632
+
633
+ # Converts hash and nil to an options object
634
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
635
+
636
+ # Customize the options with defaults
637
+ metadata = @config.rpcs.get_service_config.metadata.to_h
638
+
639
+ # Set x-goog-api-client and x-goog-user-project headers
640
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
641
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
642
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
643
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
644
+
645
+ header_params = {
646
+ "service_name" => request.service_name,
647
+ "config_id" => request.config_id
648
+ }
649
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
650
+ metadata[:"x-goog-request-params"] ||= request_params_header
651
+
652
+ options.apply_defaults timeout: @config.rpcs.get_service_config.timeout,
653
+ metadata: metadata,
654
+ retry_policy: @config.rpcs.get_service_config.retry_policy
655
+ options.apply_defaults metadata: @config.metadata,
656
+ retry_policy: @config.retry_policy
657
+
658
+ @service_manager_stub.call_rpc :get_service_config, request, options: options do |response, operation|
659
+ yield response, operation if block_given?
660
+ return response
661
+ end
662
+ rescue ::GRPC::BadStatus => e
663
+ raise ::Google::Cloud::Error.from_error(e)
664
+ end
665
+
666
+ ##
667
+ # Creates a new service configuration (version) for a managed service.
668
+ # This method only stores the service configuration. To roll out the service
669
+ # configuration to backend systems please call
670
+ # {::Google::Cloud::ServiceManagement::V1::ServiceManager::Client#create_service_rollout CreateServiceRollout}.
671
+ #
672
+ # Only the 100 most recent service configurations and ones referenced by
673
+ # existing rollouts are kept for each service. The rest will be deleted
674
+ # eventually.
675
+ #
676
+ # @overload create_service_config(request, options = nil)
677
+ # Pass arguments to `create_service_config` via a request object, either of type
678
+ # {::Google::Cloud::ServiceManagement::V1::CreateServiceConfigRequest} or an equivalent Hash.
679
+ #
680
+ # @param request [::Google::Cloud::ServiceManagement::V1::CreateServiceConfigRequest, ::Hash]
681
+ # A request object representing the call parameters. Required. To specify no
682
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
683
+ # @param options [::Gapic::CallOptions, ::Hash]
684
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
685
+ #
686
+ # @overload create_service_config(service_name: nil, service_config: nil)
687
+ # Pass arguments to `create_service_config` via keyword arguments. Note that at
688
+ # least one keyword argument is required. To specify no parameters, or to keep all
689
+ # the default parameter values, pass an empty Hash as a request object (see above).
690
+ #
691
+ # @param service_name [::String]
692
+ # Required. The name of the service. See the [overview](/service-management/overview)
693
+ # for naming requirements. For example: `example.googleapis.com`.
694
+ # @param service_config [::Google::Api::Service, ::Hash]
695
+ # Required. The service configuration resource.
696
+ #
697
+ # @yield [response, operation] Access the result along with the RPC operation
698
+ # @yieldparam response [::Google::Api::Service]
699
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
700
+ #
701
+ # @return [::Google::Api::Service]
702
+ #
703
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
704
+ #
705
+ def create_service_config request, options = nil
706
+ raise ::ArgumentError, "request must be provided" if request.nil?
707
+
708
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::CreateServiceConfigRequest
709
+
710
+ # Converts hash and nil to an options object
711
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
712
+
713
+ # Customize the options with defaults
714
+ metadata = @config.rpcs.create_service_config.metadata.to_h
715
+
716
+ # Set x-goog-api-client and x-goog-user-project headers
717
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
718
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
719
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
720
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
721
+
722
+ header_params = {
723
+ "service_name" => request.service_name
724
+ }
725
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
726
+ metadata[:"x-goog-request-params"] ||= request_params_header
727
+
728
+ options.apply_defaults timeout: @config.rpcs.create_service_config.timeout,
729
+ metadata: metadata,
730
+ retry_policy: @config.rpcs.create_service_config.retry_policy
731
+ options.apply_defaults metadata: @config.metadata,
732
+ retry_policy: @config.retry_policy
733
+
734
+ @service_manager_stub.call_rpc :create_service_config, request, options: options do |response, operation|
735
+ yield response, operation if block_given?
736
+ return response
737
+ end
738
+ rescue ::GRPC::BadStatus => e
739
+ raise ::Google::Cloud::Error.from_error(e)
740
+ end
741
+
742
+ ##
743
+ # Creates a new service configuration (version) for a managed service based
744
+ # on
745
+ # user-supplied configuration source files (for example: OpenAPI
746
+ # Specification). This method stores the source configurations as well as the
747
+ # generated service configuration. To rollout the service configuration to
748
+ # other services,
749
+ # please call {::Google::Cloud::ServiceManagement::V1::ServiceManager::Client#create_service_rollout CreateServiceRollout}.
750
+ #
751
+ # Only the 100 most recent configuration sources and ones referenced by
752
+ # existing service configurtions are kept for each service. The rest will be
753
+ # deleted eventually.
754
+ #
755
+ # Operation<response: SubmitConfigSourceResponse>
756
+ #
757
+ # @overload submit_config_source(request, options = nil)
758
+ # Pass arguments to `submit_config_source` via a request object, either of type
759
+ # {::Google::Cloud::ServiceManagement::V1::SubmitConfigSourceRequest} or an equivalent Hash.
760
+ #
761
+ # @param request [::Google::Cloud::ServiceManagement::V1::SubmitConfigSourceRequest, ::Hash]
762
+ # A request object representing the call parameters. Required. To specify no
763
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
764
+ # @param options [::Gapic::CallOptions, ::Hash]
765
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
766
+ #
767
+ # @overload submit_config_source(service_name: nil, config_source: nil, validate_only: nil)
768
+ # Pass arguments to `submit_config_source` via keyword arguments. Note that at
769
+ # least one keyword argument is required. To specify no parameters, or to keep all
770
+ # the default parameter values, pass an empty Hash as a request object (see above).
771
+ #
772
+ # @param service_name [::String]
773
+ # Required. The name of the service. See the [overview](/service-management/overview)
774
+ # for naming requirements. For example: `example.googleapis.com`.
775
+ # @param config_source [::Google::Cloud::ServiceManagement::V1::ConfigSource, ::Hash]
776
+ # Required. The source configuration for the service.
777
+ # @param validate_only [::Boolean]
778
+ # Optional. If set, this will result in the generation of a
779
+ # `google.api.Service` configuration based on the `ConfigSource` provided,
780
+ # but the generated config and the sources will NOT be persisted.
781
+ #
782
+ # @yield [response, operation] Access the result along with the RPC operation
783
+ # @yieldparam response [::Gapic::Operation]
784
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
785
+ #
786
+ # @return [::Gapic::Operation]
787
+ #
788
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
789
+ #
790
+ def submit_config_source request, options = nil
791
+ raise ::ArgumentError, "request must be provided" if request.nil?
792
+
793
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::SubmitConfigSourceRequest
794
+
795
+ # Converts hash and nil to an options object
796
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
797
+
798
+ # Customize the options with defaults
799
+ metadata = @config.rpcs.submit_config_source.metadata.to_h
800
+
801
+ # Set x-goog-api-client and x-goog-user-project headers
802
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
803
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
804
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
805
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
806
+
807
+ header_params = {
808
+ "service_name" => request.service_name
809
+ }
810
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
811
+ metadata[:"x-goog-request-params"] ||= request_params_header
812
+
813
+ options.apply_defaults timeout: @config.rpcs.submit_config_source.timeout,
814
+ metadata: metadata,
815
+ retry_policy: @config.rpcs.submit_config_source.retry_policy
816
+ options.apply_defaults metadata: @config.metadata,
817
+ retry_policy: @config.retry_policy
818
+
819
+ @service_manager_stub.call_rpc :submit_config_source, request, options: options do |response, operation|
820
+ response = ::Gapic::Operation.new response, @operations_client, options: options
821
+ yield response, operation if block_given?
822
+ return response
823
+ end
824
+ rescue ::GRPC::BadStatus => e
825
+ raise ::Google::Cloud::Error.from_error(e)
826
+ end
827
+
828
+ ##
829
+ # Lists the history of the service configuration rollouts for a managed
830
+ # service, from the newest to the oldest.
831
+ #
832
+ # @overload list_service_rollouts(request, options = nil)
833
+ # Pass arguments to `list_service_rollouts` via a request object, either of type
834
+ # {::Google::Cloud::ServiceManagement::V1::ListServiceRolloutsRequest} or an equivalent Hash.
835
+ #
836
+ # @param request [::Google::Cloud::ServiceManagement::V1::ListServiceRolloutsRequest, ::Hash]
837
+ # A request object representing the call parameters. Required. To specify no
838
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
839
+ # @param options [::Gapic::CallOptions, ::Hash]
840
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
841
+ #
842
+ # @overload list_service_rollouts(service_name: nil, page_token: nil, page_size: nil, filter: nil)
843
+ # Pass arguments to `list_service_rollouts` via keyword arguments. Note that at
844
+ # least one keyword argument is required. To specify no parameters, or to keep all
845
+ # the default parameter values, pass an empty Hash as a request object (see above).
846
+ #
847
+ # @param service_name [::String]
848
+ # Required. The name of the service. See the [overview](/service-management/overview)
849
+ # for naming requirements. For example: `example.googleapis.com`.
850
+ # @param page_token [::String]
851
+ # The token of the page to retrieve.
852
+ # @param page_size [::Integer]
853
+ # The max number of items to include in the response list. Page size is 50
854
+ # if not specified. Maximum value is 100.
855
+ # @param filter [::String]
856
+ # Required. Use `filter` to return subset of rollouts.
857
+ # The following filters are supported:
858
+ # -- To limit the results to only those in
859
+ # [status](google.api.servicemanagement.v1.RolloutStatus) 'SUCCESS',
860
+ # use filter='status=SUCCESS'
861
+ # -- To limit the results to those in
862
+ # [status](google.api.servicemanagement.v1.RolloutStatus) 'CANCELLED'
863
+ # or 'FAILED', use filter='status=CANCELLED OR status=FAILED'
864
+ #
865
+ # @yield [response, operation] Access the result along with the RPC operation
866
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::ServiceManagement::V1::Rollout>]
867
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
868
+ #
869
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::ServiceManagement::V1::Rollout>]
870
+ #
871
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
872
+ #
873
+ def list_service_rollouts request, options = nil
874
+ raise ::ArgumentError, "request must be provided" if request.nil?
875
+
876
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::ListServiceRolloutsRequest
877
+
878
+ # Converts hash and nil to an options object
879
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
880
+
881
+ # Customize the options with defaults
882
+ metadata = @config.rpcs.list_service_rollouts.metadata.to_h
883
+
884
+ # Set x-goog-api-client and x-goog-user-project headers
885
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
886
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
887
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
888
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
889
+
890
+ header_params = {
891
+ "service_name" => request.service_name
892
+ }
893
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
894
+ metadata[:"x-goog-request-params"] ||= request_params_header
895
+
896
+ options.apply_defaults timeout: @config.rpcs.list_service_rollouts.timeout,
897
+ metadata: metadata,
898
+ retry_policy: @config.rpcs.list_service_rollouts.retry_policy
899
+ options.apply_defaults metadata: @config.metadata,
900
+ retry_policy: @config.retry_policy
901
+
902
+ @service_manager_stub.call_rpc :list_service_rollouts, request, options: options do |response, operation|
903
+ response = ::Gapic::PagedEnumerable.new @service_manager_stub, :list_service_rollouts, request, response, operation, options
904
+ yield response, operation if block_given?
905
+ return response
906
+ end
907
+ rescue ::GRPC::BadStatus => e
908
+ raise ::Google::Cloud::Error.from_error(e)
909
+ end
910
+
911
+ ##
912
+ # Gets a service configuration {::Google::Cloud::ServiceManagement::V1::Rollout rollout}.
913
+ #
914
+ # @overload get_service_rollout(request, options = nil)
915
+ # Pass arguments to `get_service_rollout` via a request object, either of type
916
+ # {::Google::Cloud::ServiceManagement::V1::GetServiceRolloutRequest} or an equivalent Hash.
917
+ #
918
+ # @param request [::Google::Cloud::ServiceManagement::V1::GetServiceRolloutRequest, ::Hash]
919
+ # A request object representing the call parameters. Required. To specify no
920
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
921
+ # @param options [::Gapic::CallOptions, ::Hash]
922
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
923
+ #
924
+ # @overload get_service_rollout(service_name: nil, rollout_id: nil)
925
+ # Pass arguments to `get_service_rollout` via keyword arguments. Note that at
926
+ # least one keyword argument is required. To specify no parameters, or to keep all
927
+ # the default parameter values, pass an empty Hash as a request object (see above).
928
+ #
929
+ # @param service_name [::String]
930
+ # Required. The name of the service. See the [overview](/service-management/overview)
931
+ # for naming requirements. For example: `example.googleapis.com`.
932
+ # @param rollout_id [::String]
933
+ # Required. The id of the rollout resource.
934
+ #
935
+ # @yield [response, operation] Access the result along with the RPC operation
936
+ # @yieldparam response [::Google::Cloud::ServiceManagement::V1::Rollout]
937
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
938
+ #
939
+ # @return [::Google::Cloud::ServiceManagement::V1::Rollout]
940
+ #
941
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
942
+ #
943
+ def get_service_rollout request, options = nil
944
+ raise ::ArgumentError, "request must be provided" if request.nil?
945
+
946
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::GetServiceRolloutRequest
947
+
948
+ # Converts hash and nil to an options object
949
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
950
+
951
+ # Customize the options with defaults
952
+ metadata = @config.rpcs.get_service_rollout.metadata.to_h
953
+
954
+ # Set x-goog-api-client and x-goog-user-project headers
955
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
956
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
957
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
958
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
959
+
960
+ header_params = {
961
+ "service_name" => request.service_name,
962
+ "rollout_id" => request.rollout_id
963
+ }
964
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
965
+ metadata[:"x-goog-request-params"] ||= request_params_header
966
+
967
+ options.apply_defaults timeout: @config.rpcs.get_service_rollout.timeout,
968
+ metadata: metadata,
969
+ retry_policy: @config.rpcs.get_service_rollout.retry_policy
970
+ options.apply_defaults metadata: @config.metadata,
971
+ retry_policy: @config.retry_policy
972
+
973
+ @service_manager_stub.call_rpc :get_service_rollout, request, options: options do |response, operation|
974
+ yield response, operation if block_given?
975
+ return response
976
+ end
977
+ rescue ::GRPC::BadStatus => e
978
+ raise ::Google::Cloud::Error.from_error(e)
979
+ end
980
+
981
+ ##
982
+ # Creates a new service configuration rollout. Based on rollout, the
983
+ # Google Service Management will roll out the service configurations to
984
+ # different backend services. For example, the logging configuration will be
985
+ # pushed to Google Cloud Logging.
986
+ #
987
+ # Please note that any previous pending and running Rollouts and associated
988
+ # Operations will be automatically cancelled so that the latest Rollout will
989
+ # not be blocked by previous Rollouts.
990
+ #
991
+ # Only the 100 most recent (in any state) and the last 10 successful (if not
992
+ # already part of the set of 100 most recent) rollouts are kept for each
993
+ # service. The rest will be deleted eventually.
994
+ #
995
+ # Operation<response: Rollout>
996
+ #
997
+ # @overload create_service_rollout(request, options = nil)
998
+ # Pass arguments to `create_service_rollout` via a request object, either of type
999
+ # {::Google::Cloud::ServiceManagement::V1::CreateServiceRolloutRequest} or an equivalent Hash.
1000
+ #
1001
+ # @param request [::Google::Cloud::ServiceManagement::V1::CreateServiceRolloutRequest, ::Hash]
1002
+ # A request object representing the call parameters. Required. To specify no
1003
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1004
+ # @param options [::Gapic::CallOptions, ::Hash]
1005
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1006
+ #
1007
+ # @overload create_service_rollout(service_name: nil, rollout: nil)
1008
+ # Pass arguments to `create_service_rollout` via keyword arguments. Note that at
1009
+ # least one keyword argument is required. To specify no parameters, or to keep all
1010
+ # the default parameter values, pass an empty Hash as a request object (see above).
1011
+ #
1012
+ # @param service_name [::String]
1013
+ # Required. The name of the service. See the [overview](/service-management/overview)
1014
+ # for naming requirements. For example: `example.googleapis.com`.
1015
+ # @param rollout [::Google::Cloud::ServiceManagement::V1::Rollout, ::Hash]
1016
+ # Required. The rollout resource. The `service_name` field is output only.
1017
+ #
1018
+ # @yield [response, operation] Access the result along with the RPC operation
1019
+ # @yieldparam response [::Gapic::Operation]
1020
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1021
+ #
1022
+ # @return [::Gapic::Operation]
1023
+ #
1024
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1025
+ #
1026
+ def create_service_rollout request, options = nil
1027
+ raise ::ArgumentError, "request must be provided" if request.nil?
1028
+
1029
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::CreateServiceRolloutRequest
1030
+
1031
+ # Converts hash and nil to an options object
1032
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1033
+
1034
+ # Customize the options with defaults
1035
+ metadata = @config.rpcs.create_service_rollout.metadata.to_h
1036
+
1037
+ # Set x-goog-api-client and x-goog-user-project headers
1038
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1039
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1040
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
1041
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1042
+
1043
+ header_params = {
1044
+ "service_name" => request.service_name
1045
+ }
1046
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1047
+ metadata[:"x-goog-request-params"] ||= request_params_header
1048
+
1049
+ options.apply_defaults timeout: @config.rpcs.create_service_rollout.timeout,
1050
+ metadata: metadata,
1051
+ retry_policy: @config.rpcs.create_service_rollout.retry_policy
1052
+ options.apply_defaults metadata: @config.metadata,
1053
+ retry_policy: @config.retry_policy
1054
+
1055
+ @service_manager_stub.call_rpc :create_service_rollout, request, options: options do |response, operation|
1056
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1057
+ yield response, operation if block_given?
1058
+ return response
1059
+ end
1060
+ rescue ::GRPC::BadStatus => e
1061
+ raise ::Google::Cloud::Error.from_error(e)
1062
+ end
1063
+
1064
+ ##
1065
+ # Generates and returns a report (errors, warnings and changes from
1066
+ # existing configurations) associated with
1067
+ # GenerateConfigReportRequest.new_value
1068
+ #
1069
+ # If GenerateConfigReportRequest.old_value is specified,
1070
+ # GenerateConfigReportRequest will contain a single ChangeReport based on the
1071
+ # comparison between GenerateConfigReportRequest.new_value and
1072
+ # GenerateConfigReportRequest.old_value.
1073
+ # If GenerateConfigReportRequest.old_value is not specified, this method
1074
+ # will compare GenerateConfigReportRequest.new_value with the last pushed
1075
+ # service configuration.
1076
+ #
1077
+ # @overload generate_config_report(request, options = nil)
1078
+ # Pass arguments to `generate_config_report` via a request object, either of type
1079
+ # {::Google::Cloud::ServiceManagement::V1::GenerateConfigReportRequest} or an equivalent Hash.
1080
+ #
1081
+ # @param request [::Google::Cloud::ServiceManagement::V1::GenerateConfigReportRequest, ::Hash]
1082
+ # A request object representing the call parameters. Required. To specify no
1083
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1084
+ # @param options [::Gapic::CallOptions, ::Hash]
1085
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1086
+ #
1087
+ # @overload generate_config_report(new_config: nil, old_config: nil)
1088
+ # Pass arguments to `generate_config_report` via keyword arguments. Note that at
1089
+ # least one keyword argument is required. To specify no parameters, or to keep all
1090
+ # the default parameter values, pass an empty Hash as a request object (see above).
1091
+ #
1092
+ # @param new_config [::Google::Protobuf::Any, ::Hash]
1093
+ # Required. Service configuration for which we want to generate the report.
1094
+ # For this version of API, the supported types are
1095
+ # {::Google::Cloud::ServiceManagement::V1::ConfigRef google.api.servicemanagement.v1.ConfigRef},
1096
+ # {::Google::Cloud::ServiceManagement::V1::ConfigSource google.api.servicemanagement.v1.ConfigSource},
1097
+ # and {::Google::Api::Service google.api.Service}
1098
+ # @param old_config [::Google::Protobuf::Any, ::Hash]
1099
+ # Optional. Service configuration against which the comparison will be done.
1100
+ # For this version of API, the supported types are
1101
+ # {::Google::Cloud::ServiceManagement::V1::ConfigRef google.api.servicemanagement.v1.ConfigRef},
1102
+ # {::Google::Cloud::ServiceManagement::V1::ConfigSource google.api.servicemanagement.v1.ConfigSource},
1103
+ # and {::Google::Api::Service google.api.Service}
1104
+ #
1105
+ # @yield [response, operation] Access the result along with the RPC operation
1106
+ # @yieldparam response [::Google::Cloud::ServiceManagement::V1::GenerateConfigReportResponse]
1107
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1108
+ #
1109
+ # @return [::Google::Cloud::ServiceManagement::V1::GenerateConfigReportResponse]
1110
+ #
1111
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1112
+ #
1113
+ def generate_config_report request, options = nil
1114
+ raise ::ArgumentError, "request must be provided" if request.nil?
1115
+
1116
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::GenerateConfigReportRequest
1117
+
1118
+ # Converts hash and nil to an options object
1119
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1120
+
1121
+ # Customize the options with defaults
1122
+ metadata = @config.rpcs.generate_config_report.metadata.to_h
1123
+
1124
+ # Set x-goog-api-client and x-goog-user-project headers
1125
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1126
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1127
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
1128
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1129
+
1130
+ options.apply_defaults timeout: @config.rpcs.generate_config_report.timeout,
1131
+ metadata: metadata,
1132
+ retry_policy: @config.rpcs.generate_config_report.retry_policy
1133
+ options.apply_defaults metadata: @config.metadata,
1134
+ retry_policy: @config.retry_policy
1135
+
1136
+ @service_manager_stub.call_rpc :generate_config_report, request, options: options do |response, operation|
1137
+ yield response, operation if block_given?
1138
+ return response
1139
+ end
1140
+ rescue ::GRPC::BadStatus => e
1141
+ raise ::Google::Cloud::Error.from_error(e)
1142
+ end
1143
+
1144
+ ##
1145
+ # Enables a {::Google::Cloud::ServiceManagement::V1::ManagedService service} for a project, so it can be used
1146
+ # for the project. See
1147
+ # [Cloud Auth Guide](https://cloud.google.com/docs/authentication) for
1148
+ # more information.
1149
+ #
1150
+ # Operation<response: EnableServiceResponse>
1151
+ #
1152
+ # @overload enable_service(request, options = nil)
1153
+ # Pass arguments to `enable_service` via a request object, either of type
1154
+ # {::Google::Cloud::ServiceManagement::V1::EnableServiceRequest} or an equivalent Hash.
1155
+ #
1156
+ # @param request [::Google::Cloud::ServiceManagement::V1::EnableServiceRequest, ::Hash]
1157
+ # A request object representing the call parameters. Required. To specify no
1158
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1159
+ # @param options [::Gapic::CallOptions, ::Hash]
1160
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1161
+ #
1162
+ # @overload enable_service(service_name: nil, consumer_id: nil)
1163
+ # Pass arguments to `enable_service` via keyword arguments. Note that at
1164
+ # least one keyword argument is required. To specify no parameters, or to keep all
1165
+ # the default parameter values, pass an empty Hash as a request object (see above).
1166
+ #
1167
+ # @param service_name [::String]
1168
+ # Required. Name of the service to enable. Specifying an unknown service name will
1169
+ # cause the request to fail.
1170
+ # @param consumer_id [::String]
1171
+ # Required. The identity of consumer resource which service enablement will be
1172
+ # applied to.
1173
+ #
1174
+ # The Google Service Management implementation accepts the following
1175
+ # forms:
1176
+ # - "project:<project_id>"
1177
+ #
1178
+ # Note: this is made compatible with
1179
+ # google.api.servicecontrol.v1.Operation.consumer_id.
1180
+ #
1181
+ # @yield [response, operation] Access the result along with the RPC operation
1182
+ # @yieldparam response [::Gapic::Operation]
1183
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1184
+ #
1185
+ # @return [::Gapic::Operation]
1186
+ #
1187
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1188
+ #
1189
+ def enable_service request, options = nil
1190
+ raise ::ArgumentError, "request must be provided" if request.nil?
1191
+
1192
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::EnableServiceRequest
1193
+
1194
+ # Converts hash and nil to an options object
1195
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1196
+
1197
+ # Customize the options with defaults
1198
+ metadata = @config.rpcs.enable_service.metadata.to_h
1199
+
1200
+ # Set x-goog-api-client and x-goog-user-project headers
1201
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1202
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1203
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
1204
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1205
+
1206
+ header_params = {
1207
+ "service_name" => request.service_name
1208
+ }
1209
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1210
+ metadata[:"x-goog-request-params"] ||= request_params_header
1211
+
1212
+ options.apply_defaults timeout: @config.rpcs.enable_service.timeout,
1213
+ metadata: metadata,
1214
+ retry_policy: @config.rpcs.enable_service.retry_policy
1215
+ options.apply_defaults metadata: @config.metadata,
1216
+ retry_policy: @config.retry_policy
1217
+
1218
+ @service_manager_stub.call_rpc :enable_service, request, options: options do |response, operation|
1219
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1220
+ yield response, operation if block_given?
1221
+ return response
1222
+ end
1223
+ rescue ::GRPC::BadStatus => e
1224
+ raise ::Google::Cloud::Error.from_error(e)
1225
+ end
1226
+
1227
+ ##
1228
+ # Disables a {::Google::Cloud::ServiceManagement::V1::ManagedService service} for a project, so it can no longer be
1229
+ # be used for the project. It prevents accidental usage that may cause
1230
+ # unexpected billing charges or security leaks.
1231
+ #
1232
+ # Operation<response: DisableServiceResponse>
1233
+ #
1234
+ # @overload disable_service(request, options = nil)
1235
+ # Pass arguments to `disable_service` via a request object, either of type
1236
+ # {::Google::Cloud::ServiceManagement::V1::DisableServiceRequest} or an equivalent Hash.
1237
+ #
1238
+ # @param request [::Google::Cloud::ServiceManagement::V1::DisableServiceRequest, ::Hash]
1239
+ # A request object representing the call parameters. Required. To specify no
1240
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1241
+ # @param options [::Gapic::CallOptions, ::Hash]
1242
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1243
+ #
1244
+ # @overload disable_service(service_name: nil, consumer_id: nil)
1245
+ # Pass arguments to `disable_service` via keyword arguments. Note that at
1246
+ # least one keyword argument is required. To specify no parameters, or to keep all
1247
+ # the default parameter values, pass an empty Hash as a request object (see above).
1248
+ #
1249
+ # @param service_name [::String]
1250
+ # Required. Name of the service to disable. Specifying an unknown service name
1251
+ # will cause the request to fail.
1252
+ # @param consumer_id [::String]
1253
+ # Required. The identity of consumer resource which service disablement will be
1254
+ # applied to.
1255
+ #
1256
+ # The Google Service Management implementation accepts the following
1257
+ # forms:
1258
+ # - "project:<project_id>"
1259
+ #
1260
+ # Note: this is made compatible with
1261
+ # google.api.servicecontrol.v1.Operation.consumer_id.
1262
+ #
1263
+ # @yield [response, operation] Access the result along with the RPC operation
1264
+ # @yieldparam response [::Gapic::Operation]
1265
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1266
+ #
1267
+ # @return [::Gapic::Operation]
1268
+ #
1269
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1270
+ #
1271
+ def disable_service request, options = nil
1272
+ raise ::ArgumentError, "request must be provided" if request.nil?
1273
+
1274
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ServiceManagement::V1::DisableServiceRequest
1275
+
1276
+ # Converts hash and nil to an options object
1277
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1278
+
1279
+ # Customize the options with defaults
1280
+ metadata = @config.rpcs.disable_service.metadata.to_h
1281
+
1282
+ # Set x-goog-api-client and x-goog-user-project headers
1283
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1284
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1285
+ gapic_version: ::Google::Cloud::ServiceManagement::V1::VERSION
1286
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1287
+
1288
+ header_params = {
1289
+ "service_name" => request.service_name
1290
+ }
1291
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1292
+ metadata[:"x-goog-request-params"] ||= request_params_header
1293
+
1294
+ options.apply_defaults timeout: @config.rpcs.disable_service.timeout,
1295
+ metadata: metadata,
1296
+ retry_policy: @config.rpcs.disable_service.retry_policy
1297
+ options.apply_defaults metadata: @config.metadata,
1298
+ retry_policy: @config.retry_policy
1299
+
1300
+ @service_manager_stub.call_rpc :disable_service, request, options: options do |response, operation|
1301
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1302
+ yield response, operation if block_given?
1303
+ return response
1304
+ end
1305
+ rescue ::GRPC::BadStatus => e
1306
+ raise ::Google::Cloud::Error.from_error(e)
1307
+ end
1308
+
1309
+ ##
1310
+ # Configuration class for the ServiceManager API.
1311
+ #
1312
+ # This class represents the configuration for ServiceManager,
1313
+ # providing control over timeouts, retry behavior, logging, transport
1314
+ # parameters, and other low-level controls. Certain parameters can also be
1315
+ # applied individually to specific RPCs. See
1316
+ # {::Google::Cloud::ServiceManagement::V1::ServiceManager::Client::Configuration::Rpcs}
1317
+ # for a list of RPCs that can be configured independently.
1318
+ #
1319
+ # Configuration can be applied globally to all clients, or to a single client
1320
+ # on construction.
1321
+ #
1322
+ # # Examples
1323
+ #
1324
+ # To modify the global config, setting the timeout for list_services
1325
+ # to 20 seconds, and all remaining timeouts to 10 seconds:
1326
+ #
1327
+ # ::Google::Cloud::ServiceManagement::V1::ServiceManager::Client.configure do |config|
1328
+ # config.timeout = 10.0
1329
+ # config.rpcs.list_services.timeout = 20.0
1330
+ # end
1331
+ #
1332
+ # To apply the above configuration only to a new client:
1333
+ #
1334
+ # client = ::Google::Cloud::ServiceManagement::V1::ServiceManager::Client.new do |config|
1335
+ # config.timeout = 10.0
1336
+ # config.rpcs.list_services.timeout = 20.0
1337
+ # end
1338
+ #
1339
+ # @!attribute [rw] endpoint
1340
+ # The hostname or hostname:port of the service endpoint.
1341
+ # Defaults to `"servicemanagement.googleapis.com"`.
1342
+ # @return [::String]
1343
+ # @!attribute [rw] credentials
1344
+ # Credentials to send with calls. You may provide any of the following types:
1345
+ # * (`String`) The path to a service account key file in JSON format
1346
+ # * (`Hash`) A service account key as a Hash
1347
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
1348
+ # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
1349
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
1350
+ # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
1351
+ # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
1352
+ # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
1353
+ # * (`nil`) indicating no credentials
1354
+ # @return [::Object]
1355
+ # @!attribute [rw] scope
1356
+ # The OAuth scopes
1357
+ # @return [::Array<::String>]
1358
+ # @!attribute [rw] lib_name
1359
+ # The library name as recorded in instrumentation and logging
1360
+ # @return [::String]
1361
+ # @!attribute [rw] lib_version
1362
+ # The library version as recorded in instrumentation and logging
1363
+ # @return [::String]
1364
+ # @!attribute [rw] channel_args
1365
+ # Extra parameters passed to the gRPC channel. Note: this is ignored if a
1366
+ # `GRPC::Core::Channel` object is provided as the credential.
1367
+ # @return [::Hash]
1368
+ # @!attribute [rw] interceptors
1369
+ # An array of interceptors that are run before calls are executed.
1370
+ # @return [::Array<::GRPC::ClientInterceptor>]
1371
+ # @!attribute [rw] timeout
1372
+ # The call timeout in seconds.
1373
+ # @return [::Numeric]
1374
+ # @!attribute [rw] metadata
1375
+ # Additional gRPC headers to be sent with the call.
1376
+ # @return [::Hash{::Symbol=>::String}]
1377
+ # @!attribute [rw] retry_policy
1378
+ # The retry policy. The value is a hash with the following keys:
1379
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
1380
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
1381
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
1382
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
1383
+ # trigger a retry.
1384
+ # @return [::Hash]
1385
+ # @!attribute [rw] quota_project
1386
+ # A separate project against which to charge quota.
1387
+ # @return [::String]
1388
+ #
1389
+ class Configuration
1390
+ extend ::Gapic::Config
1391
+
1392
+ config_attr :endpoint, "servicemanagement.googleapis.com", ::String
1393
+ config_attr :credentials, nil do |value|
1394
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1395
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
1396
+ allowed.any? { |klass| klass === value }
1397
+ end
1398
+ config_attr :scope, nil, ::String, ::Array, nil
1399
+ config_attr :lib_name, nil, ::String, nil
1400
+ config_attr :lib_version, nil, ::String, nil
1401
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
1402
+ config_attr :interceptors, nil, ::Array, nil
1403
+ config_attr :timeout, nil, ::Numeric, nil
1404
+ config_attr :metadata, nil, ::Hash, nil
1405
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1406
+ config_attr :quota_project, nil, ::String, nil
1407
+
1408
+ # @private
1409
+ def initialize parent_config = nil
1410
+ @parent_config = parent_config unless parent_config.nil?
1411
+
1412
+ yield self if block_given?
1413
+ end
1414
+
1415
+ ##
1416
+ # Configurations for individual RPCs
1417
+ # @return [Rpcs]
1418
+ #
1419
+ def rpcs
1420
+ @rpcs ||= begin
1421
+ parent_rpcs = nil
1422
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
1423
+ Rpcs.new parent_rpcs
1424
+ end
1425
+ end
1426
+
1427
+ ##
1428
+ # Configuration RPC class for the ServiceManager API.
1429
+ #
1430
+ # Includes fields providing the configuration for each RPC in this service.
1431
+ # Each configuration object is of type `Gapic::Config::Method` and includes
1432
+ # the following configuration fields:
1433
+ #
1434
+ # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
1435
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
1436
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
1437
+ # include the following keys:
1438
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
1439
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
1440
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
1441
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
1442
+ # trigger a retry.
1443
+ #
1444
+ class Rpcs
1445
+ ##
1446
+ # RPC-specific configuration for `list_services`
1447
+ # @return [::Gapic::Config::Method]
1448
+ #
1449
+ attr_reader :list_services
1450
+ ##
1451
+ # RPC-specific configuration for `get_service`
1452
+ # @return [::Gapic::Config::Method]
1453
+ #
1454
+ attr_reader :get_service
1455
+ ##
1456
+ # RPC-specific configuration for `create_service`
1457
+ # @return [::Gapic::Config::Method]
1458
+ #
1459
+ attr_reader :create_service
1460
+ ##
1461
+ # RPC-specific configuration for `delete_service`
1462
+ # @return [::Gapic::Config::Method]
1463
+ #
1464
+ attr_reader :delete_service
1465
+ ##
1466
+ # RPC-specific configuration for `undelete_service`
1467
+ # @return [::Gapic::Config::Method]
1468
+ #
1469
+ attr_reader :undelete_service
1470
+ ##
1471
+ # RPC-specific configuration for `list_service_configs`
1472
+ # @return [::Gapic::Config::Method]
1473
+ #
1474
+ attr_reader :list_service_configs
1475
+ ##
1476
+ # RPC-specific configuration for `get_service_config`
1477
+ # @return [::Gapic::Config::Method]
1478
+ #
1479
+ attr_reader :get_service_config
1480
+ ##
1481
+ # RPC-specific configuration for `create_service_config`
1482
+ # @return [::Gapic::Config::Method]
1483
+ #
1484
+ attr_reader :create_service_config
1485
+ ##
1486
+ # RPC-specific configuration for `submit_config_source`
1487
+ # @return [::Gapic::Config::Method]
1488
+ #
1489
+ attr_reader :submit_config_source
1490
+ ##
1491
+ # RPC-specific configuration for `list_service_rollouts`
1492
+ # @return [::Gapic::Config::Method]
1493
+ #
1494
+ attr_reader :list_service_rollouts
1495
+ ##
1496
+ # RPC-specific configuration for `get_service_rollout`
1497
+ # @return [::Gapic::Config::Method]
1498
+ #
1499
+ attr_reader :get_service_rollout
1500
+ ##
1501
+ # RPC-specific configuration for `create_service_rollout`
1502
+ # @return [::Gapic::Config::Method]
1503
+ #
1504
+ attr_reader :create_service_rollout
1505
+ ##
1506
+ # RPC-specific configuration for `generate_config_report`
1507
+ # @return [::Gapic::Config::Method]
1508
+ #
1509
+ attr_reader :generate_config_report
1510
+ ##
1511
+ # RPC-specific configuration for `enable_service`
1512
+ # @return [::Gapic::Config::Method]
1513
+ #
1514
+ attr_reader :enable_service
1515
+ ##
1516
+ # RPC-specific configuration for `disable_service`
1517
+ # @return [::Gapic::Config::Method]
1518
+ #
1519
+ attr_reader :disable_service
1520
+
1521
+ # @private
1522
+ def initialize parent_rpcs = nil
1523
+ list_services_config = parent_rpcs&.list_services if parent_rpcs&.respond_to? :list_services
1524
+ @list_services = ::Gapic::Config::Method.new list_services_config
1525
+ get_service_config = parent_rpcs&.get_service if parent_rpcs&.respond_to? :get_service
1526
+ @get_service = ::Gapic::Config::Method.new get_service_config
1527
+ create_service_config = parent_rpcs&.create_service if parent_rpcs&.respond_to? :create_service
1528
+ @create_service = ::Gapic::Config::Method.new create_service_config
1529
+ delete_service_config = parent_rpcs&.delete_service if parent_rpcs&.respond_to? :delete_service
1530
+ @delete_service = ::Gapic::Config::Method.new delete_service_config
1531
+ undelete_service_config = parent_rpcs&.undelete_service if parent_rpcs&.respond_to? :undelete_service
1532
+ @undelete_service = ::Gapic::Config::Method.new undelete_service_config
1533
+ list_service_configs_config = parent_rpcs&.list_service_configs if parent_rpcs&.respond_to? :list_service_configs
1534
+ @list_service_configs = ::Gapic::Config::Method.new list_service_configs_config
1535
+ get_service_config_config = parent_rpcs&.get_service_config if parent_rpcs&.respond_to? :get_service_config
1536
+ @get_service_config = ::Gapic::Config::Method.new get_service_config_config
1537
+ create_service_config_config = parent_rpcs&.create_service_config if parent_rpcs&.respond_to? :create_service_config
1538
+ @create_service_config = ::Gapic::Config::Method.new create_service_config_config
1539
+ submit_config_source_config = parent_rpcs&.submit_config_source if parent_rpcs&.respond_to? :submit_config_source
1540
+ @submit_config_source = ::Gapic::Config::Method.new submit_config_source_config
1541
+ list_service_rollouts_config = parent_rpcs&.list_service_rollouts if parent_rpcs&.respond_to? :list_service_rollouts
1542
+ @list_service_rollouts = ::Gapic::Config::Method.new list_service_rollouts_config
1543
+ get_service_rollout_config = parent_rpcs&.get_service_rollout if parent_rpcs&.respond_to? :get_service_rollout
1544
+ @get_service_rollout = ::Gapic::Config::Method.new get_service_rollout_config
1545
+ create_service_rollout_config = parent_rpcs&.create_service_rollout if parent_rpcs&.respond_to? :create_service_rollout
1546
+ @create_service_rollout = ::Gapic::Config::Method.new create_service_rollout_config
1547
+ generate_config_report_config = parent_rpcs&.generate_config_report if parent_rpcs&.respond_to? :generate_config_report
1548
+ @generate_config_report = ::Gapic::Config::Method.new generate_config_report_config
1549
+ enable_service_config = parent_rpcs&.enable_service if parent_rpcs&.respond_to? :enable_service
1550
+ @enable_service = ::Gapic::Config::Method.new enable_service_config
1551
+ disable_service_config = parent_rpcs&.disable_service if parent_rpcs&.respond_to? :disable_service
1552
+ @disable_service = ::Gapic::Config::Method.new disable_service_config
1553
+
1554
+ yield self if block_given?
1555
+ end
1556
+ end
1557
+ end
1558
+ end
1559
+ end
1560
+ end
1561
+ end
1562
+ end
1563
+ end