google-cloud-retail-v2 0.10.0 → 0.11.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 (45) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/retail/v2/catalog_pb.rb +55 -0
  3. data/lib/google/cloud/retail/v2/catalog_service/client.rb +718 -0
  4. data/lib/google/cloud/retail/v2/catalog_service/paths.rb +38 -0
  5. data/lib/google/cloud/retail/v2/catalog_service_pb.rb +34 -0
  6. data/lib/google/cloud/retail/v2/catalog_service_services_pb.rb +38 -0
  7. data/lib/google/cloud/retail/v2/common_pb.rb +86 -0
  8. data/lib/google/cloud/retail/v2/completion_service/client.rb +4 -3
  9. data/lib/google/cloud/retail/v2/control_pb.rb +33 -0
  10. data/lib/google/cloud/retail/v2/control_service/client.rb +807 -0
  11. data/lib/google/cloud/retail/v2/control_service/credentials.rb +51 -0
  12. data/lib/google/cloud/retail/v2/control_service/paths.rb +73 -0
  13. data/lib/google/cloud/retail/v2/control_service.rb +49 -0
  14. data/lib/google/cloud/retail/v2/control_service_pb.rb +57 -0
  15. data/lib/google/cloud/retail/v2/control_service_services_pb.rb +65 -0
  16. data/lib/google/cloud/retail/v2/prediction_service_pb.rb +0 -1
  17. data/lib/google/cloud/retail/v2/product_pb.rb +1 -0
  18. data/lib/google/cloud/retail/v2/product_service/client.rb +42 -12
  19. data/lib/google/cloud/retail/v2/product_service_services_pb.rb +35 -0
  20. data/lib/google/cloud/retail/v2/search_service/client.rb +12 -1
  21. data/lib/google/cloud/retail/v2/search_service_pb.rb +1 -0
  22. data/lib/google/cloud/retail/v2/serving_config_pb.rb +44 -0
  23. data/lib/google/cloud/retail/v2/serving_config_service/client.rb +998 -0
  24. data/lib/google/cloud/retail/v2/serving_config_service/credentials.rb +51 -0
  25. data/lib/google/cloud/retail/v2/serving_config_service/paths.rb +73 -0
  26. data/lib/google/cloud/retail/v2/serving_config_service.rb +49 -0
  27. data/lib/google/cloud/retail/v2/serving_config_service_pb.rb +66 -0
  28. data/lib/google/cloud/retail/v2/serving_config_service_services_pb.rb +74 -0
  29. data/lib/google/cloud/retail/v2/user_event_service/client.rb +2 -2
  30. data/lib/google/cloud/retail/v2/user_event_service_pb.rb +0 -1
  31. data/lib/google/cloud/retail/v2/user_event_service_services_pb.rb +2 -2
  32. data/lib/google/cloud/retail/v2/version.rb +1 -1
  33. data/lib/google/cloud/retail/v2.rb +2 -0
  34. data/proto_docs/google/cloud/retail/v2/catalog.rb +233 -0
  35. data/proto_docs/google/cloud/retail/v2/catalog_service.rb +133 -0
  36. data/proto_docs/google/cloud/retail/v2/common.rb +314 -4
  37. data/proto_docs/google/cloud/retail/v2/completion_service.rb +2 -1
  38. data/proto_docs/google/cloud/retail/v2/control.rb +76 -0
  39. data/proto_docs/google/cloud/retail/v2/control_service.rb +122 -0
  40. data/proto_docs/google/cloud/retail/v2/import_config.rb +20 -35
  41. data/proto_docs/google/cloud/retail/v2/product.rb +7 -1
  42. data/proto_docs/google/cloud/retail/v2/search_service.rb +29 -2
  43. data/proto_docs/google/cloud/retail/v2/serving_config.rb +238 -0
  44. data/proto_docs/google/cloud/retail/v2/serving_config_service.rb +143 -0
  45. metadata +20 -2
@@ -0,0 +1,998 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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/retail/v2/serving_config_service_pb"
21
+
22
+ module Google
23
+ module Cloud
24
+ module Retail
25
+ module V2
26
+ module ServingConfigService
27
+ ##
28
+ # Client for the ServingConfigService service.
29
+ #
30
+ # Service for modifying ServingConfig.
31
+ #
32
+ class Client
33
+ include Paths
34
+
35
+ # @private
36
+ attr_reader :serving_config_service_stub
37
+
38
+ ##
39
+ # Configure the ServingConfigService Client class.
40
+ #
41
+ # See {::Google::Cloud::Retail::V2::ServingConfigService::Client::Configuration}
42
+ # for a description of the configuration fields.
43
+ #
44
+ # @example
45
+ #
46
+ # # Modify the configuration for all ServingConfigService clients
47
+ # ::Google::Cloud::Retail::V2::ServingConfigService::Client.configure do |config|
48
+ # config.timeout = 10.0
49
+ # end
50
+ #
51
+ # @yield [config] Configure the Client client.
52
+ # @yieldparam config [Client::Configuration]
53
+ #
54
+ # @return [Client::Configuration]
55
+ #
56
+ def self.configure
57
+ @configure ||= begin
58
+ namespace = ["Google", "Cloud", "Retail", "V2"]
59
+ parent_config = while namespace.any?
60
+ parent_name = namespace.join "::"
61
+ parent_const = const_get parent_name
62
+ break parent_const.configure if parent_const.respond_to? :configure
63
+ namespace.pop
64
+ end
65
+ default_config = Client::Configuration.new parent_config
66
+
67
+ default_config
68
+ end
69
+ yield @configure if block_given?
70
+ @configure
71
+ end
72
+
73
+ ##
74
+ # Configure the ServingConfigService Client instance.
75
+ #
76
+ # The configuration is set to the derived mode, meaning that values can be changed,
77
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
78
+ # should be made on {Client.configure}.
79
+ #
80
+ # See {::Google::Cloud::Retail::V2::ServingConfigService::Client::Configuration}
81
+ # for a description of the configuration fields.
82
+ #
83
+ # @yield [config] Configure the Client client.
84
+ # @yieldparam config [Client::Configuration]
85
+ #
86
+ # @return [Client::Configuration]
87
+ #
88
+ def configure
89
+ yield @config if block_given?
90
+ @config
91
+ end
92
+
93
+ ##
94
+ # Create a new ServingConfigService client object.
95
+ #
96
+ # @example
97
+ #
98
+ # # Create a client using the default configuration
99
+ # client = ::Google::Cloud::Retail::V2::ServingConfigService::Client.new
100
+ #
101
+ # # Create a client using a custom configuration
102
+ # client = ::Google::Cloud::Retail::V2::ServingConfigService::Client.new do |config|
103
+ # config.timeout = 10.0
104
+ # end
105
+ #
106
+ # @yield [config] Configure the ServingConfigService client.
107
+ # @yieldparam config [Client::Configuration]
108
+ #
109
+ def initialize
110
+ # These require statements are intentionally placed here to initialize
111
+ # the gRPC module only when it's required.
112
+ # See https://github.com/googleapis/toolkit/issues/446
113
+ require "gapic/grpc"
114
+ require "google/cloud/retail/v2/serving_config_service_services_pb"
115
+
116
+ # Create the configuration object
117
+ @config = Configuration.new Client.configure
118
+
119
+ # Yield the configuration if needed
120
+ yield @config if block_given?
121
+
122
+ # Create credentials
123
+ credentials = @config.credentials
124
+ # Use self-signed JWT if the endpoint is unchanged from default,
125
+ # but only if the default endpoint does not have a region prefix.
126
+ enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint &&
127
+ !@config.endpoint.split(".").first.include?("-")
128
+ credentials ||= Credentials.default scope: @config.scope,
129
+ enable_self_signed_jwt: enable_self_signed_jwt
130
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
131
+ credentials = Credentials.new credentials, scope: @config.scope
132
+ end
133
+ @quota_project_id = @config.quota_project
134
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
135
+
136
+ @serving_config_service_stub = ::Gapic::ServiceStub.new(
137
+ ::Google::Cloud::Retail::V2::ServingConfigService::Stub,
138
+ credentials: credentials,
139
+ endpoint: @config.endpoint,
140
+ channel_args: @config.channel_args,
141
+ interceptors: @config.interceptors
142
+ )
143
+ end
144
+
145
+ # Service calls
146
+
147
+ ##
148
+ # Creates a ServingConfig.
149
+ #
150
+ # A maximum of 100 {::Google::Cloud::Retail::V2::ServingConfig ServingConfig}s are
151
+ # allowed in a {::Google::Cloud::Retail::V2::Catalog Catalog}, otherwise a
152
+ # FAILED_PRECONDITION error is returned.
153
+ #
154
+ # @overload create_serving_config(request, options = nil)
155
+ # Pass arguments to `create_serving_config` via a request object, either of type
156
+ # {::Google::Cloud::Retail::V2::CreateServingConfigRequest} or an equivalent Hash.
157
+ #
158
+ # @param request [::Google::Cloud::Retail::V2::CreateServingConfigRequest, ::Hash]
159
+ # A request object representing the call parameters. Required. To specify no
160
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
161
+ # @param options [::Gapic::CallOptions, ::Hash]
162
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
163
+ #
164
+ # @overload create_serving_config(parent: nil, serving_config: nil, serving_config_id: nil)
165
+ # Pass arguments to `create_serving_config` via keyword arguments. Note that at
166
+ # least one keyword argument is required. To specify no parameters, or to keep all
167
+ # the default parameter values, pass an empty Hash as a request object (see above).
168
+ #
169
+ # @param parent [::String]
170
+ # Required. Full resource name of parent. Format:
171
+ # `projects/{project_number}/locations/{location_id}/catalogs/{catalog_id}`
172
+ # @param serving_config [::Google::Cloud::Retail::V2::ServingConfig, ::Hash]
173
+ # Required. The ServingConfig to create.
174
+ # @param serving_config_id [::String]
175
+ # Required. The ID to use for the ServingConfig, which will become the final
176
+ # component of the ServingConfig's resource name.
177
+ #
178
+ # This value should be 4-63 characters, and valid characters
179
+ # are /[a-z][0-9]-_/.
180
+ #
181
+ # @yield [response, operation] Access the result along with the RPC operation
182
+ # @yieldparam response [::Google::Cloud::Retail::V2::ServingConfig]
183
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
184
+ #
185
+ # @return [::Google::Cloud::Retail::V2::ServingConfig]
186
+ #
187
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
188
+ #
189
+ # @example Basic example
190
+ # require "google/cloud/retail/v2"
191
+ #
192
+ # # Create a client object. The client can be reused for multiple calls.
193
+ # client = Google::Cloud::Retail::V2::ServingConfigService::Client.new
194
+ #
195
+ # # Create a request. To set request fields, pass in keyword arguments.
196
+ # request = Google::Cloud::Retail::V2::CreateServingConfigRequest.new
197
+ #
198
+ # # Call the create_serving_config method.
199
+ # result = client.create_serving_config request
200
+ #
201
+ # # The returned object is of type Google::Cloud::Retail::V2::ServingConfig.
202
+ # p result
203
+ #
204
+ def create_serving_config request, options = nil
205
+ raise ::ArgumentError, "request must be provided" if request.nil?
206
+
207
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Retail::V2::CreateServingConfigRequest
208
+
209
+ # Converts hash and nil to an options object
210
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
211
+
212
+ # Customize the options with defaults
213
+ metadata = @config.rpcs.create_serving_config.metadata.to_h
214
+
215
+ # Set x-goog-api-client and x-goog-user-project headers
216
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
217
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
218
+ gapic_version: ::Google::Cloud::Retail::V2::VERSION
219
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
220
+
221
+ header_params = {}
222
+ if request.parent
223
+ header_params["parent"] = request.parent
224
+ end
225
+
226
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
227
+ metadata[:"x-goog-request-params"] ||= request_params_header
228
+
229
+ options.apply_defaults timeout: @config.rpcs.create_serving_config.timeout,
230
+ metadata: metadata,
231
+ retry_policy: @config.rpcs.create_serving_config.retry_policy
232
+
233
+ options.apply_defaults timeout: @config.timeout,
234
+ metadata: @config.metadata,
235
+ retry_policy: @config.retry_policy
236
+
237
+ @serving_config_service_stub.call_rpc :create_serving_config, request, options: options do |response, operation|
238
+ yield response, operation if block_given?
239
+ return response
240
+ end
241
+ rescue ::GRPC::BadStatus => e
242
+ raise ::Google::Cloud::Error.from_error(e)
243
+ end
244
+
245
+ ##
246
+ # Deletes a ServingConfig.
247
+ #
248
+ # Returns a NotFound error if the ServingConfig does not exist.
249
+ #
250
+ # @overload delete_serving_config(request, options = nil)
251
+ # Pass arguments to `delete_serving_config` via a request object, either of type
252
+ # {::Google::Cloud::Retail::V2::DeleteServingConfigRequest} or an equivalent Hash.
253
+ #
254
+ # @param request [::Google::Cloud::Retail::V2::DeleteServingConfigRequest, ::Hash]
255
+ # A request object representing the call parameters. Required. To specify no
256
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
257
+ # @param options [::Gapic::CallOptions, ::Hash]
258
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
259
+ #
260
+ # @overload delete_serving_config(name: nil)
261
+ # Pass arguments to `delete_serving_config` via keyword arguments. Note that at
262
+ # least one keyword argument is required. To specify no parameters, or to keep all
263
+ # the default parameter values, pass an empty Hash as a request object (see above).
264
+ #
265
+ # @param name [::String]
266
+ # Required. The resource name of the ServingConfig to delete. Format:
267
+ # projects/\\{project_number}/locations/\\{location_id}/catalogs/\\{catalog_id}/servingConfigs/\\{serving_config_id}
268
+ #
269
+ # @yield [response, operation] Access the result along with the RPC operation
270
+ # @yieldparam response [::Google::Protobuf::Empty]
271
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
272
+ #
273
+ # @return [::Google::Protobuf::Empty]
274
+ #
275
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
276
+ #
277
+ # @example Basic example
278
+ # require "google/cloud/retail/v2"
279
+ #
280
+ # # Create a client object. The client can be reused for multiple calls.
281
+ # client = Google::Cloud::Retail::V2::ServingConfigService::Client.new
282
+ #
283
+ # # Create a request. To set request fields, pass in keyword arguments.
284
+ # request = Google::Cloud::Retail::V2::DeleteServingConfigRequest.new
285
+ #
286
+ # # Call the delete_serving_config method.
287
+ # result = client.delete_serving_config request
288
+ #
289
+ # # The returned object is of type Google::Protobuf::Empty.
290
+ # p result
291
+ #
292
+ def delete_serving_config request, options = nil
293
+ raise ::ArgumentError, "request must be provided" if request.nil?
294
+
295
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Retail::V2::DeleteServingConfigRequest
296
+
297
+ # Converts hash and nil to an options object
298
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
299
+
300
+ # Customize the options with defaults
301
+ metadata = @config.rpcs.delete_serving_config.metadata.to_h
302
+
303
+ # Set x-goog-api-client and x-goog-user-project headers
304
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
305
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
306
+ gapic_version: ::Google::Cloud::Retail::V2::VERSION
307
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
308
+
309
+ header_params = {}
310
+ if request.name
311
+ header_params["name"] = request.name
312
+ end
313
+
314
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
315
+ metadata[:"x-goog-request-params"] ||= request_params_header
316
+
317
+ options.apply_defaults timeout: @config.rpcs.delete_serving_config.timeout,
318
+ metadata: metadata,
319
+ retry_policy: @config.rpcs.delete_serving_config.retry_policy
320
+
321
+ options.apply_defaults timeout: @config.timeout,
322
+ metadata: @config.metadata,
323
+ retry_policy: @config.retry_policy
324
+
325
+ @serving_config_service_stub.call_rpc :delete_serving_config, request, options: options do |response, operation|
326
+ yield response, operation if block_given?
327
+ return response
328
+ end
329
+ rescue ::GRPC::BadStatus => e
330
+ raise ::Google::Cloud::Error.from_error(e)
331
+ end
332
+
333
+ ##
334
+ # Updates a ServingConfig.
335
+ #
336
+ # @overload update_serving_config(request, options = nil)
337
+ # Pass arguments to `update_serving_config` via a request object, either of type
338
+ # {::Google::Cloud::Retail::V2::UpdateServingConfigRequest} or an equivalent Hash.
339
+ #
340
+ # @param request [::Google::Cloud::Retail::V2::UpdateServingConfigRequest, ::Hash]
341
+ # A request object representing the call parameters. Required. To specify no
342
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
343
+ # @param options [::Gapic::CallOptions, ::Hash]
344
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
345
+ #
346
+ # @overload update_serving_config(serving_config: nil, update_mask: nil)
347
+ # Pass arguments to `update_serving_config` via keyword arguments. Note that at
348
+ # least one keyword argument is required. To specify no parameters, or to keep all
349
+ # the default parameter values, pass an empty Hash as a request object (see above).
350
+ #
351
+ # @param serving_config [::Google::Cloud::Retail::V2::ServingConfig, ::Hash]
352
+ # Required. The ServingConfig to update.
353
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
354
+ # Indicates which fields in the provided
355
+ # {::Google::Cloud::Retail::V2::ServingConfig ServingConfig} to update. The
356
+ # following are NOT supported:
357
+ #
358
+ # * {::Google::Cloud::Retail::V2::ServingConfig#name ServingConfig.name}
359
+ #
360
+ # If not set, all supported fields are updated.
361
+ #
362
+ # @yield [response, operation] Access the result along with the RPC operation
363
+ # @yieldparam response [::Google::Cloud::Retail::V2::ServingConfig]
364
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
365
+ #
366
+ # @return [::Google::Cloud::Retail::V2::ServingConfig]
367
+ #
368
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
369
+ #
370
+ # @example Basic example
371
+ # require "google/cloud/retail/v2"
372
+ #
373
+ # # Create a client object. The client can be reused for multiple calls.
374
+ # client = Google::Cloud::Retail::V2::ServingConfigService::Client.new
375
+ #
376
+ # # Create a request. To set request fields, pass in keyword arguments.
377
+ # request = Google::Cloud::Retail::V2::UpdateServingConfigRequest.new
378
+ #
379
+ # # Call the update_serving_config method.
380
+ # result = client.update_serving_config request
381
+ #
382
+ # # The returned object is of type Google::Cloud::Retail::V2::ServingConfig.
383
+ # p result
384
+ #
385
+ def update_serving_config request, options = nil
386
+ raise ::ArgumentError, "request must be provided" if request.nil?
387
+
388
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Retail::V2::UpdateServingConfigRequest
389
+
390
+ # Converts hash and nil to an options object
391
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
392
+
393
+ # Customize the options with defaults
394
+ metadata = @config.rpcs.update_serving_config.metadata.to_h
395
+
396
+ # Set x-goog-api-client and x-goog-user-project headers
397
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
398
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
399
+ gapic_version: ::Google::Cloud::Retail::V2::VERSION
400
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
401
+
402
+ header_params = {}
403
+ if request.serving_config&.name
404
+ header_params["serving_config.name"] = request.serving_config.name
405
+ end
406
+
407
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
408
+ metadata[:"x-goog-request-params"] ||= request_params_header
409
+
410
+ options.apply_defaults timeout: @config.rpcs.update_serving_config.timeout,
411
+ metadata: metadata,
412
+ retry_policy: @config.rpcs.update_serving_config.retry_policy
413
+
414
+ options.apply_defaults timeout: @config.timeout,
415
+ metadata: @config.metadata,
416
+ retry_policy: @config.retry_policy
417
+
418
+ @serving_config_service_stub.call_rpc :update_serving_config, request, options: options do |response, operation|
419
+ yield response, operation if block_given?
420
+ return response
421
+ end
422
+ rescue ::GRPC::BadStatus => e
423
+ raise ::Google::Cloud::Error.from_error(e)
424
+ end
425
+
426
+ ##
427
+ # Gets a ServingConfig.
428
+ #
429
+ # Returns a NotFound error if the ServingConfig does not exist.
430
+ #
431
+ # @overload get_serving_config(request, options = nil)
432
+ # Pass arguments to `get_serving_config` via a request object, either of type
433
+ # {::Google::Cloud::Retail::V2::GetServingConfigRequest} or an equivalent Hash.
434
+ #
435
+ # @param request [::Google::Cloud::Retail::V2::GetServingConfigRequest, ::Hash]
436
+ # A request object representing the call parameters. Required. To specify no
437
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
438
+ # @param options [::Gapic::CallOptions, ::Hash]
439
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
440
+ #
441
+ # @overload get_serving_config(name: nil)
442
+ # Pass arguments to `get_serving_config` via keyword arguments. Note that at
443
+ # least one keyword argument is required. To specify no parameters, or to keep all
444
+ # the default parameter values, pass an empty Hash as a request object (see above).
445
+ #
446
+ # @param name [::String]
447
+ # Required. The resource name of the ServingConfig to get. Format:
448
+ # projects/\\{project_number}/locations/\\{location_id}/catalogs/\\{catalog_id}/servingConfigs/\\{serving_config_id}
449
+ #
450
+ # @yield [response, operation] Access the result along with the RPC operation
451
+ # @yieldparam response [::Google::Cloud::Retail::V2::ServingConfig]
452
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
453
+ #
454
+ # @return [::Google::Cloud::Retail::V2::ServingConfig]
455
+ #
456
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
457
+ #
458
+ # @example Basic example
459
+ # require "google/cloud/retail/v2"
460
+ #
461
+ # # Create a client object. The client can be reused for multiple calls.
462
+ # client = Google::Cloud::Retail::V2::ServingConfigService::Client.new
463
+ #
464
+ # # Create a request. To set request fields, pass in keyword arguments.
465
+ # request = Google::Cloud::Retail::V2::GetServingConfigRequest.new
466
+ #
467
+ # # Call the get_serving_config method.
468
+ # result = client.get_serving_config request
469
+ #
470
+ # # The returned object is of type Google::Cloud::Retail::V2::ServingConfig.
471
+ # p result
472
+ #
473
+ def get_serving_config request, options = nil
474
+ raise ::ArgumentError, "request must be provided" if request.nil?
475
+
476
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Retail::V2::GetServingConfigRequest
477
+
478
+ # Converts hash and nil to an options object
479
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
480
+
481
+ # Customize the options with defaults
482
+ metadata = @config.rpcs.get_serving_config.metadata.to_h
483
+
484
+ # Set x-goog-api-client and x-goog-user-project headers
485
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
486
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
487
+ gapic_version: ::Google::Cloud::Retail::V2::VERSION
488
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
489
+
490
+ header_params = {}
491
+ if request.name
492
+ header_params["name"] = request.name
493
+ end
494
+
495
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
496
+ metadata[:"x-goog-request-params"] ||= request_params_header
497
+
498
+ options.apply_defaults timeout: @config.rpcs.get_serving_config.timeout,
499
+ metadata: metadata,
500
+ retry_policy: @config.rpcs.get_serving_config.retry_policy
501
+
502
+ options.apply_defaults timeout: @config.timeout,
503
+ metadata: @config.metadata,
504
+ retry_policy: @config.retry_policy
505
+
506
+ @serving_config_service_stub.call_rpc :get_serving_config, request, options: options do |response, operation|
507
+ yield response, operation if block_given?
508
+ return response
509
+ end
510
+ rescue ::GRPC::BadStatus => e
511
+ raise ::Google::Cloud::Error.from_error(e)
512
+ end
513
+
514
+ ##
515
+ # Lists all ServingConfigs linked to this catalog.
516
+ #
517
+ # @overload list_serving_configs(request, options = nil)
518
+ # Pass arguments to `list_serving_configs` via a request object, either of type
519
+ # {::Google::Cloud::Retail::V2::ListServingConfigsRequest} or an equivalent Hash.
520
+ #
521
+ # @param request [::Google::Cloud::Retail::V2::ListServingConfigsRequest, ::Hash]
522
+ # A request object representing the call parameters. Required. To specify no
523
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
524
+ # @param options [::Gapic::CallOptions, ::Hash]
525
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
526
+ #
527
+ # @overload list_serving_configs(parent: nil, page_size: nil, page_token: nil)
528
+ # Pass arguments to `list_serving_configs` via keyword arguments. Note that at
529
+ # least one keyword argument is required. To specify no parameters, or to keep all
530
+ # the default parameter values, pass an empty Hash as a request object (see above).
531
+ #
532
+ # @param parent [::String]
533
+ # Required. The catalog resource name. Format:
534
+ # projects/\\{project_number}/locations/\\{location_id}/catalogs/\\{catalog_id}
535
+ # @param page_size [::Integer]
536
+ # Optional. Maximum number of results to return. If unspecified, defaults
537
+ # to 100. If a value greater than 100 is provided, at most 100 results are
538
+ # returned.
539
+ # @param page_token [::String]
540
+ # Optional. A page token, received from a previous `ListServingConfigs` call.
541
+ # Provide this to retrieve the subsequent page.
542
+ #
543
+ # @yield [response, operation] Access the result along with the RPC operation
544
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Retail::V2::ServingConfig>]
545
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
546
+ #
547
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::Retail::V2::ServingConfig>]
548
+ #
549
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
550
+ #
551
+ # @example Basic example
552
+ # require "google/cloud/retail/v2"
553
+ #
554
+ # # Create a client object. The client can be reused for multiple calls.
555
+ # client = Google::Cloud::Retail::V2::ServingConfigService::Client.new
556
+ #
557
+ # # Create a request. To set request fields, pass in keyword arguments.
558
+ # request = Google::Cloud::Retail::V2::ListServingConfigsRequest.new
559
+ #
560
+ # # Call the list_serving_configs method.
561
+ # result = client.list_serving_configs request
562
+ #
563
+ # # The returned object is of type Gapic::PagedEnumerable. You can
564
+ # # iterate over all elements by calling #each, and the enumerable
565
+ # # will lazily make API calls to fetch subsequent pages. Other
566
+ # # methods are also available for managing paging directly.
567
+ # result.each do |response|
568
+ # # Each element is of type ::Google::Cloud::Retail::V2::ServingConfig.
569
+ # p response
570
+ # end
571
+ #
572
+ def list_serving_configs request, options = nil
573
+ raise ::ArgumentError, "request must be provided" if request.nil?
574
+
575
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Retail::V2::ListServingConfigsRequest
576
+
577
+ # Converts hash and nil to an options object
578
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
579
+
580
+ # Customize the options with defaults
581
+ metadata = @config.rpcs.list_serving_configs.metadata.to_h
582
+
583
+ # Set x-goog-api-client and x-goog-user-project headers
584
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
585
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
586
+ gapic_version: ::Google::Cloud::Retail::V2::VERSION
587
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
588
+
589
+ header_params = {}
590
+ if request.parent
591
+ header_params["parent"] = request.parent
592
+ end
593
+
594
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
595
+ metadata[:"x-goog-request-params"] ||= request_params_header
596
+
597
+ options.apply_defaults timeout: @config.rpcs.list_serving_configs.timeout,
598
+ metadata: metadata,
599
+ retry_policy: @config.rpcs.list_serving_configs.retry_policy
600
+
601
+ options.apply_defaults timeout: @config.timeout,
602
+ metadata: @config.metadata,
603
+ retry_policy: @config.retry_policy
604
+
605
+ @serving_config_service_stub.call_rpc :list_serving_configs, request, options: options do |response, operation|
606
+ response = ::Gapic::PagedEnumerable.new @serving_config_service_stub, :list_serving_configs, request, response, operation, options
607
+ yield response, operation if block_given?
608
+ return response
609
+ end
610
+ rescue ::GRPC::BadStatus => e
611
+ raise ::Google::Cloud::Error.from_error(e)
612
+ end
613
+
614
+ ##
615
+ # Enables a Control on the specified ServingConfig.
616
+ # The control is added in the last position of the list of controls
617
+ # it belongs to (e.g. if it's a facet spec control it will be applied
618
+ # in the last position of servingConfig.facetSpecIds)
619
+ # Returns a ALREADY_EXISTS error if the control has already been applied.
620
+ # Returns a FAILED_PRECONDITION error if the addition could exceed maximum
621
+ # number of control allowed for that type of control.
622
+ #
623
+ # @overload add_control(request, options = nil)
624
+ # Pass arguments to `add_control` via a request object, either of type
625
+ # {::Google::Cloud::Retail::V2::AddControlRequest} or an equivalent Hash.
626
+ #
627
+ # @param request [::Google::Cloud::Retail::V2::AddControlRequest, ::Hash]
628
+ # A request object representing the call parameters. Required. To specify no
629
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
630
+ # @param options [::Gapic::CallOptions, ::Hash]
631
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
632
+ #
633
+ # @overload add_control(serving_config: nil, control_id: nil)
634
+ # Pass arguments to `add_control` via keyword arguments. Note that at
635
+ # least one keyword argument is required. To specify no parameters, or to keep all
636
+ # the default parameter values, pass an empty Hash as a request object (see above).
637
+ #
638
+ # @param serving_config [::String]
639
+ # Required. The source ServingConfig resource name . Format:
640
+ # projects/\\{project_number}/locations/\\{location_id}/catalogs/\\{catalog_id}/servingConfigs/\\{serving_config_id}
641
+ # @param control_id [::String]
642
+ # Required. The id of the control to apply. Assumed to be in the same catalog
643
+ # as the serving config - if id is not found a NOT_FOUND error is returned.
644
+ #
645
+ # @yield [response, operation] Access the result along with the RPC operation
646
+ # @yieldparam response [::Google::Cloud::Retail::V2::ServingConfig]
647
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
648
+ #
649
+ # @return [::Google::Cloud::Retail::V2::ServingConfig]
650
+ #
651
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
652
+ #
653
+ # @example Basic example
654
+ # require "google/cloud/retail/v2"
655
+ #
656
+ # # Create a client object. The client can be reused for multiple calls.
657
+ # client = Google::Cloud::Retail::V2::ServingConfigService::Client.new
658
+ #
659
+ # # Create a request. To set request fields, pass in keyword arguments.
660
+ # request = Google::Cloud::Retail::V2::AddControlRequest.new
661
+ #
662
+ # # Call the add_control method.
663
+ # result = client.add_control request
664
+ #
665
+ # # The returned object is of type Google::Cloud::Retail::V2::ServingConfig.
666
+ # p result
667
+ #
668
+ def add_control request, options = nil
669
+ raise ::ArgumentError, "request must be provided" if request.nil?
670
+
671
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Retail::V2::AddControlRequest
672
+
673
+ # Converts hash and nil to an options object
674
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
675
+
676
+ # Customize the options with defaults
677
+ metadata = @config.rpcs.add_control.metadata.to_h
678
+
679
+ # Set x-goog-api-client and x-goog-user-project headers
680
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
681
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
682
+ gapic_version: ::Google::Cloud::Retail::V2::VERSION
683
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
684
+
685
+ header_params = {}
686
+ if request.serving_config
687
+ header_params["serving_config"] = request.serving_config
688
+ end
689
+
690
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
691
+ metadata[:"x-goog-request-params"] ||= request_params_header
692
+
693
+ options.apply_defaults timeout: @config.rpcs.add_control.timeout,
694
+ metadata: metadata,
695
+ retry_policy: @config.rpcs.add_control.retry_policy
696
+
697
+ options.apply_defaults timeout: @config.timeout,
698
+ metadata: @config.metadata,
699
+ retry_policy: @config.retry_policy
700
+
701
+ @serving_config_service_stub.call_rpc :add_control, request, options: options do |response, operation|
702
+ yield response, operation if block_given?
703
+ return response
704
+ end
705
+ rescue ::GRPC::BadStatus => e
706
+ raise ::Google::Cloud::Error.from_error(e)
707
+ end
708
+
709
+ ##
710
+ # Disables a Control on the specified ServingConfig.
711
+ # The control is removed from the ServingConfig.
712
+ # Returns a NOT_FOUND error if the Control is not enabled for the
713
+ # ServingConfig.
714
+ #
715
+ # @overload remove_control(request, options = nil)
716
+ # Pass arguments to `remove_control` via a request object, either of type
717
+ # {::Google::Cloud::Retail::V2::RemoveControlRequest} or an equivalent Hash.
718
+ #
719
+ # @param request [::Google::Cloud::Retail::V2::RemoveControlRequest, ::Hash]
720
+ # A request object representing the call parameters. Required. To specify no
721
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
722
+ # @param options [::Gapic::CallOptions, ::Hash]
723
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
724
+ #
725
+ # @overload remove_control(serving_config: nil, control_id: nil)
726
+ # Pass arguments to `remove_control` via keyword arguments. Note that at
727
+ # least one keyword argument is required. To specify no parameters, or to keep all
728
+ # the default parameter values, pass an empty Hash as a request object (see above).
729
+ #
730
+ # @param serving_config [::String]
731
+ # Required. The source ServingConfig resource name . Format:
732
+ # projects/\\{project_number}/locations/\\{location_id}/catalogs/\\{catalog_id}/servingConfigs/\\{serving_config_id}
733
+ # @param control_id [::String]
734
+ # Required. The id of the control to apply. Assumed to be in the same catalog
735
+ # as the serving config.
736
+ #
737
+ # @yield [response, operation] Access the result along with the RPC operation
738
+ # @yieldparam response [::Google::Cloud::Retail::V2::ServingConfig]
739
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
740
+ #
741
+ # @return [::Google::Cloud::Retail::V2::ServingConfig]
742
+ #
743
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
744
+ #
745
+ # @example Basic example
746
+ # require "google/cloud/retail/v2"
747
+ #
748
+ # # Create a client object. The client can be reused for multiple calls.
749
+ # client = Google::Cloud::Retail::V2::ServingConfigService::Client.new
750
+ #
751
+ # # Create a request. To set request fields, pass in keyword arguments.
752
+ # request = Google::Cloud::Retail::V2::RemoveControlRequest.new
753
+ #
754
+ # # Call the remove_control method.
755
+ # result = client.remove_control request
756
+ #
757
+ # # The returned object is of type Google::Cloud::Retail::V2::ServingConfig.
758
+ # p result
759
+ #
760
+ def remove_control request, options = nil
761
+ raise ::ArgumentError, "request must be provided" if request.nil?
762
+
763
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Retail::V2::RemoveControlRequest
764
+
765
+ # Converts hash and nil to an options object
766
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
767
+
768
+ # Customize the options with defaults
769
+ metadata = @config.rpcs.remove_control.metadata.to_h
770
+
771
+ # Set x-goog-api-client and x-goog-user-project headers
772
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
773
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
774
+ gapic_version: ::Google::Cloud::Retail::V2::VERSION
775
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
776
+
777
+ header_params = {}
778
+ if request.serving_config
779
+ header_params["serving_config"] = request.serving_config
780
+ end
781
+
782
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
783
+ metadata[:"x-goog-request-params"] ||= request_params_header
784
+
785
+ options.apply_defaults timeout: @config.rpcs.remove_control.timeout,
786
+ metadata: metadata,
787
+ retry_policy: @config.rpcs.remove_control.retry_policy
788
+
789
+ options.apply_defaults timeout: @config.timeout,
790
+ metadata: @config.metadata,
791
+ retry_policy: @config.retry_policy
792
+
793
+ @serving_config_service_stub.call_rpc :remove_control, request, options: options do |response, operation|
794
+ yield response, operation if block_given?
795
+ return response
796
+ end
797
+ rescue ::GRPC::BadStatus => e
798
+ raise ::Google::Cloud::Error.from_error(e)
799
+ end
800
+
801
+ ##
802
+ # Configuration class for the ServingConfigService API.
803
+ #
804
+ # This class represents the configuration for ServingConfigService,
805
+ # providing control over timeouts, retry behavior, logging, transport
806
+ # parameters, and other low-level controls. Certain parameters can also be
807
+ # applied individually to specific RPCs. See
808
+ # {::Google::Cloud::Retail::V2::ServingConfigService::Client::Configuration::Rpcs}
809
+ # for a list of RPCs that can be configured independently.
810
+ #
811
+ # Configuration can be applied globally to all clients, or to a single client
812
+ # on construction.
813
+ #
814
+ # @example
815
+ #
816
+ # # Modify the global config, setting the timeout for
817
+ # # create_serving_config to 20 seconds,
818
+ # # and all remaining timeouts to 10 seconds.
819
+ # ::Google::Cloud::Retail::V2::ServingConfigService::Client.configure do |config|
820
+ # config.timeout = 10.0
821
+ # config.rpcs.create_serving_config.timeout = 20.0
822
+ # end
823
+ #
824
+ # # Apply the above configuration only to a new client.
825
+ # client = ::Google::Cloud::Retail::V2::ServingConfigService::Client.new do |config|
826
+ # config.timeout = 10.0
827
+ # config.rpcs.create_serving_config.timeout = 20.0
828
+ # end
829
+ #
830
+ # @!attribute [rw] endpoint
831
+ # The hostname or hostname:port of the service endpoint.
832
+ # Defaults to `"retail.googleapis.com"`.
833
+ # @return [::String]
834
+ # @!attribute [rw] credentials
835
+ # Credentials to send with calls. You may provide any of the following types:
836
+ # * (`String`) The path to a service account key file in JSON format
837
+ # * (`Hash`) A service account key as a Hash
838
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
839
+ # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
840
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
841
+ # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
842
+ # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
843
+ # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
844
+ # * (`nil`) indicating no credentials
845
+ # @return [::Object]
846
+ # @!attribute [rw] scope
847
+ # The OAuth scopes
848
+ # @return [::Array<::String>]
849
+ # @!attribute [rw] lib_name
850
+ # The library name as recorded in instrumentation and logging
851
+ # @return [::String]
852
+ # @!attribute [rw] lib_version
853
+ # The library version as recorded in instrumentation and logging
854
+ # @return [::String]
855
+ # @!attribute [rw] channel_args
856
+ # Extra parameters passed to the gRPC channel. Note: this is ignored if a
857
+ # `GRPC::Core::Channel` object is provided as the credential.
858
+ # @return [::Hash]
859
+ # @!attribute [rw] interceptors
860
+ # An array of interceptors that are run before calls are executed.
861
+ # @return [::Array<::GRPC::ClientInterceptor>]
862
+ # @!attribute [rw] timeout
863
+ # The call timeout in seconds.
864
+ # @return [::Numeric]
865
+ # @!attribute [rw] metadata
866
+ # Additional gRPC headers to be sent with the call.
867
+ # @return [::Hash{::Symbol=>::String}]
868
+ # @!attribute [rw] retry_policy
869
+ # The retry policy. The value is a hash with the following keys:
870
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
871
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
872
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
873
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
874
+ # trigger a retry.
875
+ # @return [::Hash]
876
+ # @!attribute [rw] quota_project
877
+ # A separate project against which to charge quota.
878
+ # @return [::String]
879
+ #
880
+ class Configuration
881
+ extend ::Gapic::Config
882
+
883
+ config_attr :endpoint, "retail.googleapis.com", ::String
884
+ config_attr :credentials, nil do |value|
885
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
886
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
887
+ allowed.any? { |klass| klass === value }
888
+ end
889
+ config_attr :scope, nil, ::String, ::Array, nil
890
+ config_attr :lib_name, nil, ::String, nil
891
+ config_attr :lib_version, nil, ::String, nil
892
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
893
+ config_attr :interceptors, nil, ::Array, nil
894
+ config_attr :timeout, nil, ::Numeric, nil
895
+ config_attr :metadata, nil, ::Hash, nil
896
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
897
+ config_attr :quota_project, nil, ::String, nil
898
+
899
+ # @private
900
+ def initialize parent_config = nil
901
+ @parent_config = parent_config unless parent_config.nil?
902
+
903
+ yield self if block_given?
904
+ end
905
+
906
+ ##
907
+ # Configurations for individual RPCs
908
+ # @return [Rpcs]
909
+ #
910
+ def rpcs
911
+ @rpcs ||= begin
912
+ parent_rpcs = nil
913
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
914
+ Rpcs.new parent_rpcs
915
+ end
916
+ end
917
+
918
+ ##
919
+ # Configuration RPC class for the ServingConfigService API.
920
+ #
921
+ # Includes fields providing the configuration for each RPC in this service.
922
+ # Each configuration object is of type `Gapic::Config::Method` and includes
923
+ # the following configuration fields:
924
+ #
925
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
926
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
927
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
928
+ # include the following keys:
929
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
930
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
931
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
932
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
933
+ # trigger a retry.
934
+ #
935
+ class Rpcs
936
+ ##
937
+ # RPC-specific configuration for `create_serving_config`
938
+ # @return [::Gapic::Config::Method]
939
+ #
940
+ attr_reader :create_serving_config
941
+ ##
942
+ # RPC-specific configuration for `delete_serving_config`
943
+ # @return [::Gapic::Config::Method]
944
+ #
945
+ attr_reader :delete_serving_config
946
+ ##
947
+ # RPC-specific configuration for `update_serving_config`
948
+ # @return [::Gapic::Config::Method]
949
+ #
950
+ attr_reader :update_serving_config
951
+ ##
952
+ # RPC-specific configuration for `get_serving_config`
953
+ # @return [::Gapic::Config::Method]
954
+ #
955
+ attr_reader :get_serving_config
956
+ ##
957
+ # RPC-specific configuration for `list_serving_configs`
958
+ # @return [::Gapic::Config::Method]
959
+ #
960
+ attr_reader :list_serving_configs
961
+ ##
962
+ # RPC-specific configuration for `add_control`
963
+ # @return [::Gapic::Config::Method]
964
+ #
965
+ attr_reader :add_control
966
+ ##
967
+ # RPC-specific configuration for `remove_control`
968
+ # @return [::Gapic::Config::Method]
969
+ #
970
+ attr_reader :remove_control
971
+
972
+ # @private
973
+ def initialize parent_rpcs = nil
974
+ create_serving_config_config = parent_rpcs.create_serving_config if parent_rpcs.respond_to? :create_serving_config
975
+ @create_serving_config = ::Gapic::Config::Method.new create_serving_config_config
976
+ delete_serving_config_config = parent_rpcs.delete_serving_config if parent_rpcs.respond_to? :delete_serving_config
977
+ @delete_serving_config = ::Gapic::Config::Method.new delete_serving_config_config
978
+ update_serving_config_config = parent_rpcs.update_serving_config if parent_rpcs.respond_to? :update_serving_config
979
+ @update_serving_config = ::Gapic::Config::Method.new update_serving_config_config
980
+ get_serving_config_config = parent_rpcs.get_serving_config if parent_rpcs.respond_to? :get_serving_config
981
+ @get_serving_config = ::Gapic::Config::Method.new get_serving_config_config
982
+ list_serving_configs_config = parent_rpcs.list_serving_configs if parent_rpcs.respond_to? :list_serving_configs
983
+ @list_serving_configs = ::Gapic::Config::Method.new list_serving_configs_config
984
+ add_control_config = parent_rpcs.add_control if parent_rpcs.respond_to? :add_control
985
+ @add_control = ::Gapic::Config::Method.new add_control_config
986
+ remove_control_config = parent_rpcs.remove_control if parent_rpcs.respond_to? :remove_control
987
+ @remove_control = ::Gapic::Config::Method.new remove_control_config
988
+
989
+ yield self if block_given?
990
+ end
991
+ end
992
+ end
993
+ end
994
+ end
995
+ end
996
+ end
997
+ end
998
+ end