google-apis-networkservices_v1beta1 0.29.0 → 0.30.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 42bc5acde2d22ef8eb9a6eed64b043f0f4e5603323c0b6f2aa3974a303f0c0ce
4
- data.tar.gz: 1e838774225ce6d87d196be63707369cb6414a239702c0bc31b95ebce2105c1d
3
+ metadata.gz: 1719fac10e53bce156a35ca403bd85dfe4a3806cb8be9cdcc7aa5e5249f8bea1
4
+ data.tar.gz: f9710b0123b1ba1c747a5b62fdf13e21f1e06b4e2dc9ab4aa31c609870350837
5
5
  SHA512:
6
- metadata.gz: b00501ab5fa2bf57f8d3ed3b6df6a96568b20d377e330b0b3e25a15ac331970d162b2cd97d1f659217b9556b1f86db1da482bc0ebfd3c9753e62dc377b6bb2f5
7
- data.tar.gz: 6e689421d8ba74df95dff3ed801164eb71b1eb2f30d6eaa93d318a9b0f647be9376a47dfee0c153d6554b5f78c2cf1d95e14a5aeb9a71410bb77a2b635a0848b
6
+ metadata.gz: 55389d5046f20b95b776c6adfa22e407cf18074e6a69848d8dab9ea7900b408c2394cede4beaf4289a663dfcfe34e84a4d71468a93be63ec70789eb5213020d2
7
+ data.tar.gz: 788d8e178759bafe6dfa44a6a5675a0610c17cad91270a378fd67e2050a623261d5ce49679397495bfaab5505a183b8b6dad0526cd30e5ad19b145c6836acbb4
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-networkservices_v1beta1
2
2
 
3
+ ### v0.30.0 (2023-10-01)
4
+
5
+ * Regenerated from discovery document revision 20230926
6
+
3
7
  ### v0.29.0 (2023-08-27)
4
8
 
5
9
  * Regenerated from discovery document revision 20230814
@@ -369,6 +369,140 @@ module Google
369
369
  end
370
370
  end
371
371
 
372
+ # A single extension chain wrapper that contains the match conditions and
373
+ # extensions to execute.
374
+ class ExtensionChain
375
+ include Google::Apis::Core::Hashable
376
+
377
+ # Required. A set of extensions to execute for the matching request. At least
378
+ # one extension is required. Up to 3 extensions can be defined for each
379
+ # extension chain for `LbTrafficExtension` resource. `LbRouteExtension` chains
380
+ # are limited to 1 extension per extension chain.
381
+ # Corresponds to the JSON property `extensions`
382
+ # @return [Array<Google::Apis::NetworkservicesV1beta1::ExtensionChainExtension>]
383
+ attr_accessor :extensions
384
+
385
+ # Conditions under which this chain is invoked for a request.
386
+ # Corresponds to the JSON property `matchCondition`
387
+ # @return [Google::Apis::NetworkservicesV1beta1::ExtensionChainMatchCondition]
388
+ attr_accessor :match_condition
389
+
390
+ # Required. The name for this extension chain. The name is logged as part of the
391
+ # HTTP request logs. The name must conform with RFC-1034, is restricted to lower-
392
+ # cased letters, numbers and hyphens, and can have a maximum length of 63
393
+ # characters. Additionally, the first character must be a letter and the last a
394
+ # letter or a number.
395
+ # Corresponds to the JSON property `name`
396
+ # @return [String]
397
+ attr_accessor :name
398
+
399
+ def initialize(**args)
400
+ update!(**args)
401
+ end
402
+
403
+ # Update properties of this object
404
+ def update!(**args)
405
+ @extensions = args[:extensions] if args.key?(:extensions)
406
+ @match_condition = args[:match_condition] if args.key?(:match_condition)
407
+ @name = args[:name] if args.key?(:name)
408
+ end
409
+ end
410
+
411
+ # A single extension in the chain to execute for the matching request.
412
+ class ExtensionChainExtension
413
+ include Google::Apis::Core::Hashable
414
+
415
+ # Required. The `:authority` header in the gRPC request sent from Envoy to the
416
+ # extension service.
417
+ # Corresponds to the JSON property `authority`
418
+ # @return [String]
419
+ attr_accessor :authority
420
+
421
+ # Optional. Determines how the proxy behaves if the call to the extension fails
422
+ # or times out. When set to `TRUE`, request or response processing continues
423
+ # without error. Any subsequent extensions in the extension chain are also
424
+ # executed. When set to `FALSE`: * If response headers have not been delivered
425
+ # to the downstream client, a generic 500 error is returned to the client. The
426
+ # error response can be tailored by configuring a custom error response in the
427
+ # load balancer. * If response headers have been delivered, then the HTTP stream
428
+ # to the downstream client is reset. Default is `FALSE`.
429
+ # Corresponds to the JSON property `failOpen`
430
+ # @return [Boolean]
431
+ attr_accessor :fail_open
432
+ alias_method :fail_open?, :fail_open
433
+
434
+ # Optional. List of the HTTP headers to forward to the extension (from the
435
+ # client or backend). If omitted, all headers are sent. Each element is a string
436
+ # indicating the header name.
437
+ # Corresponds to the JSON property `forwardHeaders`
438
+ # @return [Array<String>]
439
+ attr_accessor :forward_headers
440
+
441
+ # Required. The name for this extension. The name is logged as part of the HTTP
442
+ # request logs. The name must conform with RFC-1034, is restricted to lower-
443
+ # cased letters, numbers and hyphens, and can have a maximum length of 63
444
+ # characters. Additionally, the first character must be a letter and the last a
445
+ # letter or a number.
446
+ # Corresponds to the JSON property `name`
447
+ # @return [String]
448
+ attr_accessor :name
449
+
450
+ # Required. The reference to the service that runs the extension. Must be a
451
+ # reference to a [backend service](https://cloud.google.com/compute/docs/
452
+ # reference/rest/v1/backendServices).
453
+ # Corresponds to the JSON property `service`
454
+ # @return [String]
455
+ attr_accessor :service
456
+
457
+ # Optional. A set of events during request or response processing for which this
458
+ # extension is called. This field is required for the `LbTrafficExtension`
459
+ # resource. It's not relevant for the `LbRouteExtension` resource.
460
+ # Corresponds to the JSON property `supportedEvents`
461
+ # @return [Array<String>]
462
+ attr_accessor :supported_events
463
+
464
+ # Required. Specifies the timeout for each individual message on the stream. The
465
+ # timeout must be between 10-1000 milliseconds.
466
+ # Corresponds to the JSON property `timeout`
467
+ # @return [String]
468
+ attr_accessor :timeout
469
+
470
+ def initialize(**args)
471
+ update!(**args)
472
+ end
473
+
474
+ # Update properties of this object
475
+ def update!(**args)
476
+ @authority = args[:authority] if args.key?(:authority)
477
+ @fail_open = args[:fail_open] if args.key?(:fail_open)
478
+ @forward_headers = args[:forward_headers] if args.key?(:forward_headers)
479
+ @name = args[:name] if args.key?(:name)
480
+ @service = args[:service] if args.key?(:service)
481
+ @supported_events = args[:supported_events] if args.key?(:supported_events)
482
+ @timeout = args[:timeout] if args.key?(:timeout)
483
+ end
484
+ end
485
+
486
+ # Conditions under which this chain is invoked for a request.
487
+ class ExtensionChainMatchCondition
488
+ include Google::Apis::Core::Hashable
489
+
490
+ # Required. A Common Expression Language (CEL) expression that is used to match
491
+ # requests for which the extension chain is executed.
492
+ # Corresponds to the JSON property `celExpression`
493
+ # @return [String]
494
+ attr_accessor :cel_expression
495
+
496
+ def initialize(**args)
497
+ update!(**args)
498
+ end
499
+
500
+ # Update properties of this object
501
+ def update!(**args)
502
+ @cel_expression = args[:cel_expression] if args.key?(:cel_expression)
503
+ end
504
+ end
505
+
372
506
  # Gateway represents the configuration for a proxy, typically a load balancer.
373
507
  # It captures the ip:port over which the services are exposed by the proxy,
374
508
  # along with any policy configurations. Routes have reference to to Gateways to
@@ -854,6 +988,17 @@ module Google
854
988
  # @return [Google::Apis::NetworkservicesV1beta1::GrpcRouteRetryPolicy]
855
989
  attr_accessor :retry_policy
856
990
 
991
+ # The specification for cookie-based stateful session affinity where the date
992
+ # plane supplies a “session cookie” with the name "GSSA" which encodes a
993
+ # specific destination host and each request containing that cookie will be
994
+ # directed to that host as long as the destination host remains up and healthy.
995
+ # The gRPC proxyless mesh library or sidecar proxy will manage the session
996
+ # cookie but the client application code is responsible for copying the cookie
997
+ # from each RPC in the session to the next.
998
+ # Corresponds to the JSON property `statefulSessionAffinity`
999
+ # @return [Google::Apis::NetworkservicesV1beta1::GrpcRouteStatefulSessionAffinityPolicy]
1000
+ attr_accessor :stateful_session_affinity
1001
+
857
1002
  # Optional. Specifies the timeout for selected route. Timeout is computed from
858
1003
  # the time the request has been fully processed (i.e. end of stream) up until
859
1004
  # the response has been completely processed. Timeout includes all retries.
@@ -870,6 +1015,7 @@ module Google
870
1015
  @destinations = args[:destinations] if args.key?(:destinations)
871
1016
  @fault_injection_policy = args[:fault_injection_policy] if args.key?(:fault_injection_policy)
872
1017
  @retry_policy = args[:retry_policy] if args.key?(:retry_policy)
1018
+ @stateful_session_affinity = args[:stateful_session_affinity] if args.key?(:stateful_session_affinity)
873
1019
  @timeout = args[:timeout] if args.key?(:timeout)
874
1020
  end
875
1021
  end
@@ -928,6 +1074,33 @@ module Google
928
1074
  end
929
1075
  end
930
1076
 
1077
+ # The specification for cookie-based stateful session affinity where the date
1078
+ # plane supplies a “session cookie” with the name "GSSA" which encodes a
1079
+ # specific destination host and each request containing that cookie will be
1080
+ # directed to that host as long as the destination host remains up and healthy.
1081
+ # The gRPC proxyless mesh library or sidecar proxy will manage the session
1082
+ # cookie but the client application code is responsible for copying the cookie
1083
+ # from each RPC in the session to the next.
1084
+ class GrpcRouteStatefulSessionAffinityPolicy
1085
+ include Google::Apis::Core::Hashable
1086
+
1087
+ # Required. The cookie TTL value for the Set-Cookie header generated by the data
1088
+ # plane. The lifetime of the cookie may be set to a value from 1 to 86400
1089
+ # seconds (24 hours) inclusive.
1090
+ # Corresponds to the JSON property `cookieTtl`
1091
+ # @return [String]
1092
+ attr_accessor :cookie_ttl
1093
+
1094
+ def initialize(**args)
1095
+ update!(**args)
1096
+ end
1097
+
1098
+ # Update properties of this object
1099
+ def update!(**args)
1100
+ @cookie_ttl = args[:cookie_ttl] if args.key?(:cookie_ttl)
1101
+ end
1102
+ end
1103
+
931
1104
  # HttpRoute is the resource defining how HTTP traffic should be routed by a Mesh
932
1105
  # or Gateway resource.
933
1106
  class HttpRoute
@@ -1572,6 +1745,17 @@ module Google
1572
1745
  # @return [Google::Apis::NetworkservicesV1beta1::HttpRouteRetryPolicy]
1573
1746
  attr_accessor :retry_policy
1574
1747
 
1748
+ # The specification for cookie-based stateful session affinity where the date
1749
+ # plane supplies a “session cookie” with the name "GSSA" which encodes a
1750
+ # specific destination host and each request containing that cookie will be
1751
+ # directed to that host as long as the destination host remains up and healthy.
1752
+ # The gRPC proxyless mesh library or sidecar proxy will manage the session
1753
+ # cookie but the client application code is responsible for copying the cookie
1754
+ # from each RPC in the session to the next.
1755
+ # Corresponds to the JSON property `statefulSessionAffinity`
1756
+ # @return [Google::Apis::NetworkservicesV1beta1::HttpRouteStatefulSessionAffinityPolicy]
1757
+ attr_accessor :stateful_session_affinity
1758
+
1575
1759
  # Specifies the timeout for selected route. Timeout is computed from the time
1576
1760
  # the request has been fully processed (i.e. end of stream) up until the
1577
1761
  # response has been completely processed. Timeout includes all retries.
@@ -1599,6 +1783,7 @@ module Google
1599
1783
  @request_mirror_policy = args[:request_mirror_policy] if args.key?(:request_mirror_policy)
1600
1784
  @response_header_modifier = args[:response_header_modifier] if args.key?(:response_header_modifier)
1601
1785
  @retry_policy = args[:retry_policy] if args.key?(:retry_policy)
1786
+ @stateful_session_affinity = args[:stateful_session_affinity] if args.key?(:stateful_session_affinity)
1602
1787
  @timeout = args[:timeout] if args.key?(:timeout)
1603
1788
  @url_rewrite = args[:url_rewrite] if args.key?(:url_rewrite)
1604
1789
  end
@@ -1696,6 +1881,33 @@ module Google
1696
1881
  end
1697
1882
  end
1698
1883
 
1884
+ # The specification for cookie-based stateful session affinity where the date
1885
+ # plane supplies a “session cookie” with the name "GSSA" which encodes a
1886
+ # specific destination host and each request containing that cookie will be
1887
+ # directed to that host as long as the destination host remains up and healthy.
1888
+ # The gRPC proxyless mesh library or sidecar proxy will manage the session
1889
+ # cookie but the client application code is responsible for copying the cookie
1890
+ # from each RPC in the session to the next.
1891
+ class HttpRouteStatefulSessionAffinityPolicy
1892
+ include Google::Apis::Core::Hashable
1893
+
1894
+ # Required. The cookie TTL value for the Set-Cookie header generated by the data
1895
+ # plane. The lifetime of the cookie may be set to a value from 1 to 86400
1896
+ # seconds (24 hours) inclusive.
1897
+ # Corresponds to the JSON property `cookieTtl`
1898
+ # @return [String]
1899
+ attr_accessor :cookie_ttl
1900
+
1901
+ def initialize(**args)
1902
+ update!(**args)
1903
+ end
1904
+
1905
+ # Update properties of this object
1906
+ def update!(**args)
1907
+ @cookie_ttl = args[:cookie_ttl] if args.key?(:cookie_ttl)
1908
+ end
1909
+ end
1910
+
1699
1911
  # The specification for modifying the URL of the request, prior to forwarding
1700
1912
  # the request to the destination.
1701
1913
  class HttpRouteUrlRewrite
@@ -1724,6 +1936,158 @@ module Google
1724
1936
  end
1725
1937
  end
1726
1938
 
1939
+ # `LbRouteExtension` is a resource that lets you control where traffic is routed
1940
+ # to for a given request.
1941
+ class LbRouteExtension
1942
+ include Google::Apis::Core::Hashable
1943
+
1944
+ # Output only. The timestamp when the resource was created.
1945
+ # Corresponds to the JSON property `createTime`
1946
+ # @return [String]
1947
+ attr_accessor :create_time
1948
+
1949
+ # Optional. A human-readable description of the resource.
1950
+ # Corresponds to the JSON property `description`
1951
+ # @return [String]
1952
+ attr_accessor :description
1953
+
1954
+ # Required. A set of ordered extension chains that contain the match conditions
1955
+ # and extensions to execute. Match conditions for each extension chain are
1956
+ # evaluated in sequence for a given request. The first extension chain that has
1957
+ # a condition that matches the request is executed. Any subsequent extension
1958
+ # chains do not execute. Limited to 5 extension chains per resource.
1959
+ # Corresponds to the JSON property `extensionChains`
1960
+ # @return [Array<Google::Apis::NetworkservicesV1beta1::ExtensionChain>]
1961
+ attr_accessor :extension_chains
1962
+
1963
+ # Required. A list of references to the forwarding rules to which this service
1964
+ # extension is attach to. At least one forwarding rule is required. There can be
1965
+ # only one `LbRouteExtension` resource per forwarding rule.
1966
+ # Corresponds to the JSON property `forwardingRules`
1967
+ # @return [Array<String>]
1968
+ attr_accessor :forwarding_rules
1969
+
1970
+ # Optional. Set of labels associated with the `LbRouteExtension` resource. The
1971
+ # format must comply with [the following requirements](/compute/docs/labeling-
1972
+ # resources#requirements).
1973
+ # Corresponds to the JSON property `labels`
1974
+ # @return [Hash<String,String>]
1975
+ attr_accessor :labels
1976
+
1977
+ # Required. All backend services and forwarding rules referenced by this
1978
+ # extension must share the same load balancing scheme. Supported values: `
1979
+ # INTERNAL_MANAGED`, `EXTERNAL_MANAGED`.
1980
+ # Corresponds to the JSON property `loadBalancingScheme`
1981
+ # @return [String]
1982
+ attr_accessor :load_balancing_scheme
1983
+
1984
+ # Required. Name of the `LbRouteExtension` resource in the following format: `
1985
+ # projects/`project`/locations/`location`/lbRouteExtensions/`lb_route_extension``
1986
+ # .
1987
+ # Corresponds to the JSON property `name`
1988
+ # @return [String]
1989
+ attr_accessor :name
1990
+
1991
+ # Output only. The timestamp when the resource was updated.
1992
+ # Corresponds to the JSON property `updateTime`
1993
+ # @return [String]
1994
+ attr_accessor :update_time
1995
+
1996
+ def initialize(**args)
1997
+ update!(**args)
1998
+ end
1999
+
2000
+ # Update properties of this object
2001
+ def update!(**args)
2002
+ @create_time = args[:create_time] if args.key?(:create_time)
2003
+ @description = args[:description] if args.key?(:description)
2004
+ @extension_chains = args[:extension_chains] if args.key?(:extension_chains)
2005
+ @forwarding_rules = args[:forwarding_rules] if args.key?(:forwarding_rules)
2006
+ @labels = args[:labels] if args.key?(:labels)
2007
+ @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme)
2008
+ @name = args[:name] if args.key?(:name)
2009
+ @update_time = args[:update_time] if args.key?(:update_time)
2010
+ end
2011
+ end
2012
+
2013
+ # `LbTrafficExtension` is a resource that lets the extension service modify the
2014
+ # headers and payloads of both requests and responses without impacting the
2015
+ # choice of backend services or any other security policies associated with the
2016
+ # backend service.
2017
+ class LbTrafficExtension
2018
+ include Google::Apis::Core::Hashable
2019
+
2020
+ # Output only. The timestamp when the resource was created.
2021
+ # Corresponds to the JSON property `createTime`
2022
+ # @return [String]
2023
+ attr_accessor :create_time
2024
+
2025
+ # Optional. A human-readable description of the resource.
2026
+ # Corresponds to the JSON property `description`
2027
+ # @return [String]
2028
+ attr_accessor :description
2029
+
2030
+ # Required. A set of ordered extension chains that contain the match conditions
2031
+ # and extensions to execute. Match conditions for each extension chain are
2032
+ # evaluated in sequence for a given request. The first extension chain that has
2033
+ # a condition that matches the request is executed. Any subsequent extension
2034
+ # chains do not execute. Limited to 5 extension chains per resource.
2035
+ # Corresponds to the JSON property `extensionChains`
2036
+ # @return [Array<Google::Apis::NetworkservicesV1beta1::ExtensionChain>]
2037
+ attr_accessor :extension_chains
2038
+
2039
+ # Required. A list of references to the forwarding rules to which this service
2040
+ # extension is attach to. At least one forwarding rule is required. There can be
2041
+ # only one `LBTrafficExtension` resource per forwarding rule.
2042
+ # Corresponds to the JSON property `forwardingRules`
2043
+ # @return [Array<String>]
2044
+ attr_accessor :forwarding_rules
2045
+
2046
+ # Optional. Set of labels associated with the `LbTrafficExtension` resource. The
2047
+ # format must comply with [the following requirements](/compute/docs/labeling-
2048
+ # resources#requirements).
2049
+ # Corresponds to the JSON property `labels`
2050
+ # @return [Hash<String,String>]
2051
+ attr_accessor :labels
2052
+
2053
+ # Required. All backend services and forwarding rules referenced by this
2054
+ # extension must share the same load balancing scheme. Supported values: `
2055
+ # INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to [
2056
+ # Choosing a load balancer](https://cloud.google.com/load-balancing/docs/backend-
2057
+ # service).
2058
+ # Corresponds to the JSON property `loadBalancingScheme`
2059
+ # @return [String]
2060
+ attr_accessor :load_balancing_scheme
2061
+
2062
+ # Required. Name of the `LbTrafficExtension` resource in the following format: `
2063
+ # projects/`project`/locations/`location`/lbTrafficExtensions/`
2064
+ # lb_traffic_extension``.
2065
+ # Corresponds to the JSON property `name`
2066
+ # @return [String]
2067
+ attr_accessor :name
2068
+
2069
+ # Output only. The timestamp when the resource was updated.
2070
+ # Corresponds to the JSON property `updateTime`
2071
+ # @return [String]
2072
+ attr_accessor :update_time
2073
+
2074
+ def initialize(**args)
2075
+ update!(**args)
2076
+ end
2077
+
2078
+ # Update properties of this object
2079
+ def update!(**args)
2080
+ @create_time = args[:create_time] if args.key?(:create_time)
2081
+ @description = args[:description] if args.key?(:description)
2082
+ @extension_chains = args[:extension_chains] if args.key?(:extension_chains)
2083
+ @forwarding_rules = args[:forwarding_rules] if args.key?(:forwarding_rules)
2084
+ @labels = args[:labels] if args.key?(:labels)
2085
+ @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme)
2086
+ @name = args[:name] if args.key?(:name)
2087
+ @update_time = args[:update_time] if args.key?(:update_time)
2088
+ end
2089
+ end
2090
+
1727
2091
  # Response returned by the ListEndpointPolicies method.
1728
2092
  class ListEndpointPoliciesResponse
1729
2093
  include Google::Apis::Core::Hashable
@@ -1838,6 +2202,68 @@ module Google
1838
2202
  end
1839
2203
  end
1840
2204
 
2205
+ # Message for response to listing `LbRouteExtension` resources.
2206
+ class ListLbRouteExtensionsResponse
2207
+ include Google::Apis::Core::Hashable
2208
+
2209
+ # The list of `LbRouteExtension` resources.
2210
+ # Corresponds to the JSON property `lbRouteExtensions`
2211
+ # @return [Array<Google::Apis::NetworkservicesV1beta1::LbRouteExtension>]
2212
+ attr_accessor :lb_route_extensions
2213
+
2214
+ # A token identifying a page of results that the server returns.
2215
+ # Corresponds to the JSON property `nextPageToken`
2216
+ # @return [String]
2217
+ attr_accessor :next_page_token
2218
+
2219
+ # Locations that could not be reached.
2220
+ # Corresponds to the JSON property `unreachable`
2221
+ # @return [Array<String>]
2222
+ attr_accessor :unreachable
2223
+
2224
+ def initialize(**args)
2225
+ update!(**args)
2226
+ end
2227
+
2228
+ # Update properties of this object
2229
+ def update!(**args)
2230
+ @lb_route_extensions = args[:lb_route_extensions] if args.key?(:lb_route_extensions)
2231
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2232
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
2233
+ end
2234
+ end
2235
+
2236
+ # Message for response to listing `LbTrafficExtension` resources.
2237
+ class ListLbTrafficExtensionsResponse
2238
+ include Google::Apis::Core::Hashable
2239
+
2240
+ # The list of `LbTrafficExtension` resources.
2241
+ # Corresponds to the JSON property `lbTrafficExtensions`
2242
+ # @return [Array<Google::Apis::NetworkservicesV1beta1::LbTrafficExtension>]
2243
+ attr_accessor :lb_traffic_extensions
2244
+
2245
+ # A token identifying a page of results that the server returns.
2246
+ # Corresponds to the JSON property `nextPageToken`
2247
+ # @return [String]
2248
+ attr_accessor :next_page_token
2249
+
2250
+ # Locations that could not be reached.
2251
+ # Corresponds to the JSON property `unreachable`
2252
+ # @return [Array<String>]
2253
+ attr_accessor :unreachable
2254
+
2255
+ def initialize(**args)
2256
+ update!(**args)
2257
+ end
2258
+
2259
+ # Update properties of this object
2260
+ def update!(**args)
2261
+ @lb_traffic_extensions = args[:lb_traffic_extensions] if args.key?(:lb_traffic_extensions)
2262
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2263
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
2264
+ end
2265
+ end
2266
+
1841
2267
  # The response message for Locations.ListLocations.
1842
2268
  class ListLocationsResponse
1843
2269
  include Google::Apis::Core::Hashable
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module NetworkservicesV1beta1
18
18
  # Version of the google-apis-networkservices_v1beta1 gem
19
- GEM_VERSION = "0.29.0"
19
+ GEM_VERSION = "0.30.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.12.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20230814"
25
+ REVISION = "20230926"
26
26
  end
27
27
  end
28
28
  end
@@ -70,6 +70,24 @@ module Google
70
70
  include Google::Apis::Core::JsonObjectSupport
71
71
  end
72
72
 
73
+ class ExtensionChain
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
79
+ class ExtensionChainExtension
80
+ class Representation < Google::Apis::Core::JsonRepresentation; end
81
+
82
+ include Google::Apis::Core::JsonObjectSupport
83
+ end
84
+
85
+ class ExtensionChainMatchCondition
86
+ class Representation < Google::Apis::Core::JsonRepresentation; end
87
+
88
+ include Google::Apis::Core::JsonObjectSupport
89
+ end
90
+
73
91
  class Gateway
74
92
  class Representation < Google::Apis::Core::JsonRepresentation; end
75
93
 
@@ -142,6 +160,12 @@ module Google
142
160
  include Google::Apis::Core::JsonObjectSupport
143
161
  end
144
162
 
163
+ class GrpcRouteStatefulSessionAffinityPolicy
164
+ class Representation < Google::Apis::Core::JsonRepresentation; end
165
+
166
+ include Google::Apis::Core::JsonObjectSupport
167
+ end
168
+
145
169
  class HttpRoute
146
170
  class Representation < Google::Apis::Core::JsonRepresentation; end
147
171
 
@@ -238,12 +262,30 @@ module Google
238
262
  include Google::Apis::Core::JsonObjectSupport
239
263
  end
240
264
 
265
+ class HttpRouteStatefulSessionAffinityPolicy
266
+ class Representation < Google::Apis::Core::JsonRepresentation; end
267
+
268
+ include Google::Apis::Core::JsonObjectSupport
269
+ end
270
+
241
271
  class HttpRouteUrlRewrite
242
272
  class Representation < Google::Apis::Core::JsonRepresentation; end
243
273
 
244
274
  include Google::Apis::Core::JsonObjectSupport
245
275
  end
246
276
 
277
+ class LbRouteExtension
278
+ class Representation < Google::Apis::Core::JsonRepresentation; end
279
+
280
+ include Google::Apis::Core::JsonObjectSupport
281
+ end
282
+
283
+ class LbTrafficExtension
284
+ class Representation < Google::Apis::Core::JsonRepresentation; end
285
+
286
+ include Google::Apis::Core::JsonObjectSupport
287
+ end
288
+
247
289
  class ListEndpointPoliciesResponse
248
290
  class Representation < Google::Apis::Core::JsonRepresentation; end
249
291
 
@@ -268,6 +310,18 @@ module Google
268
310
  include Google::Apis::Core::JsonObjectSupport
269
311
  end
270
312
 
313
+ class ListLbRouteExtensionsResponse
314
+ class Representation < Google::Apis::Core::JsonRepresentation; end
315
+
316
+ include Google::Apis::Core::JsonObjectSupport
317
+ end
318
+
319
+ class ListLbTrafficExtensionsResponse
320
+ class Representation < Google::Apis::Core::JsonRepresentation; end
321
+
322
+ include Google::Apis::Core::JsonObjectSupport
323
+ end
324
+
271
325
  class ListLocationsResponse
272
326
  class Representation < Google::Apis::Core::JsonRepresentation; end
273
327
 
@@ -542,6 +596,37 @@ module Google
542
596
  end
543
597
  end
544
598
 
599
+ class ExtensionChain
600
+ # @private
601
+ class Representation < Google::Apis::Core::JsonRepresentation
602
+ collection :extensions, as: 'extensions', class: Google::Apis::NetworkservicesV1beta1::ExtensionChainExtension, decorator: Google::Apis::NetworkservicesV1beta1::ExtensionChainExtension::Representation
603
+
604
+ property :match_condition, as: 'matchCondition', class: Google::Apis::NetworkservicesV1beta1::ExtensionChainMatchCondition, decorator: Google::Apis::NetworkservicesV1beta1::ExtensionChainMatchCondition::Representation
605
+
606
+ property :name, as: 'name'
607
+ end
608
+ end
609
+
610
+ class ExtensionChainExtension
611
+ # @private
612
+ class Representation < Google::Apis::Core::JsonRepresentation
613
+ property :authority, as: 'authority'
614
+ property :fail_open, as: 'failOpen'
615
+ collection :forward_headers, as: 'forwardHeaders'
616
+ property :name, as: 'name'
617
+ property :service, as: 'service'
618
+ collection :supported_events, as: 'supportedEvents'
619
+ property :timeout, as: 'timeout'
620
+ end
621
+ end
622
+
623
+ class ExtensionChainMatchCondition
624
+ # @private
625
+ class Representation < Google::Apis::Core::JsonRepresentation
626
+ property :cel_expression, as: 'celExpression'
627
+ end
628
+ end
629
+
545
630
  class Gateway
546
631
  # @private
547
632
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -650,6 +735,8 @@ module Google
650
735
 
651
736
  property :retry_policy, as: 'retryPolicy', class: Google::Apis::NetworkservicesV1beta1::GrpcRouteRetryPolicy, decorator: Google::Apis::NetworkservicesV1beta1::GrpcRouteRetryPolicy::Representation
652
737
 
738
+ property :stateful_session_affinity, as: 'statefulSessionAffinity', class: Google::Apis::NetworkservicesV1beta1::GrpcRouteStatefulSessionAffinityPolicy, decorator: Google::Apis::NetworkservicesV1beta1::GrpcRouteStatefulSessionAffinityPolicy::Representation
739
+
653
740
  property :timeout, as: 'timeout'
654
741
  end
655
742
  end
@@ -674,6 +761,13 @@ module Google
674
761
  end
675
762
  end
676
763
 
764
+ class GrpcRouteStatefulSessionAffinityPolicy
765
+ # @private
766
+ class Representation < Google::Apis::Core::JsonRepresentation
767
+ property :cookie_ttl, as: 'cookieTtl'
768
+ end
769
+ end
770
+
677
771
  class HttpRoute
678
772
  # @private
679
773
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -830,6 +924,8 @@ module Google
830
924
 
831
925
  property :retry_policy, as: 'retryPolicy', class: Google::Apis::NetworkservicesV1beta1::HttpRouteRetryPolicy, decorator: Google::Apis::NetworkservicesV1beta1::HttpRouteRetryPolicy::Representation
832
926
 
927
+ property :stateful_session_affinity, as: 'statefulSessionAffinity', class: Google::Apis::NetworkservicesV1beta1::HttpRouteStatefulSessionAffinityPolicy, decorator: Google::Apis::NetworkservicesV1beta1::HttpRouteStatefulSessionAffinityPolicy::Representation
928
+
833
929
  property :timeout, as: 'timeout'
834
930
  property :url_rewrite, as: 'urlRewrite', class: Google::Apis::NetworkservicesV1beta1::HttpRouteUrlRewrite, decorator: Google::Apis::NetworkservicesV1beta1::HttpRouteUrlRewrite::Representation
835
931
 
@@ -860,6 +956,13 @@ module Google
860
956
  end
861
957
  end
862
958
 
959
+ class HttpRouteStatefulSessionAffinityPolicy
960
+ # @private
961
+ class Representation < Google::Apis::Core::JsonRepresentation
962
+ property :cookie_ttl, as: 'cookieTtl'
963
+ end
964
+ end
965
+
863
966
  class HttpRouteUrlRewrite
864
967
  # @private
865
968
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -868,6 +971,36 @@ module Google
868
971
  end
869
972
  end
870
973
 
974
+ class LbRouteExtension
975
+ # @private
976
+ class Representation < Google::Apis::Core::JsonRepresentation
977
+ property :create_time, as: 'createTime'
978
+ property :description, as: 'description'
979
+ collection :extension_chains, as: 'extensionChains', class: Google::Apis::NetworkservicesV1beta1::ExtensionChain, decorator: Google::Apis::NetworkservicesV1beta1::ExtensionChain::Representation
980
+
981
+ collection :forwarding_rules, as: 'forwardingRules'
982
+ hash :labels, as: 'labels'
983
+ property :load_balancing_scheme, as: 'loadBalancingScheme'
984
+ property :name, as: 'name'
985
+ property :update_time, as: 'updateTime'
986
+ end
987
+ end
988
+
989
+ class LbTrafficExtension
990
+ # @private
991
+ class Representation < Google::Apis::Core::JsonRepresentation
992
+ property :create_time, as: 'createTime'
993
+ property :description, as: 'description'
994
+ collection :extension_chains, as: 'extensionChains', class: Google::Apis::NetworkservicesV1beta1::ExtensionChain, decorator: Google::Apis::NetworkservicesV1beta1::ExtensionChain::Representation
995
+
996
+ collection :forwarding_rules, as: 'forwardingRules'
997
+ hash :labels, as: 'labels'
998
+ property :load_balancing_scheme, as: 'loadBalancingScheme'
999
+ property :name, as: 'name'
1000
+ property :update_time, as: 'updateTime'
1001
+ end
1002
+ end
1003
+
871
1004
  class ListEndpointPoliciesResponse
872
1005
  # @private
873
1006
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -905,6 +1038,26 @@ module Google
905
1038
  end
906
1039
  end
907
1040
 
1041
+ class ListLbRouteExtensionsResponse
1042
+ # @private
1043
+ class Representation < Google::Apis::Core::JsonRepresentation
1044
+ collection :lb_route_extensions, as: 'lbRouteExtensions', class: Google::Apis::NetworkservicesV1beta1::LbRouteExtension, decorator: Google::Apis::NetworkservicesV1beta1::LbRouteExtension::Representation
1045
+
1046
+ property :next_page_token, as: 'nextPageToken'
1047
+ collection :unreachable, as: 'unreachable'
1048
+ end
1049
+ end
1050
+
1051
+ class ListLbTrafficExtensionsResponse
1052
+ # @private
1053
+ class Representation < Google::Apis::Core::JsonRepresentation
1054
+ collection :lb_traffic_extensions, as: 'lbTrafficExtensions', class: Google::Apis::NetworkservicesV1beta1::LbTrafficExtension, decorator: Google::Apis::NetworkservicesV1beta1::LbTrafficExtension::Representation
1055
+
1056
+ property :next_page_token, as: 'nextPageToken'
1057
+ collection :unreachable, as: 'unreachable'
1058
+ end
1059
+ end
1060
+
908
1061
  class ListLocationsResponse
909
1062
  # @private
910
1063
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1081,6 +1081,454 @@ module Google
1081
1081
  execute_or_queue_command(command, &block)
1082
1082
  end
1083
1083
 
1084
+ # Creates a new `LbRouteExtension` resource in a given project and location.
1085
+ # @param [String] parent
1086
+ # Required. The parent resource of the `LbRouteExtension` resource. Must be in
1087
+ # the format `projects/`project`/locations/`location``.
1088
+ # @param [Google::Apis::NetworkservicesV1beta1::LbRouteExtension] lb_route_extension_object
1089
+ # @param [String] lb_route_extension_id
1090
+ # Required. User-provided ID of the `LbRouteExtension` resource to be created.
1091
+ # @param [String] request_id
1092
+ # Optional. An optional request ID to identify requests. Specify a unique
1093
+ # request ID so that if you must retry your request, the server can ignore the
1094
+ # request if it has already been completed. The server guarantees that for at
1095
+ # least 60 minutes since the first request. For example, consider a situation
1096
+ # where you make an initial request and the request times out. If you make the
1097
+ # request again with the same request ID, the server can check if original
1098
+ # operation with the same request ID was received, and if so, ignores the second
1099
+ # request. This prevents clients from accidentally creating duplicate
1100
+ # commitments. The request ID must be a valid UUID with the exception that zero
1101
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1102
+ # @param [String] fields
1103
+ # Selector specifying which fields to include in a partial response.
1104
+ # @param [String] quota_user
1105
+ # Available to use for quota purposes for server-side applications. Can be any
1106
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1107
+ # @param [Google::Apis::RequestOptions] options
1108
+ # Request-specific options
1109
+ #
1110
+ # @yield [result, err] Result & error if block supplied
1111
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::Operation] parsed result object
1112
+ # @yieldparam err [StandardError] error object if request failed
1113
+ #
1114
+ # @return [Google::Apis::NetworkservicesV1beta1::Operation]
1115
+ #
1116
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1117
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1118
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1119
+ def create_project_location_lb_route_extension(parent, lb_route_extension_object = nil, lb_route_extension_id: nil, request_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1120
+ command = make_simple_command(:post, 'v1beta1/{+parent}/lbRouteExtensions', options)
1121
+ command.request_representation = Google::Apis::NetworkservicesV1beta1::LbRouteExtension::Representation
1122
+ command.request_object = lb_route_extension_object
1123
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::Operation::Representation
1124
+ command.response_class = Google::Apis::NetworkservicesV1beta1::Operation
1125
+ command.params['parent'] = parent unless parent.nil?
1126
+ command.query['lbRouteExtensionId'] = lb_route_extension_id unless lb_route_extension_id.nil?
1127
+ command.query['requestId'] = request_id unless request_id.nil?
1128
+ command.query['fields'] = fields unless fields.nil?
1129
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1130
+ execute_or_queue_command(command, &block)
1131
+ end
1132
+
1133
+ # Deletes the specified `LbRouteExtension` resource.
1134
+ # @param [String] name
1135
+ # Required. The name of the `LbRouteExtension` resource to delete. Must be in
1136
+ # the format `projects/`project`/locations/`location`/lbRouteExtensions/`
1137
+ # lb_route_extension``.
1138
+ # @param [String] request_id
1139
+ # Optional. An optional request ID to identify requests. Specify a unique
1140
+ # request ID so that if you must retry your request, the server can ignore the
1141
+ # request if it has already been completed. The server guarantees that for at
1142
+ # least 60 minutes after the first request. For example, consider a situation
1143
+ # where you make an initial request and the request times out. If you make the
1144
+ # request again with the same request ID, the server can check if original
1145
+ # operation with the same request ID was received, and if so, ignores the second
1146
+ # request. This prevents clients from accidentally creating duplicate
1147
+ # commitments. The request ID must be a valid UUID with the exception that zero
1148
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1149
+ # @param [String] fields
1150
+ # Selector specifying which fields to include in a partial response.
1151
+ # @param [String] quota_user
1152
+ # Available to use for quota purposes for server-side applications. Can be any
1153
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1154
+ # @param [Google::Apis::RequestOptions] options
1155
+ # Request-specific options
1156
+ #
1157
+ # @yield [result, err] Result & error if block supplied
1158
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::Operation] parsed result object
1159
+ # @yieldparam err [StandardError] error object if request failed
1160
+ #
1161
+ # @return [Google::Apis::NetworkservicesV1beta1::Operation]
1162
+ #
1163
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1164
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1165
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1166
+ def delete_project_location_lb_route_extension(name, request_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1167
+ command = make_simple_command(:delete, 'v1beta1/{+name}', options)
1168
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::Operation::Representation
1169
+ command.response_class = Google::Apis::NetworkservicesV1beta1::Operation
1170
+ command.params['name'] = name unless name.nil?
1171
+ command.query['requestId'] = request_id unless request_id.nil?
1172
+ command.query['fields'] = fields unless fields.nil?
1173
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1174
+ execute_or_queue_command(command, &block)
1175
+ end
1176
+
1177
+ # Gets details of the specified `LbRouteExtension` resource.
1178
+ # @param [String] name
1179
+ # Required. A name of the `LbRouteExtension` resource to get. Must be in the
1180
+ # format `projects/`project`/locations/`location`/lbRouteExtensions/`
1181
+ # lb_route_extension``.
1182
+ # @param [String] fields
1183
+ # Selector specifying which fields to include in a partial response.
1184
+ # @param [String] quota_user
1185
+ # Available to use for quota purposes for server-side applications. Can be any
1186
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1187
+ # @param [Google::Apis::RequestOptions] options
1188
+ # Request-specific options
1189
+ #
1190
+ # @yield [result, err] Result & error if block supplied
1191
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::LbRouteExtension] parsed result object
1192
+ # @yieldparam err [StandardError] error object if request failed
1193
+ #
1194
+ # @return [Google::Apis::NetworkservicesV1beta1::LbRouteExtension]
1195
+ #
1196
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1197
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1198
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1199
+ def get_project_location_lb_route_extension(name, fields: nil, quota_user: nil, options: nil, &block)
1200
+ command = make_simple_command(:get, 'v1beta1/{+name}', options)
1201
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::LbRouteExtension::Representation
1202
+ command.response_class = Google::Apis::NetworkservicesV1beta1::LbRouteExtension
1203
+ command.params['name'] = name unless name.nil?
1204
+ command.query['fields'] = fields unless fields.nil?
1205
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1206
+ execute_or_queue_command(command, &block)
1207
+ end
1208
+
1209
+ # Lists `LbRouteExtension` resources in a given project and location.
1210
+ # @param [String] parent
1211
+ # Required. The project and location from which the `LbRouteExtension` resources
1212
+ # are listed, specified in the following format: `projects/`project`/locations/`
1213
+ # location``.
1214
+ # @param [String] filter
1215
+ # Optional. Filtering results.
1216
+ # @param [String] order_by
1217
+ # Optional. Hint for how to order the results.
1218
+ # @param [Fixnum] page_size
1219
+ # Optional. Requested page size. The server might return fewer items than
1220
+ # requested. If unspecified, the server picks an appropriate default.
1221
+ # @param [String] page_token
1222
+ # Optional. A token identifying a page of results that the server returns.
1223
+ # @param [String] fields
1224
+ # Selector specifying which fields to include in a partial response.
1225
+ # @param [String] quota_user
1226
+ # Available to use for quota purposes for server-side applications. Can be any
1227
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1228
+ # @param [Google::Apis::RequestOptions] options
1229
+ # Request-specific options
1230
+ #
1231
+ # @yield [result, err] Result & error if block supplied
1232
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::ListLbRouteExtensionsResponse] parsed result object
1233
+ # @yieldparam err [StandardError] error object if request failed
1234
+ #
1235
+ # @return [Google::Apis::NetworkservicesV1beta1::ListLbRouteExtensionsResponse]
1236
+ #
1237
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1238
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1239
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1240
+ def list_project_location_lb_route_extensions(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
1241
+ command = make_simple_command(:get, 'v1beta1/{+parent}/lbRouteExtensions', options)
1242
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::ListLbRouteExtensionsResponse::Representation
1243
+ command.response_class = Google::Apis::NetworkservicesV1beta1::ListLbRouteExtensionsResponse
1244
+ command.params['parent'] = parent unless parent.nil?
1245
+ command.query['filter'] = filter unless filter.nil?
1246
+ command.query['orderBy'] = order_by unless order_by.nil?
1247
+ command.query['pageSize'] = page_size unless page_size.nil?
1248
+ command.query['pageToken'] = page_token unless page_token.nil?
1249
+ command.query['fields'] = fields unless fields.nil?
1250
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1251
+ execute_or_queue_command(command, &block)
1252
+ end
1253
+
1254
+ # Updates the parameters of the specified `LbRouteExtension` resource.
1255
+ # @param [String] name
1256
+ # Required. Name of the `LbRouteExtension` resource in the following format: `
1257
+ # projects/`project`/locations/`location`/lbRouteExtensions/`lb_route_extension``
1258
+ # .
1259
+ # @param [Google::Apis::NetworkservicesV1beta1::LbRouteExtension] lb_route_extension_object
1260
+ # @param [String] request_id
1261
+ # Optional. An optional request ID to identify requests. Specify a unique
1262
+ # request ID so that if you must retry your request, the server can ignore the
1263
+ # request if it has already been completed. The server guarantees that for at
1264
+ # least 60 minutes since the first request. For example, consider a situation
1265
+ # where you make an initial request and the request times out. If you make the
1266
+ # request again with the same request ID, the server can check if original
1267
+ # operation with the same request ID was received, and if so, ignores the second
1268
+ # request. This prevents clients from accidentally creating duplicate
1269
+ # commitments. The request ID must be a valid UUID with the exception that zero
1270
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1271
+ # @param [String] update_mask
1272
+ # Required. Used to specify the fields to be overwritten in the `
1273
+ # LbRouteExtension` resource by the update. The fields specified in the
1274
+ # update_mask are relative to the resource, not the full request. A field is
1275
+ # overwritten if it is in the mask. If the user does not specify a mask, then
1276
+ # all fields are overwritten.
1277
+ # @param [String] fields
1278
+ # Selector specifying which fields to include in a partial response.
1279
+ # @param [String] quota_user
1280
+ # Available to use for quota purposes for server-side applications. Can be any
1281
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1282
+ # @param [Google::Apis::RequestOptions] options
1283
+ # Request-specific options
1284
+ #
1285
+ # @yield [result, err] Result & error if block supplied
1286
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::Operation] parsed result object
1287
+ # @yieldparam err [StandardError] error object if request failed
1288
+ #
1289
+ # @return [Google::Apis::NetworkservicesV1beta1::Operation]
1290
+ #
1291
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1292
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1293
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1294
+ def patch_project_location_lb_route_extension(name, lb_route_extension_object = nil, request_id: nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1295
+ command = make_simple_command(:patch, 'v1beta1/{+name}', options)
1296
+ command.request_representation = Google::Apis::NetworkservicesV1beta1::LbRouteExtension::Representation
1297
+ command.request_object = lb_route_extension_object
1298
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::Operation::Representation
1299
+ command.response_class = Google::Apis::NetworkservicesV1beta1::Operation
1300
+ command.params['name'] = name unless name.nil?
1301
+ command.query['requestId'] = request_id unless request_id.nil?
1302
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1303
+ command.query['fields'] = fields unless fields.nil?
1304
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1305
+ execute_or_queue_command(command, &block)
1306
+ end
1307
+
1308
+ # Creates a new `LbTrafficExtension` resource in a given project and location.
1309
+ # @param [String] parent
1310
+ # Required. The parent resource of the `LbTrafficExtension` resource. Must be in
1311
+ # the format `projects/`project`/locations/`location``.
1312
+ # @param [Google::Apis::NetworkservicesV1beta1::LbTrafficExtension] lb_traffic_extension_object
1313
+ # @param [String] lb_traffic_extension_id
1314
+ # Required. User-provided ID of the `LbTrafficExtension` resource to be created.
1315
+ # @param [String] request_id
1316
+ # Optional. An optional request ID to identify requests. Specify a unique
1317
+ # request ID so that if you must retry your request, the server can ignore the
1318
+ # request if it has already been completed. The server guarantees that for at
1319
+ # least 60 minutes since the first request. For example, consider a situation
1320
+ # where you make an initial request and the request times out. If you make the
1321
+ # request again with the same request ID, the server can check if original
1322
+ # operation with the same request ID was received, and if so, ignores the second
1323
+ # request. This prevents clients from accidentally creating duplicate
1324
+ # commitments. The request ID must be a valid UUID with the exception that zero
1325
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1326
+ # @param [String] fields
1327
+ # Selector specifying which fields to include in a partial response.
1328
+ # @param [String] quota_user
1329
+ # Available to use for quota purposes for server-side applications. Can be any
1330
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1331
+ # @param [Google::Apis::RequestOptions] options
1332
+ # Request-specific options
1333
+ #
1334
+ # @yield [result, err] Result & error if block supplied
1335
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::Operation] parsed result object
1336
+ # @yieldparam err [StandardError] error object if request failed
1337
+ #
1338
+ # @return [Google::Apis::NetworkservicesV1beta1::Operation]
1339
+ #
1340
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1341
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1342
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1343
+ def create_project_location_lb_traffic_extension(parent, lb_traffic_extension_object = nil, lb_traffic_extension_id: nil, request_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1344
+ command = make_simple_command(:post, 'v1beta1/{+parent}/lbTrafficExtensions', options)
1345
+ command.request_representation = Google::Apis::NetworkservicesV1beta1::LbTrafficExtension::Representation
1346
+ command.request_object = lb_traffic_extension_object
1347
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::Operation::Representation
1348
+ command.response_class = Google::Apis::NetworkservicesV1beta1::Operation
1349
+ command.params['parent'] = parent unless parent.nil?
1350
+ command.query['lbTrafficExtensionId'] = lb_traffic_extension_id unless lb_traffic_extension_id.nil?
1351
+ command.query['requestId'] = request_id unless request_id.nil?
1352
+ command.query['fields'] = fields unless fields.nil?
1353
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1354
+ execute_or_queue_command(command, &block)
1355
+ end
1356
+
1357
+ # Deletes the specified `LbTrafficExtension` resource.
1358
+ # @param [String] name
1359
+ # Required. The name of the `LbTrafficExtension` resource to delete. Must be in
1360
+ # the format `projects/`project`/locations/`location`/lbTrafficExtensions/`
1361
+ # lb_traffic_extension``.
1362
+ # @param [String] request_id
1363
+ # Optional. An optional request ID to identify requests. Specify a unique
1364
+ # request ID so that if you must retry your request, the server can ignore the
1365
+ # request if it has already been completed. The server guarantees that for at
1366
+ # least 60 minutes after the first request. For example, consider a situation
1367
+ # where you make an initial request and the request times out. If you make the
1368
+ # request again with the same request ID, the server can check if original
1369
+ # operation with the same request ID was received, and if so, ignores the second
1370
+ # request. This prevents clients from accidentally creating duplicate
1371
+ # commitments. The request ID must be a valid UUID with the exception that zero
1372
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1373
+ # @param [String] fields
1374
+ # Selector specifying which fields to include in a partial response.
1375
+ # @param [String] quota_user
1376
+ # Available to use for quota purposes for server-side applications. Can be any
1377
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1378
+ # @param [Google::Apis::RequestOptions] options
1379
+ # Request-specific options
1380
+ #
1381
+ # @yield [result, err] Result & error if block supplied
1382
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::Operation] parsed result object
1383
+ # @yieldparam err [StandardError] error object if request failed
1384
+ #
1385
+ # @return [Google::Apis::NetworkservicesV1beta1::Operation]
1386
+ #
1387
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1388
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1389
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1390
+ def delete_project_location_lb_traffic_extension(name, request_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1391
+ command = make_simple_command(:delete, 'v1beta1/{+name}', options)
1392
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::Operation::Representation
1393
+ command.response_class = Google::Apis::NetworkservicesV1beta1::Operation
1394
+ command.params['name'] = name unless name.nil?
1395
+ command.query['requestId'] = request_id unless request_id.nil?
1396
+ command.query['fields'] = fields unless fields.nil?
1397
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1398
+ execute_or_queue_command(command, &block)
1399
+ end
1400
+
1401
+ # Gets details of the specified `LbTrafficExtension` resource.
1402
+ # @param [String] name
1403
+ # Required. A name of the `LbTrafficExtension` resource to get. Must be in the
1404
+ # format `projects/`project`/locations/`location`/lbTrafficExtensions/`
1405
+ # lb_traffic_extension``.
1406
+ # @param [String] fields
1407
+ # Selector specifying which fields to include in a partial response.
1408
+ # @param [String] quota_user
1409
+ # Available to use for quota purposes for server-side applications. Can be any
1410
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1411
+ # @param [Google::Apis::RequestOptions] options
1412
+ # Request-specific options
1413
+ #
1414
+ # @yield [result, err] Result & error if block supplied
1415
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::LbTrafficExtension] parsed result object
1416
+ # @yieldparam err [StandardError] error object if request failed
1417
+ #
1418
+ # @return [Google::Apis::NetworkservicesV1beta1::LbTrafficExtension]
1419
+ #
1420
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1421
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1422
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1423
+ def get_project_location_lb_traffic_extension(name, fields: nil, quota_user: nil, options: nil, &block)
1424
+ command = make_simple_command(:get, 'v1beta1/{+name}', options)
1425
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::LbTrafficExtension::Representation
1426
+ command.response_class = Google::Apis::NetworkservicesV1beta1::LbTrafficExtension
1427
+ command.params['name'] = name unless name.nil?
1428
+ command.query['fields'] = fields unless fields.nil?
1429
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1430
+ execute_or_queue_command(command, &block)
1431
+ end
1432
+
1433
+ # Lists `LbTrafficExtension` resources in a given project and location.
1434
+ # @param [String] parent
1435
+ # Required. The project and location from which the `LbTrafficExtension`
1436
+ # resources are listed, specified in the following format: `projects/`project`/
1437
+ # locations/`location``.
1438
+ # @param [String] filter
1439
+ # Optional. Filtering results.
1440
+ # @param [String] order_by
1441
+ # Optional. Hint for how to order the results.
1442
+ # @param [Fixnum] page_size
1443
+ # Optional. Requested page size. The server might return fewer items than
1444
+ # requested. If unspecified, the server picks an appropriate default.
1445
+ # @param [String] page_token
1446
+ # Optional. A token identifying a page of results that the server returns.
1447
+ # @param [String] fields
1448
+ # Selector specifying which fields to include in a partial response.
1449
+ # @param [String] quota_user
1450
+ # Available to use for quota purposes for server-side applications. Can be any
1451
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1452
+ # @param [Google::Apis::RequestOptions] options
1453
+ # Request-specific options
1454
+ #
1455
+ # @yield [result, err] Result & error if block supplied
1456
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::ListLbTrafficExtensionsResponse] parsed result object
1457
+ # @yieldparam err [StandardError] error object if request failed
1458
+ #
1459
+ # @return [Google::Apis::NetworkservicesV1beta1::ListLbTrafficExtensionsResponse]
1460
+ #
1461
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1462
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1463
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1464
+ def list_project_location_lb_traffic_extensions(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
1465
+ command = make_simple_command(:get, 'v1beta1/{+parent}/lbTrafficExtensions', options)
1466
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::ListLbTrafficExtensionsResponse::Representation
1467
+ command.response_class = Google::Apis::NetworkservicesV1beta1::ListLbTrafficExtensionsResponse
1468
+ command.params['parent'] = parent unless parent.nil?
1469
+ command.query['filter'] = filter unless filter.nil?
1470
+ command.query['orderBy'] = order_by unless order_by.nil?
1471
+ command.query['pageSize'] = page_size unless page_size.nil?
1472
+ command.query['pageToken'] = page_token unless page_token.nil?
1473
+ command.query['fields'] = fields unless fields.nil?
1474
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1475
+ execute_or_queue_command(command, &block)
1476
+ end
1477
+
1478
+ # Updates the parameters of the specified `LbTrafficExtension` resource.
1479
+ # @param [String] name
1480
+ # Required. Name of the `LbTrafficExtension` resource in the following format: `
1481
+ # projects/`project`/locations/`location`/lbTrafficExtensions/`
1482
+ # lb_traffic_extension``.
1483
+ # @param [Google::Apis::NetworkservicesV1beta1::LbTrafficExtension] lb_traffic_extension_object
1484
+ # @param [String] request_id
1485
+ # Optional. An optional request ID to identify requests. Specify a unique
1486
+ # request ID so that if you must retry your request, the server can ignore the
1487
+ # request if it has already been completed. The server guarantees that for at
1488
+ # least 60 minutes since the first request. For example, consider a situation
1489
+ # where you make an initial request and the request times out. If you make the
1490
+ # request again with the same request ID, the server can check if original
1491
+ # operation with the same request ID was received, and if so, ignores the second
1492
+ # request. This prevents clients from accidentally creating duplicate
1493
+ # commitments. The request ID must be a valid UUID with the exception that zero
1494
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1495
+ # @param [String] update_mask
1496
+ # Required. Used to specify the fields to be overwritten in the `
1497
+ # LbTrafficExtension` resource by the update. The fields specified in the
1498
+ # update_mask are relative to the resource, not the full request. A field is
1499
+ # overwritten if it is in the mask. If the user does not specify a mask, then
1500
+ # all fields are overwritten.
1501
+ # @param [String] fields
1502
+ # Selector specifying which fields to include in a partial response.
1503
+ # @param [String] quota_user
1504
+ # Available to use for quota purposes for server-side applications. Can be any
1505
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1506
+ # @param [Google::Apis::RequestOptions] options
1507
+ # Request-specific options
1508
+ #
1509
+ # @yield [result, err] Result & error if block supplied
1510
+ # @yieldparam result [Google::Apis::NetworkservicesV1beta1::Operation] parsed result object
1511
+ # @yieldparam err [StandardError] error object if request failed
1512
+ #
1513
+ # @return [Google::Apis::NetworkservicesV1beta1::Operation]
1514
+ #
1515
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1516
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1517
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1518
+ def patch_project_location_lb_traffic_extension(name, lb_traffic_extension_object = nil, request_id: nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1519
+ command = make_simple_command(:patch, 'v1beta1/{+name}', options)
1520
+ command.request_representation = Google::Apis::NetworkservicesV1beta1::LbTrafficExtension::Representation
1521
+ command.request_object = lb_traffic_extension_object
1522
+ command.response_representation = Google::Apis::NetworkservicesV1beta1::Operation::Representation
1523
+ command.response_class = Google::Apis::NetworkservicesV1beta1::Operation
1524
+ command.params['name'] = name unless name.nil?
1525
+ command.query['requestId'] = request_id unless request_id.nil?
1526
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1527
+ command.query['fields'] = fields unless fields.nil?
1528
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1529
+ execute_or_queue_command(command, &block)
1530
+ end
1531
+
1084
1532
  # Creates a new Mesh in a given project and location.
1085
1533
  # @param [String] parent
1086
1534
  # Required. The parent resource of the Mesh. Must be in the format `projects/*/
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-networkservices_v1beta1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.29.0
4
+ version: 0.30.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-27 00:00:00.000000000 Z
11
+ date: 2023-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-networkservices_v1beta1/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-networkservices_v1beta1/v0.29.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-networkservices_v1beta1/v0.30.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-networkservices_v1beta1
63
63
  post_install_message:
64
64
  rdoc_options: []