google-cloud-network_services-v1 0.a → 0.2.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 (66) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/network_services/v1/bindings_override.rb +279 -0
  6. data/lib/google/cloud/network_services/v1/dep_service/client.rb +1505 -0
  7. data/lib/google/cloud/network_services/v1/dep_service/credentials.rb +47 -0
  8. data/lib/google/cloud/network_services/v1/dep_service/operations.rb +809 -0
  9. data/lib/google/cloud/network_services/v1/dep_service/paths.rb +88 -0
  10. data/lib/google/cloud/network_services/v1/dep_service/rest/client.rb +1416 -0
  11. data/lib/google/cloud/network_services/v1/dep_service/rest/operations.rb +902 -0
  12. data/lib/google/cloud/network_services/v1/dep_service/rest/service_stub.rb +663 -0
  13. data/lib/google/cloud/network_services/v1/dep_service/rest.rb +54 -0
  14. data/lib/google/cloud/network_services/v1/dep_service.rb +56 -0
  15. data/lib/google/cloud/network_services/v1/network_services/client.rb +4383 -0
  16. data/lib/google/cloud/network_services/v1/network_services/credentials.rb +47 -0
  17. data/lib/google/cloud/network_services/v1/network_services/operations.rb +809 -0
  18. data/lib/google/cloud/network_services/v1/network_services/paths.rb +278 -0
  19. data/lib/google/cloud/network_services/v1/network_services/rest/client.rb +4093 -0
  20. data/lib/google/cloud/network_services/v1/network_services/rest/operations.rb +902 -0
  21. data/lib/google/cloud/network_services/v1/network_services/rest/service_stub.rb +2385 -0
  22. data/lib/google/cloud/network_services/v1/network_services/rest.rb +52 -0
  23. data/lib/google/cloud/network_services/v1/network_services.rb +54 -0
  24. data/lib/google/cloud/network_services/v1/rest.rb +39 -0
  25. data/lib/google/cloud/network_services/v1/version.rb +7 -2
  26. data/lib/google/cloud/network_services/v1.rb +46 -0
  27. data/lib/google/cloud/networkservices/v1/common_pb.rb +51 -0
  28. data/lib/google/cloud/networkservices/v1/dep_pb.rb +77 -0
  29. data/lib/google/cloud/networkservices/v1/dep_services_pb.rb +64 -0
  30. data/lib/google/cloud/networkservices/v1/endpoint_policy_pb.rb +58 -0
  31. data/lib/google/cloud/networkservices/v1/gateway_pb.rb +56 -0
  32. data/lib/google/cloud/networkservices/v1/grpc_route_pb.rb +69 -0
  33. data/lib/google/cloud/networkservices/v1/http_route_pb.rb +74 -0
  34. data/lib/google/cloud/networkservices/v1/mesh_pb.rb +55 -0
  35. data/lib/google/cloud/networkservices/v1/network_services_pb.rb +53 -0
  36. data/lib/google/cloud/networkservices/v1/network_services_services_pb.rb +120 -0
  37. data/lib/google/cloud/networkservices/v1/service_binding_pb.rb +52 -0
  38. data/lib/google/cloud/networkservices/v1/tcp_route_pb.rb +59 -0
  39. data/lib/google/cloud/networkservices/v1/tls_route_pb.rb +59 -0
  40. data/lib/google-cloud-network_services-v1.rb +21 -0
  41. data/proto_docs/README.md +4 -0
  42. data/proto_docs/google/api/client.rb +399 -0
  43. data/proto_docs/google/api/field_behavior.rb +85 -0
  44. data/proto_docs/google/api/field_info.rb +65 -0
  45. data/proto_docs/google/api/launch_stage.rb +71 -0
  46. data/proto_docs/google/api/resource.rb +222 -0
  47. data/proto_docs/google/cloud/networkservices/v1/common.rb +147 -0
  48. data/proto_docs/google/cloud/networkservices/v1/dep.rb +590 -0
  49. data/proto_docs/google/cloud/networkservices/v1/endpoint_policy.rb +194 -0
  50. data/proto_docs/google/cloud/networkservices/v1/gateway.rb +187 -0
  51. data/proto_docs/google/cloud/networkservices/v1/grpc_route.rb +430 -0
  52. data/proto_docs/google/cloud/networkservices/v1/http_route.rb +670 -0
  53. data/proto_docs/google/cloud/networkservices/v1/mesh.rb +155 -0
  54. data/proto_docs/google/cloud/networkservices/v1/service_binding.rb +131 -0
  55. data/proto_docs/google/cloud/networkservices/v1/tcp_route.rb +247 -0
  56. data/proto_docs/google/cloud/networkservices/v1/tls_route.rb +219 -0
  57. data/proto_docs/google/longrunning/operations.rb +164 -0
  58. data/proto_docs/google/protobuf/any.rb +145 -0
  59. data/proto_docs/google/protobuf/duration.rb +98 -0
  60. data/proto_docs/google/protobuf/empty.rb +34 -0
  61. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  62. data/proto_docs/google/protobuf/struct.rb +96 -0
  63. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  64. data/proto_docs/google/rpc/status.rb +48 -0
  65. data/proto_docs/google/type/expr.rb +75 -0
  66. metadata +145 -10
@@ -0,0 +1,1416 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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/networkservices/v1/dep_pb"
21
+ require "google/cloud/network_services/v1/dep_service/rest/service_stub"
22
+ require "google/cloud/location/rest"
23
+ require "google/iam/v1/rest"
24
+
25
+ module Google
26
+ module Cloud
27
+ module NetworkServices
28
+ module V1
29
+ module DepService
30
+ module Rest
31
+ ##
32
+ # REST client for the DepService service.
33
+ #
34
+ # Service describing handlers for resources.
35
+ #
36
+ class Client
37
+ # @private
38
+ API_VERSION = ""
39
+
40
+ # @private
41
+ DEFAULT_ENDPOINT_TEMPLATE = "networkservices.$UNIVERSE_DOMAIN$"
42
+
43
+ include Paths
44
+
45
+ # @private
46
+ attr_reader :dep_service_stub
47
+
48
+ ##
49
+ # Configure the DepService Client class.
50
+ #
51
+ # See {::Google::Cloud::NetworkServices::V1::DepService::Rest::Client::Configuration}
52
+ # for a description of the configuration fields.
53
+ #
54
+ # @example
55
+ #
56
+ # # Modify the configuration for all DepService clients
57
+ # ::Google::Cloud::NetworkServices::V1::DepService::Rest::Client.configure do |config|
58
+ # config.timeout = 10.0
59
+ # end
60
+ #
61
+ # @yield [config] Configure the Client client.
62
+ # @yieldparam config [Client::Configuration]
63
+ #
64
+ # @return [Client::Configuration]
65
+ #
66
+ def self.configure
67
+ @configure ||= begin
68
+ namespace = ["Google", "Cloud", "NetworkServices", "V1"]
69
+ parent_config = while namespace.any?
70
+ parent_name = namespace.join "::"
71
+ parent_const = const_get parent_name
72
+ break parent_const.configure if parent_const.respond_to? :configure
73
+ namespace.pop
74
+ end
75
+ default_config = Client::Configuration.new parent_config
76
+
77
+ default_config.timeout = 60.0
78
+
79
+ default_config
80
+ end
81
+ yield @configure if block_given?
82
+ @configure
83
+ end
84
+
85
+ ##
86
+ # Configure the DepService Client instance.
87
+ #
88
+ # The configuration is set to the derived mode, meaning that values can be changed,
89
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
90
+ # should be made on {Client.configure}.
91
+ #
92
+ # See {::Google::Cloud::NetworkServices::V1::DepService::Rest::Client::Configuration}
93
+ # for a description of the configuration fields.
94
+ #
95
+ # @yield [config] Configure the Client client.
96
+ # @yieldparam config [Client::Configuration]
97
+ #
98
+ # @return [Client::Configuration]
99
+ #
100
+ def configure
101
+ yield @config if block_given?
102
+ @config
103
+ end
104
+
105
+ ##
106
+ # The effective universe domain
107
+ #
108
+ # @return [String]
109
+ #
110
+ def universe_domain
111
+ @dep_service_stub.universe_domain
112
+ end
113
+
114
+ ##
115
+ # Create a new DepService REST client object.
116
+ #
117
+ # @example
118
+ #
119
+ # # Create a client using the default configuration
120
+ # client = ::Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
121
+ #
122
+ # # Create a client using a custom configuration
123
+ # client = ::Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new do |config|
124
+ # config.timeout = 10.0
125
+ # end
126
+ #
127
+ # @yield [config] Configure the DepService client.
128
+ # @yieldparam config [Client::Configuration]
129
+ #
130
+ def initialize
131
+ # Create the configuration object
132
+ @config = Configuration.new Client.configure
133
+
134
+ # Yield the configuration if needed
135
+ yield @config if block_given?
136
+
137
+ # Create credentials
138
+ credentials = @config.credentials
139
+ # Use self-signed JWT if the endpoint is unchanged from default,
140
+ # but only if the default endpoint does not have a region prefix.
141
+ enable_self_signed_jwt = @config.endpoint.nil? ||
142
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
143
+ !@config.endpoint.split(".").first.include?("-"))
144
+ credentials ||= Credentials.default scope: @config.scope,
145
+ enable_self_signed_jwt: enable_self_signed_jwt
146
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
147
+ credentials = Credentials.new credentials, scope: @config.scope
148
+ end
149
+
150
+ @quota_project_id = @config.quota_project
151
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
152
+
153
+ @operations_client = ::Google::Cloud::NetworkServices::V1::DepService::Rest::Operations.new do |config|
154
+ config.credentials = credentials
155
+ config.quota_project = @quota_project_id
156
+ config.endpoint = @config.endpoint
157
+ config.universe_domain = @config.universe_domain
158
+ end
159
+
160
+ @dep_service_stub = ::Google::Cloud::NetworkServices::V1::DepService::Rest::ServiceStub.new(
161
+ endpoint: @config.endpoint,
162
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
163
+ universe_domain: @config.universe_domain,
164
+ credentials: credentials
165
+ )
166
+
167
+ @location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
168
+ config.credentials = credentials
169
+ config.quota_project = @quota_project_id
170
+ config.endpoint = @dep_service_stub.endpoint
171
+ config.universe_domain = @dep_service_stub.universe_domain
172
+ config.bindings_override = @config.bindings_override
173
+ end
174
+
175
+ @iam_policy_client = Google::Iam::V1::IAMPolicy::Rest::Client.new do |config|
176
+ config.credentials = credentials
177
+ config.quota_project = @quota_project_id
178
+ config.endpoint = @dep_service_stub.endpoint
179
+ config.universe_domain = @dep_service_stub.universe_domain
180
+ config.bindings_override = @config.bindings_override
181
+ end
182
+ end
183
+
184
+ ##
185
+ # Get the associated client for long-running operations.
186
+ #
187
+ # @return [::Google::Cloud::NetworkServices::V1::DepService::Rest::Operations]
188
+ #
189
+ attr_reader :operations_client
190
+
191
+ ##
192
+ # Get the associated client for mix-in of the Locations.
193
+ #
194
+ # @return [Google::Cloud::Location::Locations::Rest::Client]
195
+ #
196
+ attr_reader :location_client
197
+
198
+ ##
199
+ # Get the associated client for mix-in of the IAMPolicy.
200
+ #
201
+ # @return [Google::Iam::V1::IAMPolicy::Rest::Client]
202
+ #
203
+ attr_reader :iam_policy_client
204
+
205
+ # Service calls
206
+
207
+ ##
208
+ # Lists `LbTrafficExtension` resources in a given project and location.
209
+ #
210
+ # @overload list_lb_traffic_extensions(request, options = nil)
211
+ # Pass arguments to `list_lb_traffic_extensions` via a request object, either of type
212
+ # {::Google::Cloud::NetworkServices::V1::ListLbTrafficExtensionsRequest} or an equivalent Hash.
213
+ #
214
+ # @param request [::Google::Cloud::NetworkServices::V1::ListLbTrafficExtensionsRequest, ::Hash]
215
+ # A request object representing the call parameters. Required. To specify no
216
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
217
+ # @param options [::Gapic::CallOptions, ::Hash]
218
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
219
+ #
220
+ # @overload list_lb_traffic_extensions(parent: nil, page_size: nil, page_token: nil, filter: nil, order_by: nil)
221
+ # Pass arguments to `list_lb_traffic_extensions` via keyword arguments. Note that at
222
+ # least one keyword argument is required. To specify no parameters, or to keep all
223
+ # the default parameter values, pass an empty Hash as a request object (see above).
224
+ #
225
+ # @param parent [::String]
226
+ # Required. The project and location from which the `LbTrafficExtension`
227
+ # resources are listed, specified in the following format:
228
+ # `projects/{project}/locations/{location}`.
229
+ # @param page_size [::Integer]
230
+ # Optional. Requested page size. The server might return fewer items than
231
+ # requested. If unspecified, the server picks an appropriate default.
232
+ # @param page_token [::String]
233
+ # Optional. A token identifying a page of results that the server returns.
234
+ # @param filter [::String]
235
+ # Optional. Filtering results.
236
+ # @param order_by [::String]
237
+ # Optional. Hint for how to order the results.
238
+ # @yield [result, operation] Access the result along with the TransportOperation object
239
+ # @yieldparam result [::Google::Cloud::NetworkServices::V1::ListLbTrafficExtensionsResponse]
240
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
241
+ #
242
+ # @return [::Google::Cloud::NetworkServices::V1::ListLbTrafficExtensionsResponse]
243
+ #
244
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
245
+ #
246
+ # @example Basic example
247
+ # require "google/cloud/network_services/v1"
248
+ #
249
+ # # Create a client object. The client can be reused for multiple calls.
250
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
251
+ #
252
+ # # Create a request. To set request fields, pass in keyword arguments.
253
+ # request = Google::Cloud::NetworkServices::V1::ListLbTrafficExtensionsRequest.new
254
+ #
255
+ # # Call the list_lb_traffic_extensions method.
256
+ # result = client.list_lb_traffic_extensions request
257
+ #
258
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
259
+ # # over elements, and API calls will be issued to fetch pages as needed.
260
+ # result.each do |item|
261
+ # # Each element is of type ::Google::Cloud::NetworkServices::V1::LbTrafficExtension.
262
+ # p item
263
+ # end
264
+ #
265
+ def list_lb_traffic_extensions request, options = nil
266
+ raise ::ArgumentError, "request must be provided" if request.nil?
267
+
268
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::ListLbTrafficExtensionsRequest
269
+
270
+ # Converts hash and nil to an options object
271
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
272
+
273
+ # Customize the options with defaults
274
+ call_metadata = @config.rpcs.list_lb_traffic_extensions.metadata.to_h
275
+
276
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
277
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
278
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
279
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
280
+ transports_version_send: [:rest]
281
+
282
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
283
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
284
+
285
+ options.apply_defaults timeout: @config.rpcs.list_lb_traffic_extensions.timeout,
286
+ metadata: call_metadata,
287
+ retry_policy: @config.rpcs.list_lb_traffic_extensions.retry_policy
288
+
289
+ options.apply_defaults timeout: @config.timeout,
290
+ metadata: @config.metadata,
291
+ retry_policy: @config.retry_policy
292
+
293
+ @dep_service_stub.list_lb_traffic_extensions request, options do |result, operation|
294
+ yield result, operation if block_given?
295
+ return result
296
+ end
297
+ rescue ::Gapic::Rest::Error => e
298
+ raise ::Google::Cloud::Error.from_error(e)
299
+ end
300
+
301
+ ##
302
+ # Gets details of the specified `LbTrafficExtension` resource.
303
+ #
304
+ # @overload get_lb_traffic_extension(request, options = nil)
305
+ # Pass arguments to `get_lb_traffic_extension` via a request object, either of type
306
+ # {::Google::Cloud::NetworkServices::V1::GetLbTrafficExtensionRequest} or an equivalent Hash.
307
+ #
308
+ # @param request [::Google::Cloud::NetworkServices::V1::GetLbTrafficExtensionRequest, ::Hash]
309
+ # A request object representing the call parameters. Required. To specify no
310
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
311
+ # @param options [::Gapic::CallOptions, ::Hash]
312
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
313
+ #
314
+ # @overload get_lb_traffic_extension(name: nil)
315
+ # Pass arguments to `get_lb_traffic_extension` via keyword arguments. Note that at
316
+ # least one keyword argument is required. To specify no parameters, or to keep all
317
+ # the default parameter values, pass an empty Hash as a request object (see above).
318
+ #
319
+ # @param name [::String]
320
+ # Required. A name of the `LbTrafficExtension` resource to get. Must be in
321
+ # the format
322
+ # `projects/{project}/locations/{location}/lbTrafficExtensions/{lb_traffic_extension}`.
323
+ # @yield [result, operation] Access the result along with the TransportOperation object
324
+ # @yieldparam result [::Google::Cloud::NetworkServices::V1::LbTrafficExtension]
325
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
326
+ #
327
+ # @return [::Google::Cloud::NetworkServices::V1::LbTrafficExtension]
328
+ #
329
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
330
+ #
331
+ # @example Basic example
332
+ # require "google/cloud/network_services/v1"
333
+ #
334
+ # # Create a client object. The client can be reused for multiple calls.
335
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
336
+ #
337
+ # # Create a request. To set request fields, pass in keyword arguments.
338
+ # request = Google::Cloud::NetworkServices::V1::GetLbTrafficExtensionRequest.new
339
+ #
340
+ # # Call the get_lb_traffic_extension method.
341
+ # result = client.get_lb_traffic_extension request
342
+ #
343
+ # # The returned object is of type Google::Cloud::NetworkServices::V1::LbTrafficExtension.
344
+ # p result
345
+ #
346
+ def get_lb_traffic_extension request, options = nil
347
+ raise ::ArgumentError, "request must be provided" if request.nil?
348
+
349
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::GetLbTrafficExtensionRequest
350
+
351
+ # Converts hash and nil to an options object
352
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
353
+
354
+ # Customize the options with defaults
355
+ call_metadata = @config.rpcs.get_lb_traffic_extension.metadata.to_h
356
+
357
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
358
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
359
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
360
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
361
+ transports_version_send: [:rest]
362
+
363
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
364
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
365
+
366
+ options.apply_defaults timeout: @config.rpcs.get_lb_traffic_extension.timeout,
367
+ metadata: call_metadata,
368
+ retry_policy: @config.rpcs.get_lb_traffic_extension.retry_policy
369
+
370
+ options.apply_defaults timeout: @config.timeout,
371
+ metadata: @config.metadata,
372
+ retry_policy: @config.retry_policy
373
+
374
+ @dep_service_stub.get_lb_traffic_extension request, options do |result, operation|
375
+ yield result, operation if block_given?
376
+ return result
377
+ end
378
+ rescue ::Gapic::Rest::Error => e
379
+ raise ::Google::Cloud::Error.from_error(e)
380
+ end
381
+
382
+ ##
383
+ # Creates a new `LbTrafficExtension` resource in a given project and
384
+ # location.
385
+ #
386
+ # @overload create_lb_traffic_extension(request, options = nil)
387
+ # Pass arguments to `create_lb_traffic_extension` via a request object, either of type
388
+ # {::Google::Cloud::NetworkServices::V1::CreateLbTrafficExtensionRequest} or an equivalent Hash.
389
+ #
390
+ # @param request [::Google::Cloud::NetworkServices::V1::CreateLbTrafficExtensionRequest, ::Hash]
391
+ # A request object representing the call parameters. Required. To specify no
392
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
393
+ # @param options [::Gapic::CallOptions, ::Hash]
394
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
395
+ #
396
+ # @overload create_lb_traffic_extension(parent: nil, lb_traffic_extension_id: nil, lb_traffic_extension: nil, request_id: nil)
397
+ # Pass arguments to `create_lb_traffic_extension` via keyword arguments. Note that at
398
+ # least one keyword argument is required. To specify no parameters, or to keep all
399
+ # the default parameter values, pass an empty Hash as a request object (see above).
400
+ #
401
+ # @param parent [::String]
402
+ # Required. The parent resource of the `LbTrafficExtension` resource. Must be
403
+ # in the format `projects/{project}/locations/{location}`.
404
+ # @param lb_traffic_extension_id [::String]
405
+ # Required. User-provided ID of the `LbTrafficExtension` resource to be
406
+ # created.
407
+ # @param lb_traffic_extension [::Google::Cloud::NetworkServices::V1::LbTrafficExtension, ::Hash]
408
+ # Required. `LbTrafficExtension` resource to be created.
409
+ # @param request_id [::String]
410
+ # Optional. An optional request ID to identify requests. Specify a unique
411
+ # request ID so that if you must retry your request, the server can ignore
412
+ # the request if it has already been completed. The server guarantees
413
+ # that for at least 60 minutes since the first request.
414
+ #
415
+ # For example, consider a situation where you make an initial request and the
416
+ # request times out. If you make the request again with the same request
417
+ # ID, the server can check if original operation with the same request ID
418
+ # was received, and if so, ignores the second request. This prevents
419
+ # clients from accidentally creating duplicate commitments.
420
+ #
421
+ # The request ID must be a valid UUID with the exception that zero UUID is
422
+ # not supported (00000000-0000-0000-0000-000000000000).
423
+ # @yield [result, operation] Access the result along with the TransportOperation object
424
+ # @yieldparam result [::Gapic::Operation]
425
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
426
+ #
427
+ # @return [::Gapic::Operation]
428
+ #
429
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
430
+ #
431
+ # @example Basic example
432
+ # require "google/cloud/network_services/v1"
433
+ #
434
+ # # Create a client object. The client can be reused for multiple calls.
435
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
436
+ #
437
+ # # Create a request. To set request fields, pass in keyword arguments.
438
+ # request = Google::Cloud::NetworkServices::V1::CreateLbTrafficExtensionRequest.new
439
+ #
440
+ # # Call the create_lb_traffic_extension method.
441
+ # result = client.create_lb_traffic_extension request
442
+ #
443
+ # # The returned object is of type Gapic::Operation. You can use it to
444
+ # # check the status of an operation, cancel it, or wait for results.
445
+ # # Here is how to wait for a response.
446
+ # result.wait_until_done! timeout: 60
447
+ # if result.response?
448
+ # p result.response
449
+ # else
450
+ # puts "No response received."
451
+ # end
452
+ #
453
+ def create_lb_traffic_extension request, options = nil
454
+ raise ::ArgumentError, "request must be provided" if request.nil?
455
+
456
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::CreateLbTrafficExtensionRequest
457
+
458
+ # Converts hash and nil to an options object
459
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
460
+
461
+ # Customize the options with defaults
462
+ call_metadata = @config.rpcs.create_lb_traffic_extension.metadata.to_h
463
+
464
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
465
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
466
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
467
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
468
+ transports_version_send: [:rest]
469
+
470
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
471
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
472
+
473
+ options.apply_defaults timeout: @config.rpcs.create_lb_traffic_extension.timeout,
474
+ metadata: call_metadata,
475
+ retry_policy: @config.rpcs.create_lb_traffic_extension.retry_policy
476
+
477
+ options.apply_defaults timeout: @config.timeout,
478
+ metadata: @config.metadata,
479
+ retry_policy: @config.retry_policy
480
+
481
+ @dep_service_stub.create_lb_traffic_extension request, options do |result, operation|
482
+ result = ::Gapic::Operation.new result, @operations_client, options: options
483
+ yield result, operation if block_given?
484
+ return result
485
+ end
486
+ rescue ::Gapic::Rest::Error => e
487
+ raise ::Google::Cloud::Error.from_error(e)
488
+ end
489
+
490
+ ##
491
+ # Updates the parameters of the specified `LbTrafficExtension` resource.
492
+ #
493
+ # @overload update_lb_traffic_extension(request, options = nil)
494
+ # Pass arguments to `update_lb_traffic_extension` via a request object, either of type
495
+ # {::Google::Cloud::NetworkServices::V1::UpdateLbTrafficExtensionRequest} or an equivalent Hash.
496
+ #
497
+ # @param request [::Google::Cloud::NetworkServices::V1::UpdateLbTrafficExtensionRequest, ::Hash]
498
+ # A request object representing the call parameters. Required. To specify no
499
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
500
+ # @param options [::Gapic::CallOptions, ::Hash]
501
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
502
+ #
503
+ # @overload update_lb_traffic_extension(update_mask: nil, lb_traffic_extension: nil, request_id: nil)
504
+ # Pass arguments to `update_lb_traffic_extension` via keyword arguments. Note that at
505
+ # least one keyword argument is required. To specify no parameters, or to keep all
506
+ # the default parameter values, pass an empty Hash as a request object (see above).
507
+ #
508
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
509
+ # Optional. Used to specify the fields to be overwritten in the
510
+ # `LbTrafficExtension` resource by the update.
511
+ # The fields specified in the update_mask are relative to the resource, not
512
+ # the full request. A field is overwritten if it is in the mask. If the
513
+ # user does not specify a mask, then all fields are overwritten.
514
+ # @param lb_traffic_extension [::Google::Cloud::NetworkServices::V1::LbTrafficExtension, ::Hash]
515
+ # Required. `LbTrafficExtension` resource being updated.
516
+ # @param request_id [::String]
517
+ # Optional. An optional request ID to identify requests. Specify a unique
518
+ # request ID so that if you must retry your request, the server can ignore
519
+ # the request if it has already been completed. The server guarantees
520
+ # that for at least 60 minutes since the first request.
521
+ #
522
+ # For example, consider a situation where you make an initial request and the
523
+ # request times out. If you make the request again with the same request
524
+ # ID, the server can check if original operation with the same request ID
525
+ # was received, and if so, ignores the second request. This prevents
526
+ # clients from accidentally creating duplicate commitments.
527
+ #
528
+ # The request ID must be a valid UUID with the exception that zero UUID is
529
+ # not supported (00000000-0000-0000-0000-000000000000).
530
+ # @yield [result, operation] Access the result along with the TransportOperation object
531
+ # @yieldparam result [::Gapic::Operation]
532
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
533
+ #
534
+ # @return [::Gapic::Operation]
535
+ #
536
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
537
+ #
538
+ # @example Basic example
539
+ # require "google/cloud/network_services/v1"
540
+ #
541
+ # # Create a client object. The client can be reused for multiple calls.
542
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
543
+ #
544
+ # # Create a request. To set request fields, pass in keyword arguments.
545
+ # request = Google::Cloud::NetworkServices::V1::UpdateLbTrafficExtensionRequest.new
546
+ #
547
+ # # Call the update_lb_traffic_extension method.
548
+ # result = client.update_lb_traffic_extension request
549
+ #
550
+ # # The returned object is of type Gapic::Operation. You can use it to
551
+ # # check the status of an operation, cancel it, or wait for results.
552
+ # # Here is how to wait for a response.
553
+ # result.wait_until_done! timeout: 60
554
+ # if result.response?
555
+ # p result.response
556
+ # else
557
+ # puts "No response received."
558
+ # end
559
+ #
560
+ def update_lb_traffic_extension request, options = nil
561
+ raise ::ArgumentError, "request must be provided" if request.nil?
562
+
563
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::UpdateLbTrafficExtensionRequest
564
+
565
+ # Converts hash and nil to an options object
566
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
567
+
568
+ # Customize the options with defaults
569
+ call_metadata = @config.rpcs.update_lb_traffic_extension.metadata.to_h
570
+
571
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
572
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
573
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
574
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
575
+ transports_version_send: [:rest]
576
+
577
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
578
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
579
+
580
+ options.apply_defaults timeout: @config.rpcs.update_lb_traffic_extension.timeout,
581
+ metadata: call_metadata,
582
+ retry_policy: @config.rpcs.update_lb_traffic_extension.retry_policy
583
+
584
+ options.apply_defaults timeout: @config.timeout,
585
+ metadata: @config.metadata,
586
+ retry_policy: @config.retry_policy
587
+
588
+ @dep_service_stub.update_lb_traffic_extension request, options do |result, operation|
589
+ result = ::Gapic::Operation.new result, @operations_client, options: options
590
+ yield result, operation if block_given?
591
+ return result
592
+ end
593
+ rescue ::Gapic::Rest::Error => e
594
+ raise ::Google::Cloud::Error.from_error(e)
595
+ end
596
+
597
+ ##
598
+ # Deletes the specified `LbTrafficExtension` resource.
599
+ #
600
+ # @overload delete_lb_traffic_extension(request, options = nil)
601
+ # Pass arguments to `delete_lb_traffic_extension` via a request object, either of type
602
+ # {::Google::Cloud::NetworkServices::V1::DeleteLbTrafficExtensionRequest} or an equivalent Hash.
603
+ #
604
+ # @param request [::Google::Cloud::NetworkServices::V1::DeleteLbTrafficExtensionRequest, ::Hash]
605
+ # A request object representing the call parameters. Required. To specify no
606
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
607
+ # @param options [::Gapic::CallOptions, ::Hash]
608
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
609
+ #
610
+ # @overload delete_lb_traffic_extension(name: nil, request_id: nil)
611
+ # Pass arguments to `delete_lb_traffic_extension` via keyword arguments. Note that at
612
+ # least one keyword argument is required. To specify no parameters, or to keep all
613
+ # the default parameter values, pass an empty Hash as a request object (see above).
614
+ #
615
+ # @param name [::String]
616
+ # Required. The name of the `LbTrafficExtension` resource to delete. Must be
617
+ # in the format
618
+ # `projects/{project}/locations/{location}/lbTrafficExtensions/{lb_traffic_extension}`.
619
+ # @param request_id [::String]
620
+ # Optional. An optional request ID to identify requests. Specify a unique
621
+ # request ID so that if you must retry your request, the server can ignore
622
+ # the request if it has already been completed. The server guarantees
623
+ # that for at least 60 minutes after the first request.
624
+ #
625
+ # For example, consider a situation where you make an initial request and the
626
+ # request times out. If you make the request again with the same request
627
+ # ID, the server can check if original operation with the same request ID
628
+ # was received, and if so, ignores the second request. This prevents
629
+ # clients from accidentally creating duplicate commitments.
630
+ #
631
+ # The request ID must be a valid UUID with the exception that zero UUID is
632
+ # not supported (00000000-0000-0000-0000-000000000000).
633
+ # @yield [result, operation] Access the result along with the TransportOperation object
634
+ # @yieldparam result [::Gapic::Operation]
635
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
636
+ #
637
+ # @return [::Gapic::Operation]
638
+ #
639
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
640
+ #
641
+ # @example Basic example
642
+ # require "google/cloud/network_services/v1"
643
+ #
644
+ # # Create a client object. The client can be reused for multiple calls.
645
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
646
+ #
647
+ # # Create a request. To set request fields, pass in keyword arguments.
648
+ # request = Google::Cloud::NetworkServices::V1::DeleteLbTrafficExtensionRequest.new
649
+ #
650
+ # # Call the delete_lb_traffic_extension method.
651
+ # result = client.delete_lb_traffic_extension request
652
+ #
653
+ # # The returned object is of type Gapic::Operation. You can use it to
654
+ # # check the status of an operation, cancel it, or wait for results.
655
+ # # Here is how to wait for a response.
656
+ # result.wait_until_done! timeout: 60
657
+ # if result.response?
658
+ # p result.response
659
+ # else
660
+ # puts "No response received."
661
+ # end
662
+ #
663
+ def delete_lb_traffic_extension request, options = nil
664
+ raise ::ArgumentError, "request must be provided" if request.nil?
665
+
666
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::DeleteLbTrafficExtensionRequest
667
+
668
+ # Converts hash and nil to an options object
669
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
670
+
671
+ # Customize the options with defaults
672
+ call_metadata = @config.rpcs.delete_lb_traffic_extension.metadata.to_h
673
+
674
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
675
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
676
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
677
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
678
+ transports_version_send: [:rest]
679
+
680
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
681
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
682
+
683
+ options.apply_defaults timeout: @config.rpcs.delete_lb_traffic_extension.timeout,
684
+ metadata: call_metadata,
685
+ retry_policy: @config.rpcs.delete_lb_traffic_extension.retry_policy
686
+
687
+ options.apply_defaults timeout: @config.timeout,
688
+ metadata: @config.metadata,
689
+ retry_policy: @config.retry_policy
690
+
691
+ @dep_service_stub.delete_lb_traffic_extension request, options do |result, operation|
692
+ result = ::Gapic::Operation.new result, @operations_client, options: options
693
+ yield result, operation if block_given?
694
+ return result
695
+ end
696
+ rescue ::Gapic::Rest::Error => e
697
+ raise ::Google::Cloud::Error.from_error(e)
698
+ end
699
+
700
+ ##
701
+ # Lists `LbRouteExtension` resources in a given project and location.
702
+ #
703
+ # @overload list_lb_route_extensions(request, options = nil)
704
+ # Pass arguments to `list_lb_route_extensions` via a request object, either of type
705
+ # {::Google::Cloud::NetworkServices::V1::ListLbRouteExtensionsRequest} or an equivalent Hash.
706
+ #
707
+ # @param request [::Google::Cloud::NetworkServices::V1::ListLbRouteExtensionsRequest, ::Hash]
708
+ # A request object representing the call parameters. Required. To specify no
709
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
710
+ # @param options [::Gapic::CallOptions, ::Hash]
711
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
712
+ #
713
+ # @overload list_lb_route_extensions(parent: nil, page_size: nil, page_token: nil, filter: nil, order_by: nil)
714
+ # Pass arguments to `list_lb_route_extensions` via keyword arguments. Note that at
715
+ # least one keyword argument is required. To specify no parameters, or to keep all
716
+ # the default parameter values, pass an empty Hash as a request object (see above).
717
+ #
718
+ # @param parent [::String]
719
+ # Required. The project and location from which the `LbRouteExtension`
720
+ # resources are listed, specified in the following format:
721
+ # `projects/{project}/locations/{location}`.
722
+ # @param page_size [::Integer]
723
+ # Optional. Requested page size. The server might return fewer items than
724
+ # requested. If unspecified, the server picks an appropriate default.
725
+ # @param page_token [::String]
726
+ # Optional. A token identifying a page of results that the server returns.
727
+ # @param filter [::String]
728
+ # Optional. Filtering results.
729
+ # @param order_by [::String]
730
+ # Optional. Hint for how to order the results.
731
+ # @yield [result, operation] Access the result along with the TransportOperation object
732
+ # @yieldparam result [::Google::Cloud::NetworkServices::V1::ListLbRouteExtensionsResponse]
733
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
734
+ #
735
+ # @return [::Google::Cloud::NetworkServices::V1::ListLbRouteExtensionsResponse]
736
+ #
737
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
738
+ #
739
+ # @example Basic example
740
+ # require "google/cloud/network_services/v1"
741
+ #
742
+ # # Create a client object. The client can be reused for multiple calls.
743
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
744
+ #
745
+ # # Create a request. To set request fields, pass in keyword arguments.
746
+ # request = Google::Cloud::NetworkServices::V1::ListLbRouteExtensionsRequest.new
747
+ #
748
+ # # Call the list_lb_route_extensions method.
749
+ # result = client.list_lb_route_extensions request
750
+ #
751
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
752
+ # # over elements, and API calls will be issued to fetch pages as needed.
753
+ # result.each do |item|
754
+ # # Each element is of type ::Google::Cloud::NetworkServices::V1::LbRouteExtension.
755
+ # p item
756
+ # end
757
+ #
758
+ def list_lb_route_extensions request, options = nil
759
+ raise ::ArgumentError, "request must be provided" if request.nil?
760
+
761
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::ListLbRouteExtensionsRequest
762
+
763
+ # Converts hash and nil to an options object
764
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
765
+
766
+ # Customize the options with defaults
767
+ call_metadata = @config.rpcs.list_lb_route_extensions.metadata.to_h
768
+
769
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
770
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
771
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
772
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
773
+ transports_version_send: [:rest]
774
+
775
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
776
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
777
+
778
+ options.apply_defaults timeout: @config.rpcs.list_lb_route_extensions.timeout,
779
+ metadata: call_metadata,
780
+ retry_policy: @config.rpcs.list_lb_route_extensions.retry_policy
781
+
782
+ options.apply_defaults timeout: @config.timeout,
783
+ metadata: @config.metadata,
784
+ retry_policy: @config.retry_policy
785
+
786
+ @dep_service_stub.list_lb_route_extensions request, options do |result, operation|
787
+ yield result, operation if block_given?
788
+ return result
789
+ end
790
+ rescue ::Gapic::Rest::Error => e
791
+ raise ::Google::Cloud::Error.from_error(e)
792
+ end
793
+
794
+ ##
795
+ # Gets details of the specified `LbRouteExtension` resource.
796
+ #
797
+ # @overload get_lb_route_extension(request, options = nil)
798
+ # Pass arguments to `get_lb_route_extension` via a request object, either of type
799
+ # {::Google::Cloud::NetworkServices::V1::GetLbRouteExtensionRequest} or an equivalent Hash.
800
+ #
801
+ # @param request [::Google::Cloud::NetworkServices::V1::GetLbRouteExtensionRequest, ::Hash]
802
+ # A request object representing the call parameters. Required. To specify no
803
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
804
+ # @param options [::Gapic::CallOptions, ::Hash]
805
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
806
+ #
807
+ # @overload get_lb_route_extension(name: nil)
808
+ # Pass arguments to `get_lb_route_extension` via keyword arguments. Note that at
809
+ # least one keyword argument is required. To specify no parameters, or to keep all
810
+ # the default parameter values, pass an empty Hash as a request object (see above).
811
+ #
812
+ # @param name [::String]
813
+ # Required. A name of the `LbRouteExtension` resource to get. Must be in the
814
+ # format
815
+ # `projects/{project}/locations/{location}/lbRouteExtensions/{lb_route_extension}`.
816
+ # @yield [result, operation] Access the result along with the TransportOperation object
817
+ # @yieldparam result [::Google::Cloud::NetworkServices::V1::LbRouteExtension]
818
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
819
+ #
820
+ # @return [::Google::Cloud::NetworkServices::V1::LbRouteExtension]
821
+ #
822
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
823
+ #
824
+ # @example Basic example
825
+ # require "google/cloud/network_services/v1"
826
+ #
827
+ # # Create a client object. The client can be reused for multiple calls.
828
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
829
+ #
830
+ # # Create a request. To set request fields, pass in keyword arguments.
831
+ # request = Google::Cloud::NetworkServices::V1::GetLbRouteExtensionRequest.new
832
+ #
833
+ # # Call the get_lb_route_extension method.
834
+ # result = client.get_lb_route_extension request
835
+ #
836
+ # # The returned object is of type Google::Cloud::NetworkServices::V1::LbRouteExtension.
837
+ # p result
838
+ #
839
+ def get_lb_route_extension request, options = nil
840
+ raise ::ArgumentError, "request must be provided" if request.nil?
841
+
842
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::GetLbRouteExtensionRequest
843
+
844
+ # Converts hash and nil to an options object
845
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
846
+
847
+ # Customize the options with defaults
848
+ call_metadata = @config.rpcs.get_lb_route_extension.metadata.to_h
849
+
850
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
851
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
852
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
853
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
854
+ transports_version_send: [:rest]
855
+
856
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
857
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
858
+
859
+ options.apply_defaults timeout: @config.rpcs.get_lb_route_extension.timeout,
860
+ metadata: call_metadata,
861
+ retry_policy: @config.rpcs.get_lb_route_extension.retry_policy
862
+
863
+ options.apply_defaults timeout: @config.timeout,
864
+ metadata: @config.metadata,
865
+ retry_policy: @config.retry_policy
866
+
867
+ @dep_service_stub.get_lb_route_extension request, options do |result, operation|
868
+ yield result, operation if block_given?
869
+ return result
870
+ end
871
+ rescue ::Gapic::Rest::Error => e
872
+ raise ::Google::Cloud::Error.from_error(e)
873
+ end
874
+
875
+ ##
876
+ # Creates a new `LbRouteExtension` resource in a given project and location.
877
+ #
878
+ # @overload create_lb_route_extension(request, options = nil)
879
+ # Pass arguments to `create_lb_route_extension` via a request object, either of type
880
+ # {::Google::Cloud::NetworkServices::V1::CreateLbRouteExtensionRequest} or an equivalent Hash.
881
+ #
882
+ # @param request [::Google::Cloud::NetworkServices::V1::CreateLbRouteExtensionRequest, ::Hash]
883
+ # A request object representing the call parameters. Required. To specify no
884
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
885
+ # @param options [::Gapic::CallOptions, ::Hash]
886
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
887
+ #
888
+ # @overload create_lb_route_extension(parent: nil, lb_route_extension_id: nil, lb_route_extension: nil, request_id: nil)
889
+ # Pass arguments to `create_lb_route_extension` via keyword arguments. Note that at
890
+ # least one keyword argument is required. To specify no parameters, or to keep all
891
+ # the default parameter values, pass an empty Hash as a request object (see above).
892
+ #
893
+ # @param parent [::String]
894
+ # Required. The parent resource of the `LbRouteExtension` resource. Must be
895
+ # in the format `projects/{project}/locations/{location}`.
896
+ # @param lb_route_extension_id [::String]
897
+ # Required. User-provided ID of the `LbRouteExtension` resource to be
898
+ # created.
899
+ # @param lb_route_extension [::Google::Cloud::NetworkServices::V1::LbRouteExtension, ::Hash]
900
+ # Required. `LbRouteExtension` resource to be created.
901
+ # @param request_id [::String]
902
+ # Optional. An optional request ID to identify requests. Specify a unique
903
+ # request ID so that if you must retry your request, the server can ignore
904
+ # the request if it has already been completed. The server guarantees
905
+ # that for at least 60 minutes since the first request.
906
+ #
907
+ # For example, consider a situation where you make an initial request and the
908
+ # request times out. If you make the request again with the same request
909
+ # ID, the server can check if original operation with the same request ID
910
+ # was received, and if so, ignores the second request. This prevents
911
+ # clients from accidentally creating duplicate commitments.
912
+ #
913
+ # The request ID must be a valid UUID with the exception that zero UUID is
914
+ # not supported (00000000-0000-0000-0000-000000000000).
915
+ # @yield [result, operation] Access the result along with the TransportOperation object
916
+ # @yieldparam result [::Gapic::Operation]
917
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
918
+ #
919
+ # @return [::Gapic::Operation]
920
+ #
921
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
922
+ #
923
+ # @example Basic example
924
+ # require "google/cloud/network_services/v1"
925
+ #
926
+ # # Create a client object. The client can be reused for multiple calls.
927
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
928
+ #
929
+ # # Create a request. To set request fields, pass in keyword arguments.
930
+ # request = Google::Cloud::NetworkServices::V1::CreateLbRouteExtensionRequest.new
931
+ #
932
+ # # Call the create_lb_route_extension method.
933
+ # result = client.create_lb_route_extension request
934
+ #
935
+ # # The returned object is of type Gapic::Operation. You can use it to
936
+ # # check the status of an operation, cancel it, or wait for results.
937
+ # # Here is how to wait for a response.
938
+ # result.wait_until_done! timeout: 60
939
+ # if result.response?
940
+ # p result.response
941
+ # else
942
+ # puts "No response received."
943
+ # end
944
+ #
945
+ def create_lb_route_extension request, options = nil
946
+ raise ::ArgumentError, "request must be provided" if request.nil?
947
+
948
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::CreateLbRouteExtensionRequest
949
+
950
+ # Converts hash and nil to an options object
951
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
952
+
953
+ # Customize the options with defaults
954
+ call_metadata = @config.rpcs.create_lb_route_extension.metadata.to_h
955
+
956
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
957
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
958
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
959
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
960
+ transports_version_send: [:rest]
961
+
962
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
963
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
964
+
965
+ options.apply_defaults timeout: @config.rpcs.create_lb_route_extension.timeout,
966
+ metadata: call_metadata,
967
+ retry_policy: @config.rpcs.create_lb_route_extension.retry_policy
968
+
969
+ options.apply_defaults timeout: @config.timeout,
970
+ metadata: @config.metadata,
971
+ retry_policy: @config.retry_policy
972
+
973
+ @dep_service_stub.create_lb_route_extension request, options do |result, operation|
974
+ result = ::Gapic::Operation.new result, @operations_client, options: options
975
+ yield result, operation if block_given?
976
+ return result
977
+ end
978
+ rescue ::Gapic::Rest::Error => e
979
+ raise ::Google::Cloud::Error.from_error(e)
980
+ end
981
+
982
+ ##
983
+ # Updates the parameters of the specified `LbRouteExtension` resource.
984
+ #
985
+ # @overload update_lb_route_extension(request, options = nil)
986
+ # Pass arguments to `update_lb_route_extension` via a request object, either of type
987
+ # {::Google::Cloud::NetworkServices::V1::UpdateLbRouteExtensionRequest} or an equivalent Hash.
988
+ #
989
+ # @param request [::Google::Cloud::NetworkServices::V1::UpdateLbRouteExtensionRequest, ::Hash]
990
+ # A request object representing the call parameters. Required. To specify no
991
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
992
+ # @param options [::Gapic::CallOptions, ::Hash]
993
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
994
+ #
995
+ # @overload update_lb_route_extension(update_mask: nil, lb_route_extension: nil, request_id: nil)
996
+ # Pass arguments to `update_lb_route_extension` via keyword arguments. Note that at
997
+ # least one keyword argument is required. To specify no parameters, or to keep all
998
+ # the default parameter values, pass an empty Hash as a request object (see above).
999
+ #
1000
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
1001
+ # Optional. Used to specify the fields to be overwritten in the
1002
+ # `LbRouteExtension` resource by the update.
1003
+ # The fields specified in the update_mask are relative to the resource, not
1004
+ # the full request. A field is overwritten if it is in the mask. If the
1005
+ # user does not specify a mask, then all fields are overwritten.
1006
+ # @param lb_route_extension [::Google::Cloud::NetworkServices::V1::LbRouteExtension, ::Hash]
1007
+ # Required. `LbRouteExtension` resource being updated.
1008
+ # @param request_id [::String]
1009
+ # Optional. An optional request ID to identify requests. Specify a unique
1010
+ # request ID so that if you must retry your request, the server can ignore
1011
+ # the request if it has already been completed. The server guarantees
1012
+ # that for at least 60 minutes since the first request.
1013
+ #
1014
+ # For example, consider a situation where you make an initial request and the
1015
+ # request times out. If you make the request again with the same request
1016
+ # ID, the server can check if original operation with the same request ID
1017
+ # was received, and if so, ignores the second request. This prevents
1018
+ # clients from accidentally creating duplicate commitments.
1019
+ #
1020
+ # The request ID must be a valid UUID with the exception that zero UUID is
1021
+ # not supported (00000000-0000-0000-0000-000000000000).
1022
+ # @yield [result, operation] Access the result along with the TransportOperation object
1023
+ # @yieldparam result [::Gapic::Operation]
1024
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
1025
+ #
1026
+ # @return [::Gapic::Operation]
1027
+ #
1028
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
1029
+ #
1030
+ # @example Basic example
1031
+ # require "google/cloud/network_services/v1"
1032
+ #
1033
+ # # Create a client object. The client can be reused for multiple calls.
1034
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
1035
+ #
1036
+ # # Create a request. To set request fields, pass in keyword arguments.
1037
+ # request = Google::Cloud::NetworkServices::V1::UpdateLbRouteExtensionRequest.new
1038
+ #
1039
+ # # Call the update_lb_route_extension method.
1040
+ # result = client.update_lb_route_extension request
1041
+ #
1042
+ # # The returned object is of type Gapic::Operation. You can use it to
1043
+ # # check the status of an operation, cancel it, or wait for results.
1044
+ # # Here is how to wait for a response.
1045
+ # result.wait_until_done! timeout: 60
1046
+ # if result.response?
1047
+ # p result.response
1048
+ # else
1049
+ # puts "No response received."
1050
+ # end
1051
+ #
1052
+ def update_lb_route_extension request, options = nil
1053
+ raise ::ArgumentError, "request must be provided" if request.nil?
1054
+
1055
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::UpdateLbRouteExtensionRequest
1056
+
1057
+ # Converts hash and nil to an options object
1058
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1059
+
1060
+ # Customize the options with defaults
1061
+ call_metadata = @config.rpcs.update_lb_route_extension.metadata.to_h
1062
+
1063
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
1064
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1065
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1066
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
1067
+ transports_version_send: [:rest]
1068
+
1069
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
1070
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1071
+
1072
+ options.apply_defaults timeout: @config.rpcs.update_lb_route_extension.timeout,
1073
+ metadata: call_metadata,
1074
+ retry_policy: @config.rpcs.update_lb_route_extension.retry_policy
1075
+
1076
+ options.apply_defaults timeout: @config.timeout,
1077
+ metadata: @config.metadata,
1078
+ retry_policy: @config.retry_policy
1079
+
1080
+ @dep_service_stub.update_lb_route_extension request, options do |result, operation|
1081
+ result = ::Gapic::Operation.new result, @operations_client, options: options
1082
+ yield result, operation if block_given?
1083
+ return result
1084
+ end
1085
+ rescue ::Gapic::Rest::Error => e
1086
+ raise ::Google::Cloud::Error.from_error(e)
1087
+ end
1088
+
1089
+ ##
1090
+ # Deletes the specified `LbRouteExtension` resource.
1091
+ #
1092
+ # @overload delete_lb_route_extension(request, options = nil)
1093
+ # Pass arguments to `delete_lb_route_extension` via a request object, either of type
1094
+ # {::Google::Cloud::NetworkServices::V1::DeleteLbRouteExtensionRequest} or an equivalent Hash.
1095
+ #
1096
+ # @param request [::Google::Cloud::NetworkServices::V1::DeleteLbRouteExtensionRequest, ::Hash]
1097
+ # A request object representing the call parameters. Required. To specify no
1098
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1099
+ # @param options [::Gapic::CallOptions, ::Hash]
1100
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
1101
+ #
1102
+ # @overload delete_lb_route_extension(name: nil, request_id: nil)
1103
+ # Pass arguments to `delete_lb_route_extension` via keyword arguments. Note that at
1104
+ # least one keyword argument is required. To specify no parameters, or to keep all
1105
+ # the default parameter values, pass an empty Hash as a request object (see above).
1106
+ #
1107
+ # @param name [::String]
1108
+ # Required. The name of the `LbRouteExtension` resource to delete. Must be in
1109
+ # the format
1110
+ # `projects/{project}/locations/{location}/lbRouteExtensions/{lb_route_extension}`.
1111
+ # @param request_id [::String]
1112
+ # Optional. An optional request ID to identify requests. Specify a unique
1113
+ # request ID so that if you must retry your request, the server can ignore
1114
+ # the request if it has already been completed. The server guarantees
1115
+ # that for at least 60 minutes after the first request.
1116
+ #
1117
+ # For example, consider a situation where you make an initial request and the
1118
+ # request times out. If you make the request again with the same request
1119
+ # ID, the server can check if original operation with the same request ID
1120
+ # was received, and if so, ignores the second request. This prevents
1121
+ # clients from accidentally creating duplicate commitments.
1122
+ #
1123
+ # The request ID must be a valid UUID with the exception that zero UUID is
1124
+ # not supported (00000000-0000-0000-0000-000000000000).
1125
+ # @yield [result, operation] Access the result along with the TransportOperation object
1126
+ # @yieldparam result [::Gapic::Operation]
1127
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
1128
+ #
1129
+ # @return [::Gapic::Operation]
1130
+ #
1131
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
1132
+ #
1133
+ # @example Basic example
1134
+ # require "google/cloud/network_services/v1"
1135
+ #
1136
+ # # Create a client object. The client can be reused for multiple calls.
1137
+ # client = Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new
1138
+ #
1139
+ # # Create a request. To set request fields, pass in keyword arguments.
1140
+ # request = Google::Cloud::NetworkServices::V1::DeleteLbRouteExtensionRequest.new
1141
+ #
1142
+ # # Call the delete_lb_route_extension method.
1143
+ # result = client.delete_lb_route_extension request
1144
+ #
1145
+ # # The returned object is of type Gapic::Operation. You can use it to
1146
+ # # check the status of an operation, cancel it, or wait for results.
1147
+ # # Here is how to wait for a response.
1148
+ # result.wait_until_done! timeout: 60
1149
+ # if result.response?
1150
+ # p result.response
1151
+ # else
1152
+ # puts "No response received."
1153
+ # end
1154
+ #
1155
+ def delete_lb_route_extension request, options = nil
1156
+ raise ::ArgumentError, "request must be provided" if request.nil?
1157
+
1158
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetworkServices::V1::DeleteLbRouteExtensionRequest
1159
+
1160
+ # Converts hash and nil to an options object
1161
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1162
+
1163
+ # Customize the options with defaults
1164
+ call_metadata = @config.rpcs.delete_lb_route_extension.metadata.to_h
1165
+
1166
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
1167
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1168
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1169
+ gapic_version: ::Google::Cloud::NetworkServices::V1::VERSION,
1170
+ transports_version_send: [:rest]
1171
+
1172
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
1173
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1174
+
1175
+ options.apply_defaults timeout: @config.rpcs.delete_lb_route_extension.timeout,
1176
+ metadata: call_metadata,
1177
+ retry_policy: @config.rpcs.delete_lb_route_extension.retry_policy
1178
+
1179
+ options.apply_defaults timeout: @config.timeout,
1180
+ metadata: @config.metadata,
1181
+ retry_policy: @config.retry_policy
1182
+
1183
+ @dep_service_stub.delete_lb_route_extension request, options do |result, operation|
1184
+ result = ::Gapic::Operation.new result, @operations_client, options: options
1185
+ yield result, operation if block_given?
1186
+ return result
1187
+ end
1188
+ rescue ::Gapic::Rest::Error => e
1189
+ raise ::Google::Cloud::Error.from_error(e)
1190
+ end
1191
+
1192
+ ##
1193
+ # Configuration class for the DepService REST API.
1194
+ #
1195
+ # This class represents the configuration for DepService REST,
1196
+ # providing control over timeouts, retry behavior, logging, transport
1197
+ # parameters, and other low-level controls. Certain parameters can also be
1198
+ # applied individually to specific RPCs. See
1199
+ # {::Google::Cloud::NetworkServices::V1::DepService::Rest::Client::Configuration::Rpcs}
1200
+ # for a list of RPCs that can be configured independently.
1201
+ #
1202
+ # Configuration can be applied globally to all clients, or to a single client
1203
+ # on construction.
1204
+ #
1205
+ # @example
1206
+ #
1207
+ # # Modify the global config, setting the timeout for
1208
+ # # list_lb_traffic_extensions to 20 seconds,
1209
+ # # and all remaining timeouts to 10 seconds.
1210
+ # ::Google::Cloud::NetworkServices::V1::DepService::Rest::Client.configure do |config|
1211
+ # config.timeout = 10.0
1212
+ # config.rpcs.list_lb_traffic_extensions.timeout = 20.0
1213
+ # end
1214
+ #
1215
+ # # Apply the above configuration only to a new client.
1216
+ # client = ::Google::Cloud::NetworkServices::V1::DepService::Rest::Client.new do |config|
1217
+ # config.timeout = 10.0
1218
+ # config.rpcs.list_lb_traffic_extensions.timeout = 20.0
1219
+ # end
1220
+ #
1221
+ # @!attribute [rw] endpoint
1222
+ # A custom service endpoint, as a hostname or hostname:port. The default is
1223
+ # nil, indicating to use the default endpoint in the current universe domain.
1224
+ # @return [::String,nil]
1225
+ # @!attribute [rw] credentials
1226
+ # Credentials to send with calls. You may provide any of the following types:
1227
+ # * (`String`) The path to a service account key file in JSON format
1228
+ # * (`Hash`) A service account key as a Hash
1229
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
1230
+ # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
1231
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
1232
+ # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
1233
+ # * (`nil`) indicating no credentials
1234
+ # @return [::Object]
1235
+ # @!attribute [rw] scope
1236
+ # The OAuth scopes
1237
+ # @return [::Array<::String>]
1238
+ # @!attribute [rw] lib_name
1239
+ # The library name as recorded in instrumentation and logging
1240
+ # @return [::String]
1241
+ # @!attribute [rw] lib_version
1242
+ # The library version as recorded in instrumentation and logging
1243
+ # @return [::String]
1244
+ # @!attribute [rw] timeout
1245
+ # The call timeout in seconds.
1246
+ # @return [::Numeric]
1247
+ # @!attribute [rw] metadata
1248
+ # Additional headers to be sent with the call.
1249
+ # @return [::Hash{::Symbol=>::String}]
1250
+ # @!attribute [rw] retry_policy
1251
+ # The retry policy. The value is a hash with the following keys:
1252
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
1253
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
1254
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
1255
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
1256
+ # trigger a retry.
1257
+ # @return [::Hash]
1258
+ # @!attribute [rw] quota_project
1259
+ # A separate project against which to charge quota.
1260
+ # @return [::String]
1261
+ # @!attribute [rw] universe_domain
1262
+ # The universe domain within which to make requests. This determines the
1263
+ # default endpoint URL. The default value of nil uses the environment
1264
+ # universe (usually the default "googleapis.com" universe).
1265
+ # @return [::String,nil]
1266
+ #
1267
+ class Configuration
1268
+ extend ::Gapic::Config
1269
+
1270
+ # @private
1271
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
1272
+ DEFAULT_ENDPOINT = "networkservices.googleapis.com"
1273
+
1274
+ config_attr :endpoint, nil, ::String, nil
1275
+ config_attr :credentials, nil do |value|
1276
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1277
+ allowed.any? { |klass| klass === value }
1278
+ end
1279
+ config_attr :scope, nil, ::String, ::Array, nil
1280
+ config_attr :lib_name, nil, ::String, nil
1281
+ config_attr :lib_version, nil, ::String, nil
1282
+ config_attr :timeout, nil, ::Numeric, nil
1283
+ config_attr :metadata, nil, ::Hash, nil
1284
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1285
+ config_attr :quota_project, nil, ::String, nil
1286
+ config_attr :universe_domain, nil, ::String, nil
1287
+
1288
+ # @private
1289
+ # Overrides for http bindings for the RPCs of this service
1290
+ # are only used when this service is used as mixin, and only
1291
+ # by the host service.
1292
+ # @return [::Hash{::Symbol=>::Array<::Gapic::Rest::GrpcTranscoder::HttpBinding>}]
1293
+ config_attr :bindings_override, {}, ::Hash, nil
1294
+
1295
+ # @private
1296
+ def initialize parent_config = nil
1297
+ @parent_config = parent_config unless parent_config.nil?
1298
+
1299
+ yield self if block_given?
1300
+ end
1301
+
1302
+ ##
1303
+ # Configurations for individual RPCs
1304
+ # @return [Rpcs]
1305
+ #
1306
+ def rpcs
1307
+ @rpcs ||= begin
1308
+ parent_rpcs = nil
1309
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
1310
+ Rpcs.new parent_rpcs
1311
+ end
1312
+ end
1313
+
1314
+ ##
1315
+ # Configuration RPC class for the DepService API.
1316
+ #
1317
+ # Includes fields providing the configuration for each RPC in this service.
1318
+ # Each configuration object is of type `Gapic::Config::Method` and includes
1319
+ # the following configuration fields:
1320
+ #
1321
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
1322
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers
1323
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
1324
+ # include the following keys:
1325
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
1326
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
1327
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
1328
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
1329
+ # trigger a retry.
1330
+ #
1331
+ class Rpcs
1332
+ ##
1333
+ # RPC-specific configuration for `list_lb_traffic_extensions`
1334
+ # @return [::Gapic::Config::Method]
1335
+ #
1336
+ attr_reader :list_lb_traffic_extensions
1337
+ ##
1338
+ # RPC-specific configuration for `get_lb_traffic_extension`
1339
+ # @return [::Gapic::Config::Method]
1340
+ #
1341
+ attr_reader :get_lb_traffic_extension
1342
+ ##
1343
+ # RPC-specific configuration for `create_lb_traffic_extension`
1344
+ # @return [::Gapic::Config::Method]
1345
+ #
1346
+ attr_reader :create_lb_traffic_extension
1347
+ ##
1348
+ # RPC-specific configuration for `update_lb_traffic_extension`
1349
+ # @return [::Gapic::Config::Method]
1350
+ #
1351
+ attr_reader :update_lb_traffic_extension
1352
+ ##
1353
+ # RPC-specific configuration for `delete_lb_traffic_extension`
1354
+ # @return [::Gapic::Config::Method]
1355
+ #
1356
+ attr_reader :delete_lb_traffic_extension
1357
+ ##
1358
+ # RPC-specific configuration for `list_lb_route_extensions`
1359
+ # @return [::Gapic::Config::Method]
1360
+ #
1361
+ attr_reader :list_lb_route_extensions
1362
+ ##
1363
+ # RPC-specific configuration for `get_lb_route_extension`
1364
+ # @return [::Gapic::Config::Method]
1365
+ #
1366
+ attr_reader :get_lb_route_extension
1367
+ ##
1368
+ # RPC-specific configuration for `create_lb_route_extension`
1369
+ # @return [::Gapic::Config::Method]
1370
+ #
1371
+ attr_reader :create_lb_route_extension
1372
+ ##
1373
+ # RPC-specific configuration for `update_lb_route_extension`
1374
+ # @return [::Gapic::Config::Method]
1375
+ #
1376
+ attr_reader :update_lb_route_extension
1377
+ ##
1378
+ # RPC-specific configuration for `delete_lb_route_extension`
1379
+ # @return [::Gapic::Config::Method]
1380
+ #
1381
+ attr_reader :delete_lb_route_extension
1382
+
1383
+ # @private
1384
+ def initialize parent_rpcs = nil
1385
+ list_lb_traffic_extensions_config = parent_rpcs.list_lb_traffic_extensions if parent_rpcs.respond_to? :list_lb_traffic_extensions
1386
+ @list_lb_traffic_extensions = ::Gapic::Config::Method.new list_lb_traffic_extensions_config
1387
+ get_lb_traffic_extension_config = parent_rpcs.get_lb_traffic_extension if parent_rpcs.respond_to? :get_lb_traffic_extension
1388
+ @get_lb_traffic_extension = ::Gapic::Config::Method.new get_lb_traffic_extension_config
1389
+ create_lb_traffic_extension_config = parent_rpcs.create_lb_traffic_extension if parent_rpcs.respond_to? :create_lb_traffic_extension
1390
+ @create_lb_traffic_extension = ::Gapic::Config::Method.new create_lb_traffic_extension_config
1391
+ update_lb_traffic_extension_config = parent_rpcs.update_lb_traffic_extension if parent_rpcs.respond_to? :update_lb_traffic_extension
1392
+ @update_lb_traffic_extension = ::Gapic::Config::Method.new update_lb_traffic_extension_config
1393
+ delete_lb_traffic_extension_config = parent_rpcs.delete_lb_traffic_extension if parent_rpcs.respond_to? :delete_lb_traffic_extension
1394
+ @delete_lb_traffic_extension = ::Gapic::Config::Method.new delete_lb_traffic_extension_config
1395
+ list_lb_route_extensions_config = parent_rpcs.list_lb_route_extensions if parent_rpcs.respond_to? :list_lb_route_extensions
1396
+ @list_lb_route_extensions = ::Gapic::Config::Method.new list_lb_route_extensions_config
1397
+ get_lb_route_extension_config = parent_rpcs.get_lb_route_extension if parent_rpcs.respond_to? :get_lb_route_extension
1398
+ @get_lb_route_extension = ::Gapic::Config::Method.new get_lb_route_extension_config
1399
+ create_lb_route_extension_config = parent_rpcs.create_lb_route_extension if parent_rpcs.respond_to? :create_lb_route_extension
1400
+ @create_lb_route_extension = ::Gapic::Config::Method.new create_lb_route_extension_config
1401
+ update_lb_route_extension_config = parent_rpcs.update_lb_route_extension if parent_rpcs.respond_to? :update_lb_route_extension
1402
+ @update_lb_route_extension = ::Gapic::Config::Method.new update_lb_route_extension_config
1403
+ delete_lb_route_extension_config = parent_rpcs.delete_lb_route_extension if parent_rpcs.respond_to? :delete_lb_route_extension
1404
+ @delete_lb_route_extension = ::Gapic::Config::Method.new delete_lb_route_extension_config
1405
+
1406
+ yield self if block_given?
1407
+ end
1408
+ end
1409
+ end
1410
+ end
1411
+ end
1412
+ end
1413
+ end
1414
+ end
1415
+ end
1416
+ end