aws-sdk-elasticloadbalancingv2 1.40.1 → 1.45.1

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
- SHA1:
3
- metadata.gz: 7d91fdb79da03521674f9055053d264761a1f9ff
4
- data.tar.gz: c31325b20fc051270cecc1d1a3db2f327503b131
2
+ SHA256:
3
+ metadata.gz: 44895d9fc02178f6bec2d2fdba71d6c32231b8ad5c07cec9d5222cb74ded02c2
4
+ data.tar.gz: 99bfc393a0ee676706769914c666d9a35f16504b6f07ced3f51f4f75961ad877
5
5
  SHA512:
6
- metadata.gz: a041d97a2bfecda4a53747199585a82c95a348c95e276b33b6d149c36ae812cd04be09c92d99d49ab0fa5da3677a932c2be4bdd687699486865d566aa2f58f19
7
- data.tar.gz: d2b8e1908bf889054beaf2a4b8a3973dbf1105d356075f0ab1d1c55abe2d894d96dd7a676f8a43549de1d3bbc0dd86876285dec8ee95cac62e8b7accab53687a
6
+ metadata.gz: 71d1b8e259883a1cb449ea9ee6cc3ad6bebe553c0b958f4ed4306c319130a03650da7a39ee5d316fc24f161bc4c26f202ed3dde4ec63dd4f510e892b68f4609f
7
+ data.tar.gz: ef958f2eb593db1d414518d6cb0441e58673cecbdd393e9bbff528bbd3cfbabd4e704e8e21e81b7380daf7d7f40961fc18be089972b642631f977a93995c1954
@@ -25,17 +25,20 @@ require_relative 'aws-sdk-elasticloadbalancingv2/customizations'
25
25
  # methods each accept a hash of request parameters and return a response
26
26
  # structure.
27
27
  #
28
+ # elastic_load_balancing_v2 = Aws::ElasticLoadBalancingV2::Client.new
29
+ # resp = elastic_load_balancing_v2.add_listener_certificates(params)
30
+ #
28
31
  # See {Client} for more information.
29
32
  #
30
33
  # # Errors
31
34
  #
32
- # Errors returned from Elastic Load Balancing all
33
- # extend {Errors::ServiceError}.
35
+ # Errors returned from Elastic Load Balancing are defined in the
36
+ # {Errors} module and all extend {Errors::ServiceError}.
34
37
  #
35
38
  # begin
36
39
  # # do stuff
37
40
  # rescue Aws::ElasticLoadBalancingV2::Errors::ServiceError
38
- # # rescues all service API errors
41
+ # # rescues all Elastic Load Balancing API errors
39
42
  # end
40
43
  #
41
44
  # See {Errors} for more information.
@@ -43,6 +46,6 @@ require_relative 'aws-sdk-elasticloadbalancingv2/customizations'
43
46
  # @service
44
47
  module Aws::ElasticLoadBalancingV2
45
48
 
46
- GEM_VERSION = '1.40.1'
49
+ GEM_VERSION = '1.45.1'
47
50
 
48
51
  end
@@ -24,12 +24,25 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
24
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
25
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
26
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
27
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
28
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
29
  require 'aws-sdk-core/plugins/protocols/query.rb'
29
30
 
30
31
  Aws::Plugins::GlobalConfiguration.add_identifier(:elasticloadbalancingv2)
31
32
 
32
33
  module Aws::ElasticLoadBalancingV2
34
+ # An API client for ElasticLoadBalancingV2. To construct a client, you need to configure a `:region` and `:credentials`.
35
+ #
36
+ # client = Aws::ElasticLoadBalancingV2::Client.new(
37
+ # region: region_name,
38
+ # credentials: credentials,
39
+ # # ...
40
+ # )
41
+ #
42
+ # For details on configuring region and credentials see
43
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
44
+ #
45
+ # See {#initialize} for a full list of supported configuration options.
33
46
  class Client < Seahorse::Client::Base
34
47
 
35
48
  include Aws::ClientStubs
@@ -57,6 +70,7 @@ module Aws::ElasticLoadBalancingV2
57
70
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
58
71
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
59
72
  add_plugin(Aws::Plugins::TransferEncoding)
73
+ add_plugin(Aws::Plugins::HttpChecksum)
60
74
  add_plugin(Aws::Plugins::SignatureV4)
61
75
  add_plugin(Aws::Plugins::Protocols::Query)
62
76
 
@@ -93,7 +107,7 @@ module Aws::ElasticLoadBalancingV2
93
107
  # @option options [required, String] :region
94
108
  # The AWS region to connect to. The configured `:region` is
95
109
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
110
+ # a default `:region` is searched for in the following locations:
97
111
  #
98
112
  # * `Aws.config[:region]`
99
113
  # * `ENV['AWS_REGION']`
@@ -108,6 +122,12 @@ module Aws::ElasticLoadBalancingV2
108
122
  # When set to `true`, a thread polling for endpoints will be running in
109
123
  # the background every 60 secs (default). Defaults to `false`.
110
124
  #
125
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
126
+ # Used only in `adaptive` retry mode. When true, the request will sleep
127
+ # until there is sufficent client side capacity to retry the request.
128
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
129
+ # not retry instead of sleeping.
130
+ #
111
131
  # @option options [Boolean] :client_side_monitoring (false)
112
132
  # When `true`, client-side metrics will be collected for all API requests from
113
133
  # this client.
@@ -132,6 +152,10 @@ module Aws::ElasticLoadBalancingV2
132
152
  # When `true`, an attempt is made to coerce request parameters into
133
153
  # the required types.
134
154
  #
155
+ # @option options [Boolean] :correct_clock_skew (true)
156
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
157
+ # a clock skew correction and retry requests with skewed client clocks.
158
+ #
135
159
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
160
  # Set to true to disable SDK automatically adding host prefix
137
161
  # to default service endpoint when available.
@@ -139,7 +163,7 @@ module Aws::ElasticLoadBalancingV2
139
163
  # @option options [String] :endpoint
140
164
  # The client endpoint is normally constructed from the `:region`
141
165
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
166
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
143
167
  #
144
168
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
169
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +178,7 @@ module Aws::ElasticLoadBalancingV2
154
178
  # requests fetching endpoints information. Defaults to 60 sec.
155
179
  #
156
180
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
181
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
182
  #
159
183
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
184
  # The log formatter.
@@ -166,15 +190,29 @@ module Aws::ElasticLoadBalancingV2
166
190
  # The Logger instance to send log messages to. If this option
167
191
  # is not set, logging will be disabled.
168
192
  #
193
+ # @option options [Integer] :max_attempts (3)
194
+ # An integer representing the maximum number attempts that will be made for
195
+ # a single request, including the initial attempt. For example,
196
+ # setting this value to 5 will result in a request being retried up to
197
+ # 4 times. Used in `standard` and `adaptive` retry modes.
198
+ #
169
199
  # @option options [String] :profile ("default")
170
200
  # Used when loading credentials from the shared credentials file
171
201
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
202
  #
203
+ # @option options [Proc] :retry_backoff
204
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
205
+ # This option is only used in the `legacy` retry mode.
206
+ #
173
207
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
208
+ # The base delay in seconds used by the default backoff function. This option
209
+ # is only used in the `legacy` retry mode.
175
210
  #
176
211
  # @option options [Symbol] :retry_jitter (:none)
177
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
212
+ # A delay randomiser function used by the default backoff function.
213
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
214
+ # otherwise a Proc that takes and returns a number. This option is only used
215
+ # in the `legacy` retry mode.
178
216
  #
179
217
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
218
  #
@@ -182,11 +220,30 @@ module Aws::ElasticLoadBalancingV2
182
220
  # The maximum number of times to retry failed requests. Only
183
221
  # ~ 500 level server errors and certain ~ 400 level client errors
184
222
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
223
+ # checksum errors, networking errors, timeout errors, auth errors,
224
+ # endpoint discovery, and errors from expired credentials.
225
+ # This option is only used in the `legacy` retry mode.
187
226
  #
188
227
  # @option options [Integer] :retry_max_delay (0)
189
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
228
+ # The maximum number of seconds to delay between retries (0 for no limit)
229
+ # used by the default backoff function. This option is only used in the
230
+ # `legacy` retry mode.
231
+ #
232
+ # @option options [String] :retry_mode ("legacy")
233
+ # Specifies which retry algorithm to use. Values are:
234
+ #
235
+ # * `legacy` - The pre-existing retry behavior. This is default value if
236
+ # no retry mode is provided.
237
+ #
238
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
239
+ # This includes support for retry quotas, which limit the number of
240
+ # unsuccessful retries a client can make.
241
+ #
242
+ # * `adaptive` - An experimental retry mode that includes all the
243
+ # functionality of `standard` mode along with automatic client side
244
+ # throttling. This is a provisional mode that may change behavior
245
+ # in the future.
246
+ #
190
247
  #
191
248
  # @option options [String] :secret_access_key
192
249
  #
@@ -209,16 +266,15 @@ module Aws::ElasticLoadBalancingV2
209
266
  # requests through. Formatted like 'http://proxy.com:123'.
210
267
  #
211
268
  # @option options [Float] :http_open_timeout (15) The number of
212
- # seconds to wait when opening a HTTP session before rasing a
269
+ # seconds to wait when opening a HTTP session before raising a
213
270
  # `Timeout::Error`.
214
271
  #
215
272
  # @option options [Integer] :http_read_timeout (60) The default
216
273
  # number of seconds to wait for response data. This value can
217
- # safely be set
218
- # per-request on the session yeidled by {#session_for}.
274
+ # safely be set per-request on the session.
219
275
  #
220
276
  # @option options [Float] :http_idle_timeout (5) The number of
221
- # seconds a connection is allowed to sit idble before it is
277
+ # seconds a connection is allowed to sit idle before it is
222
278
  # considered stale. Stale connections are closed and removed
223
279
  # from the pool before making a request.
224
280
  #
@@ -227,7 +283,7 @@ module Aws::ElasticLoadBalancingV2
227
283
  # request body. This option has no effect unless the request has
228
284
  # "Expect" header set to "100-continue". Defaults to `nil` which
229
285
  # disables this behaviour. This value can safely be set per
230
- # request on the session yeidled by {#session_for}.
286
+ # request on the session.
231
287
  #
232
288
  # @option options [Boolean] :http_wire_trace (false) When `true`,
233
289
  # HTTP debug output will be sent to the `:logger`.
@@ -466,6 +522,28 @@ module Aws::ElasticLoadBalancingV2
466
522
  # \[Application Load Balancer\] If the action type is `fixed-response`,
467
523
  # you drop specified client requests and return a custom HTTP response.
468
524
  #
525
+ # @option params [Array<String>] :alpn_policy
526
+ # \[TLS listeners\] The name of the Application-Layer Protocol
527
+ # Negotiation (ALPN) policy. You can specify one policy name. The
528
+ # following are the possible values:
529
+ #
530
+ # * `HTTP1Only`
531
+ #
532
+ # * `HTTP2Only`
533
+ #
534
+ # * `HTTP2Optional`
535
+ #
536
+ # * `HTTP2Preferred`
537
+ #
538
+ # * `None`
539
+ #
540
+ # For more information, see [ALPN Policies][1] in the *Network Load
541
+ # Balancers Guide*.
542
+ #
543
+ #
544
+ #
545
+ # [1]: https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#alpn-policies
546
+ #
469
547
  # @return [Types::CreateListenerOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
470
548
  #
471
549
  # * {Types::CreateListenerOutput#listeners #listeners} => Array&lt;Types::Listener&gt;
@@ -628,6 +706,7 @@ module Aws::ElasticLoadBalancingV2
628
706
  # },
629
707
  # },
630
708
  # ],
709
+ # alpn_policy: ["AlpnPolicyValue"],
631
710
  # })
632
711
  #
633
712
  # @example Response structure
@@ -681,6 +760,8 @@ module Aws::ElasticLoadBalancingV2
681
760
  # resp.listeners[0].default_actions[0].forward_config.target_groups[0].weight #=> Integer
682
761
  # resp.listeners[0].default_actions[0].forward_config.target_group_stickiness_config.enabled #=> Boolean
683
762
  # resp.listeners[0].default_actions[0].forward_config.target_group_stickiness_config.duration_seconds #=> Integer
763
+ # resp.listeners[0].alpn_policy #=> Array
764
+ # resp.listeners[0].alpn_policy[0] #=> String
684
765
  #
685
766
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListener AWS API Documentation
686
767
  #
@@ -1747,6 +1828,8 @@ module Aws::ElasticLoadBalancingV2
1747
1828
  # * {Types::DescribeListenersOutput#listeners #listeners} => Array&lt;Types::Listener&gt;
1748
1829
  # * {Types::DescribeListenersOutput#next_marker #next_marker} => String
1749
1830
  #
1831
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1832
+ #
1750
1833
  #
1751
1834
  # @example Example: To describe a listener
1752
1835
  #
@@ -1836,6 +1919,8 @@ module Aws::ElasticLoadBalancingV2
1836
1919
  # resp.listeners[0].default_actions[0].forward_config.target_groups[0].weight #=> Integer
1837
1920
  # resp.listeners[0].default_actions[0].forward_config.target_group_stickiness_config.enabled #=> Boolean
1838
1921
  # resp.listeners[0].default_actions[0].forward_config.target_group_stickiness_config.duration_seconds #=> Integer
1922
+ # resp.listeners[0].alpn_policy #=> Array
1923
+ # resp.listeners[0].alpn_policy[0] #=> String
1839
1924
  # resp.next_marker #=> String
1840
1925
  #
1841
1926
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeListeners AWS API Documentation
@@ -1947,6 +2032,8 @@ module Aws::ElasticLoadBalancingV2
1947
2032
  # * {Types::DescribeLoadBalancersOutput#load_balancers #load_balancers} => Array&lt;Types::LoadBalancer&gt;
1948
2033
  # * {Types::DescribeLoadBalancersOutput#next_marker #next_marker} => String
1949
2034
  #
2035
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2036
+ #
1950
2037
  #
1951
2038
  # @example Example: To describe a load balancer
1952
2039
  #
@@ -2024,6 +2111,13 @@ module Aws::ElasticLoadBalancingV2
2024
2111
  # resp.load_balancers[0].ip_address_type #=> String, one of "ipv4", "dualstack"
2025
2112
  # resp.next_marker #=> String
2026
2113
  #
2114
+ #
2115
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2116
+ #
2117
+ # * load_balancer_available
2118
+ # * load_balancer_exists
2119
+ # * load_balancers_deleted
2120
+ #
2027
2121
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancers AWS API Documentation
2028
2122
  #
2029
2123
  # @overload describe_load_balancers(params = {})
@@ -2496,6 +2590,8 @@ module Aws::ElasticLoadBalancingV2
2496
2590
  # * {Types::DescribeTargetGroupsOutput#target_groups #target_groups} => Array&lt;Types::TargetGroup&gt;
2497
2591
  # * {Types::DescribeTargetGroupsOutput#next_marker #next_marker} => String
2498
2592
  #
2593
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2594
+ #
2499
2595
  #
2500
2596
  # @example Example: To describe a target group
2501
2597
  #
@@ -2677,6 +2773,12 @@ module Aws::ElasticLoadBalancingV2
2677
2773
  # resp.target_health_descriptions[0].target_health.reason #=> String, one of "Elb.RegistrationInProgress", "Elb.InitialHealthChecking", "Target.ResponseCodeMismatch", "Target.Timeout", "Target.FailedHealthChecks", "Target.NotRegistered", "Target.NotInUse", "Target.DeregistrationInProgress", "Target.InvalidState", "Target.IpUnusable", "Target.HealthCheckDisabled", "Elb.InternalError"
2678
2774
  # resp.target_health_descriptions[0].target_health.description #=> String
2679
2775
  #
2776
+ #
2777
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2778
+ #
2779
+ # * target_deregistered
2780
+ # * target_in_service
2781
+ #
2680
2782
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetHealth AWS API Documentation
2681
2783
  #
2682
2784
  # @overload describe_target_health(params = {})
@@ -2772,6 +2874,28 @@ module Aws::ElasticLoadBalancingV2
2772
2874
  # \[Application Load Balancer\] If the action type is `fixed-response`,
2773
2875
  # you drop specified client requests and return a custom HTTP response.
2774
2876
  #
2877
+ # @option params [Array<String>] :alpn_policy
2878
+ # \[TLS listeners\] The name of the Application-Layer Protocol
2879
+ # Negotiation (ALPN) policy. You can specify one policy name. The
2880
+ # following are the possible values:
2881
+ #
2882
+ # * `HTTP1Only`
2883
+ #
2884
+ # * `HTTP2Only`
2885
+ #
2886
+ # * `HTTP2Optional`
2887
+ #
2888
+ # * `HTTP2Preferred`
2889
+ #
2890
+ # * `None`
2891
+ #
2892
+ # For more information, see [ALPN Policies][1] in the *Network Load
2893
+ # Balancers Guide*.
2894
+ #
2895
+ #
2896
+ #
2897
+ # [1]: https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#alpn-policies
2898
+ #
2775
2899
  # @return [Types::ModifyListenerOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2776
2900
  #
2777
2901
  # * {Types::ModifyListenerOutput#listeners #listeners} => Array&lt;Types::Listener&gt;
@@ -2919,6 +3043,7 @@ module Aws::ElasticLoadBalancingV2
2919
3043
  # },
2920
3044
  # },
2921
3045
  # ],
3046
+ # alpn_policy: ["AlpnPolicyValue"],
2922
3047
  # })
2923
3048
  #
2924
3049
  # @example Response structure
@@ -2972,6 +3097,8 @@ module Aws::ElasticLoadBalancingV2
2972
3097
  # resp.listeners[0].default_actions[0].forward_config.target_groups[0].weight #=> Integer
2973
3098
  # resp.listeners[0].default_actions[0].forward_config.target_group_stickiness_config.enabled #=> Boolean
2974
3099
  # resp.listeners[0].default_actions[0].forward_config.target_group_stickiness_config.duration_seconds #=> Integer
3100
+ # resp.listeners[0].alpn_policy #=> Array
3101
+ # resp.listeners[0].alpn_policy[0] #=> String
2975
3102
  #
2976
3103
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListener AWS API Documentation
2977
3104
  #
@@ -4142,7 +4269,7 @@ module Aws::ElasticLoadBalancingV2
4142
4269
  params: params,
4143
4270
  config: config)
4144
4271
  context[:gem_name] = 'aws-sdk-elasticloadbalancingv2'
4145
- context[:gem_version] = '1.40.1'
4272
+ context[:gem_version] = '1.45.1'
4146
4273
  Seahorse::Client::Request.new(handlers, context)
4147
4274
  end
4148
4275
 
@@ -4208,13 +4335,13 @@ module Aws::ElasticLoadBalancingV2
4208
4335
  # The following table lists the valid waiter names, the operations they call,
4209
4336
  # and the default `:delay` and `:max_attempts` values.
4210
4337
  #
4211
- # | waiter_name | params | :delay | :max_attempts |
4212
- # | ----------------------- | -------------------------- | -------- | ------------- |
4213
- # | load_balancer_available | {#describe_load_balancers} | 15 | 40 |
4214
- # | load_balancer_exists | {#describe_load_balancers} | 15 | 40 |
4215
- # | load_balancers_deleted | {#describe_load_balancers} | 15 | 40 |
4216
- # | target_deregistered | {#describe_target_health} | 15 | 40 |
4217
- # | target_in_service | {#describe_target_health} | 15 | 40 |
4338
+ # | waiter_name | params | :delay | :max_attempts |
4339
+ # | ----------------------- | -------------------------------- | -------- | ------------- |
4340
+ # | load_balancer_available | {Client#describe_load_balancers} | 15 | 40 |
4341
+ # | load_balancer_exists | {Client#describe_load_balancers} | 15 | 40 |
4342
+ # | load_balancers_deleted | {Client#describe_load_balancers} | 15 | 40 |
4343
+ # | target_deregistered | {Client#describe_target_health} | 15 | 40 |
4344
+ # | target_in_service | {Client#describe_target_health} | 15 | 40 |
4218
4345
  #
4219
4346
  # @raise [Errors::FailureStateError] Raised when the waiter terminates
4220
4347
  # because the waiter has entered a state that it will not transition
@@ -11,6 +11,7 @@ module Aws::ElasticLoadBalancingV2
11
11
 
12
12
  include Seahorse::Model
13
13
 
14
+ ALPNPolicyNotSupportedException = Shapes::StructureShape.new(name: 'ALPNPolicyNotSupportedException')
14
15
  Action = Shapes::StructureShape.new(name: 'Action')
15
16
  ActionOrder = Shapes::IntegerShape.new(name: 'ActionOrder')
16
17
  ActionTypeEnum = Shapes::StringShape.new(name: 'ActionTypeEnum')
@@ -21,6 +22,8 @@ module Aws::ElasticLoadBalancingV2
21
22
  AddTagsOutput = Shapes::StructureShape.new(name: 'AddTagsOutput')
22
23
  AllocationId = Shapes::StringShape.new(name: 'AllocationId')
23
24
  AllocationIdNotFoundException = Shapes::StructureShape.new(name: 'AllocationIdNotFoundException')
25
+ AlpnPolicyName = Shapes::ListShape.new(name: 'AlpnPolicyName')
26
+ AlpnPolicyValue = Shapes::StringShape.new(name: 'AlpnPolicyValue')
24
27
  AuthenticateCognitoActionAuthenticationRequestExtraParams = Shapes::MapShape.new(name: 'AuthenticateCognitoActionAuthenticationRequestExtraParams')
25
28
  AuthenticateCognitoActionAuthenticationRequestParamName = Shapes::StringShape.new(name: 'AuthenticateCognitoActionAuthenticationRequestParamName')
26
29
  AuthenticateCognitoActionAuthenticationRequestParamValue = Shapes::StringShape.new(name: 'AuthenticateCognitoActionAuthenticationRequestParamValue')
@@ -284,6 +287,8 @@ module Aws::ElasticLoadBalancingV2
284
287
  VpcId = Shapes::StringShape.new(name: 'VpcId')
285
288
  ZoneName = Shapes::StringShape.new(name: 'ZoneName')
286
289
 
290
+ ALPNPolicyNotSupportedException.struct_class = Types::ALPNPolicyNotSupportedException
291
+
287
292
  Action.add_member(:type, Shapes::ShapeRef.new(shape: ActionTypeEnum, required: true, location_name: "Type"))
288
293
  Action.add_member(:target_group_arn, Shapes::ShapeRef.new(shape: TargetGroupArn, location_name: "TargetGroupArn"))
289
294
  Action.add_member(:authenticate_oidc_config, Shapes::ShapeRef.new(shape: AuthenticateOidcActionConfig, location_name: "AuthenticateOidcConfig"))
@@ -311,6 +316,8 @@ module Aws::ElasticLoadBalancingV2
311
316
 
312
317
  AllocationIdNotFoundException.struct_class = Types::AllocationIdNotFoundException
313
318
 
319
+ AlpnPolicyName.member = Shapes::ShapeRef.new(shape: AlpnPolicyValue)
320
+
314
321
  AuthenticateCognitoActionAuthenticationRequestExtraParams.key = Shapes::ShapeRef.new(shape: AuthenticateCognitoActionAuthenticationRequestParamName)
315
322
  AuthenticateCognitoActionAuthenticationRequestExtraParams.value = Shapes::ShapeRef.new(shape: AuthenticateCognitoActionAuthenticationRequestParamValue)
316
323
 
@@ -370,6 +377,7 @@ module Aws::ElasticLoadBalancingV2
370
377
  CreateListenerInput.add_member(:ssl_policy, Shapes::ShapeRef.new(shape: SslPolicyName, location_name: "SslPolicy"))
371
378
  CreateListenerInput.add_member(:certificates, Shapes::ShapeRef.new(shape: CertificateList, location_name: "Certificates"))
372
379
  CreateListenerInput.add_member(:default_actions, Shapes::ShapeRef.new(shape: Actions, required: true, location_name: "DefaultActions"))
380
+ CreateListenerInput.add_member(:alpn_policy, Shapes::ShapeRef.new(shape: AlpnPolicyName, location_name: "AlpnPolicy"))
373
381
  CreateListenerInput.struct_class = Types::CreateListenerInput
374
382
 
375
383
  CreateListenerOutput.add_member(:listeners, Shapes::ShapeRef.new(shape: Listeners, location_name: "Listeners"))
@@ -592,6 +600,7 @@ module Aws::ElasticLoadBalancingV2
592
600
  Listener.add_member(:certificates, Shapes::ShapeRef.new(shape: CertificateList, location_name: "Certificates"))
593
601
  Listener.add_member(:ssl_policy, Shapes::ShapeRef.new(shape: SslPolicyName, location_name: "SslPolicy"))
594
602
  Listener.add_member(:default_actions, Shapes::ShapeRef.new(shape: Actions, location_name: "DefaultActions"))
603
+ Listener.add_member(:alpn_policy, Shapes::ShapeRef.new(shape: AlpnPolicyName, location_name: "AlpnPolicy"))
595
604
  Listener.struct_class = Types::Listener
596
605
 
597
606
  ListenerArns.member = Shapes::ShapeRef.new(shape: ListenerArn)
@@ -648,6 +657,7 @@ module Aws::ElasticLoadBalancingV2
648
657
  ModifyListenerInput.add_member(:ssl_policy, Shapes::ShapeRef.new(shape: SslPolicyName, location_name: "SslPolicy"))
649
658
  ModifyListenerInput.add_member(:certificates, Shapes::ShapeRef.new(shape: CertificateList, location_name: "Certificates"))
650
659
  ModifyListenerInput.add_member(:default_actions, Shapes::ShapeRef.new(shape: Actions, location_name: "DefaultActions"))
660
+ ModifyListenerInput.add_member(:alpn_policy, Shapes::ShapeRef.new(shape: AlpnPolicyName, location_name: "AlpnPolicy"))
651
661
  ModifyListenerInput.struct_class = Types::ModifyListenerInput
652
662
 
653
663
  ModifyListenerOutput.add_member(:listeners, Shapes::ShapeRef.new(shape: Listeners, location_name: "Listeners"))
@@ -986,6 +996,7 @@ module Aws::ElasticLoadBalancingV2
986
996
  o.errors << Shapes::ShapeRef.new(shape: TooManyActionsException)
987
997
  o.errors << Shapes::ShapeRef.new(shape: InvalidLoadBalancerActionException)
988
998
  o.errors << Shapes::ShapeRef.new(shape: TooManyUniqueTargetGroupsPerLoadBalancerException)
999
+ o.errors << Shapes::ShapeRef.new(shape: ALPNPolicyNotSupportedException)
989
1000
  end)
990
1001
 
991
1002
  api.add_operation(:create_load_balancer, Seahorse::Model::Operation.new.tap do |o|
@@ -1236,6 +1247,7 @@ module Aws::ElasticLoadBalancingV2
1236
1247
  o.errors << Shapes::ShapeRef.new(shape: TooManyActionsException)
1237
1248
  o.errors << Shapes::ShapeRef.new(shape: InvalidLoadBalancerActionException)
1238
1249
  o.errors << Shapes::ShapeRef.new(shape: TooManyUniqueTargetGroupsPerLoadBalancerException)
1250
+ o.errors << Shapes::ShapeRef.new(shape: ALPNPolicyNotSupportedException)
1239
1251
  end)
1240
1252
 
1241
1253
  api.add_operation(:modify_load_balancer_attributes, Seahorse::Model::Operation.new.tap do |o|
@@ -6,10 +6,79 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::ElasticLoadBalancingV2
9
+
10
+ # When ElasticLoadBalancingV2 returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::ElasticLoadBalancingV2::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all ElasticLoadBalancingV2 errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::ElasticLoadBalancingV2::Errors::ServiceError
18
+ # # rescues all ElasticLoadBalancingV2 API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {ALPNPolicyNotSupportedException}
29
+ # * {AllocationIdNotFoundException}
30
+ # * {AvailabilityZoneNotSupportedException}
31
+ # * {CertificateNotFoundException}
32
+ # * {DuplicateListenerException}
33
+ # * {DuplicateLoadBalancerNameException}
34
+ # * {DuplicateTagKeysException}
35
+ # * {DuplicateTargetGroupNameException}
36
+ # * {HealthUnavailableException}
37
+ # * {IncompatibleProtocolsException}
38
+ # * {InvalidConfigurationRequestException}
39
+ # * {InvalidLoadBalancerActionException}
40
+ # * {InvalidSchemeException}
41
+ # * {InvalidSecurityGroupException}
42
+ # * {InvalidSubnetException}
43
+ # * {InvalidTargetException}
44
+ # * {ListenerNotFoundException}
45
+ # * {LoadBalancerNotFoundException}
46
+ # * {OperationNotPermittedException}
47
+ # * {PriorityInUseException}
48
+ # * {ResourceInUseException}
49
+ # * {RuleNotFoundException}
50
+ # * {SSLPolicyNotFoundException}
51
+ # * {SubnetNotFoundException}
52
+ # * {TargetGroupAssociationLimitException}
53
+ # * {TargetGroupNotFoundException}
54
+ # * {TooManyActionsException}
55
+ # * {TooManyCertificatesException}
56
+ # * {TooManyListenersException}
57
+ # * {TooManyLoadBalancersException}
58
+ # * {TooManyRegistrationsForTargetIdException}
59
+ # * {TooManyRulesException}
60
+ # * {TooManyTagsException}
61
+ # * {TooManyTargetGroupsException}
62
+ # * {TooManyTargetsException}
63
+ # * {TooManyUniqueTargetGroupsPerLoadBalancerException}
64
+ # * {UnsupportedProtocolException}
65
+ #
66
+ # Additionally, error classes are dynamically generated for service errors based on the error code
67
+ # if they are not defined above.
9
68
  module Errors
10
69
 
11
70
  extend Aws::Errors::DynamicErrors
12
71
 
72
+ class ALPNPolicyNotSupportedException < ServiceError
73
+
74
+ # @param [Seahorse::Client::RequestContext] context
75
+ # @param [String] message
76
+ # @param [Aws::ElasticLoadBalancingV2::Types::ALPNPolicyNotSupportedException] data
77
+ def initialize(context, message, data = Aws::EmptyStructure.new)
78
+ super(context, message, data)
79
+ end
80
+ end
81
+
13
82
  class AllocationIdNotFoundException < ServiceError
14
83
 
15
84
  # @param [Seahorse::Client::RequestContext] context
@@ -18,7 +87,6 @@ module Aws::ElasticLoadBalancingV2
18
87
  def initialize(context, message, data = Aws::EmptyStructure.new)
19
88
  super(context, message, data)
20
89
  end
21
-
22
90
  end
23
91
 
24
92
  class AvailabilityZoneNotSupportedException < ServiceError
@@ -29,7 +97,6 @@ module Aws::ElasticLoadBalancingV2
29
97
  def initialize(context, message, data = Aws::EmptyStructure.new)
30
98
  super(context, message, data)
31
99
  end
32
-
33
100
  end
34
101
 
35
102
  class CertificateNotFoundException < ServiceError
@@ -40,7 +107,6 @@ module Aws::ElasticLoadBalancingV2
40
107
  def initialize(context, message, data = Aws::EmptyStructure.new)
41
108
  super(context, message, data)
42
109
  end
43
-
44
110
  end
45
111
 
46
112
  class DuplicateListenerException < ServiceError
@@ -51,7 +117,6 @@ module Aws::ElasticLoadBalancingV2
51
117
  def initialize(context, message, data = Aws::EmptyStructure.new)
52
118
  super(context, message, data)
53
119
  end
54
-
55
120
  end
56
121
 
57
122
  class DuplicateLoadBalancerNameException < ServiceError
@@ -62,7 +127,6 @@ module Aws::ElasticLoadBalancingV2
62
127
  def initialize(context, message, data = Aws::EmptyStructure.new)
63
128
  super(context, message, data)
64
129
  end
65
-
66
130
  end
67
131
 
68
132
  class DuplicateTagKeysException < ServiceError
@@ -73,7 +137,6 @@ module Aws::ElasticLoadBalancingV2
73
137
  def initialize(context, message, data = Aws::EmptyStructure.new)
74
138
  super(context, message, data)
75
139
  end
76
-
77
140
  end
78
141
 
79
142
  class DuplicateTargetGroupNameException < ServiceError
@@ -84,7 +147,6 @@ module Aws::ElasticLoadBalancingV2
84
147
  def initialize(context, message, data = Aws::EmptyStructure.new)
85
148
  super(context, message, data)
86
149
  end
87
-
88
150
  end
89
151
 
90
152
  class HealthUnavailableException < ServiceError
@@ -95,7 +157,6 @@ module Aws::ElasticLoadBalancingV2
95
157
  def initialize(context, message, data = Aws::EmptyStructure.new)
96
158
  super(context, message, data)
97
159
  end
98
-
99
160
  end
100
161
 
101
162
  class IncompatibleProtocolsException < ServiceError
@@ -106,7 +167,6 @@ module Aws::ElasticLoadBalancingV2
106
167
  def initialize(context, message, data = Aws::EmptyStructure.new)
107
168
  super(context, message, data)
108
169
  end
109
-
110
170
  end
111
171
 
112
172
  class InvalidConfigurationRequestException < ServiceError
@@ -117,7 +177,6 @@ module Aws::ElasticLoadBalancingV2
117
177
  def initialize(context, message, data = Aws::EmptyStructure.new)
118
178
  super(context, message, data)
119
179
  end
120
-
121
180
  end
122
181
 
123
182
  class InvalidLoadBalancerActionException < ServiceError
@@ -128,7 +187,6 @@ module Aws::ElasticLoadBalancingV2
128
187
  def initialize(context, message, data = Aws::EmptyStructure.new)
129
188
  super(context, message, data)
130
189
  end
131
-
132
190
  end
133
191
 
134
192
  class InvalidSchemeException < ServiceError
@@ -139,7 +197,6 @@ module Aws::ElasticLoadBalancingV2
139
197
  def initialize(context, message, data = Aws::EmptyStructure.new)
140
198
  super(context, message, data)
141
199
  end
142
-
143
200
  end
144
201
 
145
202
  class InvalidSecurityGroupException < ServiceError
@@ -150,7 +207,6 @@ module Aws::ElasticLoadBalancingV2
150
207
  def initialize(context, message, data = Aws::EmptyStructure.new)
151
208
  super(context, message, data)
152
209
  end
153
-
154
210
  end
155
211
 
156
212
  class InvalidSubnetException < ServiceError
@@ -161,7 +217,6 @@ module Aws::ElasticLoadBalancingV2
161
217
  def initialize(context, message, data = Aws::EmptyStructure.new)
162
218
  super(context, message, data)
163
219
  end
164
-
165
220
  end
166
221
 
167
222
  class InvalidTargetException < ServiceError
@@ -172,7 +227,6 @@ module Aws::ElasticLoadBalancingV2
172
227
  def initialize(context, message, data = Aws::EmptyStructure.new)
173
228
  super(context, message, data)
174
229
  end
175
-
176
230
  end
177
231
 
178
232
  class ListenerNotFoundException < ServiceError
@@ -183,7 +237,6 @@ module Aws::ElasticLoadBalancingV2
183
237
  def initialize(context, message, data = Aws::EmptyStructure.new)
184
238
  super(context, message, data)
185
239
  end
186
-
187
240
  end
188
241
 
189
242
  class LoadBalancerNotFoundException < ServiceError
@@ -194,7 +247,6 @@ module Aws::ElasticLoadBalancingV2
194
247
  def initialize(context, message, data = Aws::EmptyStructure.new)
195
248
  super(context, message, data)
196
249
  end
197
-
198
250
  end
199
251
 
200
252
  class OperationNotPermittedException < ServiceError
@@ -205,7 +257,6 @@ module Aws::ElasticLoadBalancingV2
205
257
  def initialize(context, message, data = Aws::EmptyStructure.new)
206
258
  super(context, message, data)
207
259
  end
208
-
209
260
  end
210
261
 
211
262
  class PriorityInUseException < ServiceError
@@ -216,7 +267,6 @@ module Aws::ElasticLoadBalancingV2
216
267
  def initialize(context, message, data = Aws::EmptyStructure.new)
217
268
  super(context, message, data)
218
269
  end
219
-
220
270
  end
221
271
 
222
272
  class ResourceInUseException < ServiceError
@@ -227,7 +277,6 @@ module Aws::ElasticLoadBalancingV2
227
277
  def initialize(context, message, data = Aws::EmptyStructure.new)
228
278
  super(context, message, data)
229
279
  end
230
-
231
280
  end
232
281
 
233
282
  class RuleNotFoundException < ServiceError
@@ -238,7 +287,6 @@ module Aws::ElasticLoadBalancingV2
238
287
  def initialize(context, message, data = Aws::EmptyStructure.new)
239
288
  super(context, message, data)
240
289
  end
241
-
242
290
  end
243
291
 
244
292
  class SSLPolicyNotFoundException < ServiceError
@@ -249,7 +297,6 @@ module Aws::ElasticLoadBalancingV2
249
297
  def initialize(context, message, data = Aws::EmptyStructure.new)
250
298
  super(context, message, data)
251
299
  end
252
-
253
300
  end
254
301
 
255
302
  class SubnetNotFoundException < ServiceError
@@ -260,7 +307,6 @@ module Aws::ElasticLoadBalancingV2
260
307
  def initialize(context, message, data = Aws::EmptyStructure.new)
261
308
  super(context, message, data)
262
309
  end
263
-
264
310
  end
265
311
 
266
312
  class TargetGroupAssociationLimitException < ServiceError
@@ -271,7 +317,6 @@ module Aws::ElasticLoadBalancingV2
271
317
  def initialize(context, message, data = Aws::EmptyStructure.new)
272
318
  super(context, message, data)
273
319
  end
274
-
275
320
  end
276
321
 
277
322
  class TargetGroupNotFoundException < ServiceError
@@ -282,7 +327,6 @@ module Aws::ElasticLoadBalancingV2
282
327
  def initialize(context, message, data = Aws::EmptyStructure.new)
283
328
  super(context, message, data)
284
329
  end
285
-
286
330
  end
287
331
 
288
332
  class TooManyActionsException < ServiceError
@@ -293,7 +337,6 @@ module Aws::ElasticLoadBalancingV2
293
337
  def initialize(context, message, data = Aws::EmptyStructure.new)
294
338
  super(context, message, data)
295
339
  end
296
-
297
340
  end
298
341
 
299
342
  class TooManyCertificatesException < ServiceError
@@ -304,7 +347,6 @@ module Aws::ElasticLoadBalancingV2
304
347
  def initialize(context, message, data = Aws::EmptyStructure.new)
305
348
  super(context, message, data)
306
349
  end
307
-
308
350
  end
309
351
 
310
352
  class TooManyListenersException < ServiceError
@@ -315,7 +357,6 @@ module Aws::ElasticLoadBalancingV2
315
357
  def initialize(context, message, data = Aws::EmptyStructure.new)
316
358
  super(context, message, data)
317
359
  end
318
-
319
360
  end
320
361
 
321
362
  class TooManyLoadBalancersException < ServiceError
@@ -326,7 +367,6 @@ module Aws::ElasticLoadBalancingV2
326
367
  def initialize(context, message, data = Aws::EmptyStructure.new)
327
368
  super(context, message, data)
328
369
  end
329
-
330
370
  end
331
371
 
332
372
  class TooManyRegistrationsForTargetIdException < ServiceError
@@ -337,7 +377,6 @@ module Aws::ElasticLoadBalancingV2
337
377
  def initialize(context, message, data = Aws::EmptyStructure.new)
338
378
  super(context, message, data)
339
379
  end
340
-
341
380
  end
342
381
 
343
382
  class TooManyRulesException < ServiceError
@@ -348,7 +387,6 @@ module Aws::ElasticLoadBalancingV2
348
387
  def initialize(context, message, data = Aws::EmptyStructure.new)
349
388
  super(context, message, data)
350
389
  end
351
-
352
390
  end
353
391
 
354
392
  class TooManyTagsException < ServiceError
@@ -359,7 +397,6 @@ module Aws::ElasticLoadBalancingV2
359
397
  def initialize(context, message, data = Aws::EmptyStructure.new)
360
398
  super(context, message, data)
361
399
  end
362
-
363
400
  end
364
401
 
365
402
  class TooManyTargetGroupsException < ServiceError
@@ -370,7 +407,6 @@ module Aws::ElasticLoadBalancingV2
370
407
  def initialize(context, message, data = Aws::EmptyStructure.new)
371
408
  super(context, message, data)
372
409
  end
373
-
374
410
  end
375
411
 
376
412
  class TooManyTargetsException < ServiceError
@@ -381,7 +417,6 @@ module Aws::ElasticLoadBalancingV2
381
417
  def initialize(context, message, data = Aws::EmptyStructure.new)
382
418
  super(context, message, data)
383
419
  end
384
-
385
420
  end
386
421
 
387
422
  class TooManyUniqueTargetGroupsPerLoadBalancerException < ServiceError
@@ -392,7 +427,6 @@ module Aws::ElasticLoadBalancingV2
392
427
  def initialize(context, message, data = Aws::EmptyStructure.new)
393
428
  super(context, message, data)
394
429
  end
395
-
396
430
  end
397
431
 
398
432
  class UnsupportedProtocolException < ServiceError
@@ -403,7 +437,6 @@ module Aws::ElasticLoadBalancingV2
403
437
  def initialize(context, message, data = Aws::EmptyStructure.new)
404
438
  super(context, message, data)
405
439
  end
406
-
407
440
  end
408
441
 
409
442
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::ElasticLoadBalancingV2
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -8,6 +8,12 @@
8
8
  module Aws::ElasticLoadBalancingV2
9
9
  module Types
10
10
 
11
+ # The specified ALPN policy is not supported.
12
+ #
13
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ALPNPolicyNotSupportedException AWS API Documentation
14
+ #
15
+ class ALPNPolicyNotSupportedException < Aws::EmptyStructure; end
16
+
11
17
  # Information about an action.
12
18
  #
13
19
  # @note When making an API call, you may pass Action
@@ -572,6 +578,7 @@ module Aws::ElasticLoadBalancingV2
572
578
  # },
573
579
  # },
574
580
  # ],
581
+ # alpn_policy: ["AlpnPolicyValue"],
575
582
  # }
576
583
  #
577
584
  # @!attribute [rw] load_balancer_arn
@@ -656,6 +663,29 @@ module Aws::ElasticLoadBalancingV2
656
663
  # custom HTTP response.
657
664
  # @return [Array<Types::Action>]
658
665
  #
666
+ # @!attribute [rw] alpn_policy
667
+ # \[TLS listeners\] The name of the Application-Layer Protocol
668
+ # Negotiation (ALPN) policy. You can specify one policy name. The
669
+ # following are the possible values:
670
+ #
671
+ # * `HTTP1Only`
672
+ #
673
+ # * `HTTP2Only`
674
+ #
675
+ # * `HTTP2Optional`
676
+ #
677
+ # * `HTTP2Preferred`
678
+ #
679
+ # * `None`
680
+ #
681
+ # For more information, see [ALPN Policies][1] in the *Network Load
682
+ # Balancers Guide*.
683
+ #
684
+ #
685
+ #
686
+ # [1]: https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#alpn-policies
687
+ # @return [Array<String>]
688
+ #
659
689
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListenerInput AWS API Documentation
660
690
  #
661
691
  class CreateListenerInput < Struct.new(
@@ -664,7 +694,8 @@ module Aws::ElasticLoadBalancingV2
664
694
  :port,
665
695
  :ssl_policy,
666
696
  :certificates,
667
- :default_actions)
697
+ :default_actions,
698
+ :alpn_policy)
668
699
  include Aws::Structure
669
700
  end
670
701
 
@@ -2068,6 +2099,11 @@ module Aws::ElasticLoadBalancingV2
2068
2099
  # The default actions for the listener.
2069
2100
  # @return [Array<Types::Action>]
2070
2101
  #
2102
+ # @!attribute [rw] alpn_policy
2103
+ # \[TLS listener\] The name of the Application-Layer Protocol
2104
+ # Negotiation (ALPN) policy.
2105
+ # @return [Array<String>]
2106
+ #
2071
2107
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Listener AWS API Documentation
2072
2108
  #
2073
2109
  class Listener < Struct.new(
@@ -2077,7 +2113,8 @@ module Aws::ElasticLoadBalancingV2
2077
2113
  :protocol,
2078
2114
  :certificates,
2079
2115
  :ssl_policy,
2080
- :default_actions)
2116
+ :default_actions,
2117
+ :alpn_policy)
2081
2118
  include Aws::Structure
2082
2119
  end
2083
2120
 
@@ -2393,6 +2430,7 @@ module Aws::ElasticLoadBalancingV2
2393
2430
  # },
2394
2431
  # },
2395
2432
  # ],
2433
+ # alpn_policy: ["AlpnPolicyValue"],
2396
2434
  # }
2397
2435
  #
2398
2436
  # @!attribute [rw] listener_arn
@@ -2476,6 +2514,29 @@ module Aws::ElasticLoadBalancingV2
2476
2514
  # custom HTTP response.
2477
2515
  # @return [Array<Types::Action>]
2478
2516
  #
2517
+ # @!attribute [rw] alpn_policy
2518
+ # \[TLS listeners\] The name of the Application-Layer Protocol
2519
+ # Negotiation (ALPN) policy. You can specify one policy name. The
2520
+ # following are the possible values:
2521
+ #
2522
+ # * `HTTP1Only`
2523
+ #
2524
+ # * `HTTP2Only`
2525
+ #
2526
+ # * `HTTP2Optional`
2527
+ #
2528
+ # * `HTTP2Preferred`
2529
+ #
2530
+ # * `None`
2531
+ #
2532
+ # For more information, see [ALPN Policies][1] in the *Network Load
2533
+ # Balancers Guide*.
2534
+ #
2535
+ #
2536
+ #
2537
+ # [1]: https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#alpn-policies
2538
+ # @return [Array<String>]
2539
+ #
2479
2540
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListenerInput AWS API Documentation
2480
2541
  #
2481
2542
  class ModifyListenerInput < Struct.new(
@@ -2484,7 +2545,8 @@ module Aws::ElasticLoadBalancingV2
2484
2545
  :protocol,
2485
2546
  :ssl_policy,
2486
2547
  :certificates,
2487
- :default_actions)
2548
+ :default_actions,
2549
+ :alpn_policy)
2488
2550
  include Aws::Structure
2489
2551
  end
2490
2552
 
@@ -3834,8 +3896,9 @@ module Aws::ElasticLoadBalancingV2
3834
3896
  # values are `lb_cookie` for Application Load Balancers or
3835
3897
  # `source_ip` for Network Load Balancers.
3836
3898
  #
3837
- # The following attributes are supported by Application Load Balancers
3838
- # if the target is not a Lambda function:
3899
+ # The following attributes are supported only if the load balancer is
3900
+ # an Application Load Balancer and the target is an instance or an IP
3901
+ # address:
3839
3902
  #
3840
3903
  # * `load_balancing.algorithm.type` - The load balancing algorithm
3841
3904
  # determines how the load balancer selects targets when routing
@@ -3843,11 +3906,11 @@ module Aws::ElasticLoadBalancingV2
3843
3906
  # `least_outstanding_requests`. The default is `round_robin`.
3844
3907
  #
3845
3908
  # * `slow_start.duration_seconds` - The time period, in seconds,
3846
- # during which a newly registered target receives a linearly
3847
- # increasing share of the traffic to the target group. After this
3848
- # time period ends, the target receives its full share of traffic.
3849
- # The range is 30-900 seconds (15 minutes). Slow start mode is
3850
- # disabled by default.
3909
+ # during which a newly registered target receives an increasing
3910
+ # share of the traffic to the target group. After this time period
3911
+ # ends, the target receives its full share of traffic. The range is
3912
+ # 30-900 seconds (15 minutes). Slow start mode is disabled by
3913
+ # default.
3851
3914
  #
3852
3915
  # * `stickiness.lb_cookie.duration_seconds` - The time period, in
3853
3916
  # seconds, during which requests from a client should be routed to
@@ -3856,16 +3919,16 @@ module Aws::ElasticLoadBalancingV2
3856
3919
  # second to 1 week (604800 seconds). The default value is 1 day
3857
3920
  # (86400 seconds).
3858
3921
  #
3859
- # The following attribute is supported only if the target is a Lambda
3860
- # function.
3922
+ # The following attribute is supported only if the load balancer is an
3923
+ # Application Load Balancer and the target is a Lambda function:
3861
3924
  #
3862
3925
  # * `lambda.multi_value_headers.enabled` - Indicates whether the
3863
- # request and response headers exchanged between the load balancer
3864
- # and the Lambda function include arrays of values or strings. The
3865
- # value is `true` or `false`. The default is `false`. If the value
3866
- # is `false` and the request contains a duplicate header field name
3867
- # or query parameter key, the load balancer uses the last value sent
3868
- # by the client.
3926
+ # request and response headers that are exchanged between the load
3927
+ # balancer and the Lambda function include arrays of values or
3928
+ # strings. The value is `true` or `false`. The default is `false`.
3929
+ # If the value is `false` and the request contains a duplicate
3930
+ # header field name or query parameter key, the load balancer uses
3931
+ # the last value sent by the client.
3869
3932
  #
3870
3933
  # ^
3871
3934
  #
@@ -8,6 +8,71 @@
8
8
  require 'aws-sdk-core/waiters'
9
9
 
10
10
  module Aws::ElasticLoadBalancingV2
11
+ # Waiters are utility methods that poll for a particular state to occur
12
+ # on a client. Waiters can fail after a number of attempts at a polling
13
+ # interval defined for the service client.
14
+ #
15
+ # For a list of operations that can be waited for and the
16
+ # client methods called for each operation, see the table below or the
17
+ # {Client#wait_until} field documentation for the {Client}.
18
+ #
19
+ # # Invoking a Waiter
20
+ # To invoke a waiter, call #wait_until on a {Client}. The first parameter
21
+ # is the waiter name, which is specific to the service client and indicates
22
+ # which operation is being waited for. The second parameter is a hash of
23
+ # parameters that are passed to the client method called by the waiter,
24
+ # which varies according to the waiter name.
25
+ #
26
+ # # Wait Failures
27
+ # To catch errors in a waiter, use WaiterFailed,
28
+ # as shown in the following example.
29
+ #
30
+ # rescue rescue Aws::Waiters::Errors::WaiterFailed => error
31
+ # puts "failed waiting for instance running: #{error.message}
32
+ # end
33
+ #
34
+ # # Configuring a Waiter
35
+ # Each waiter has a default polling interval and a maximum number of
36
+ # attempts it will make before returning control to your program.
37
+ # To set these values, use the `max_attempts` and `delay` parameters
38
+ # in your `#wait_until` call.
39
+ # The following example waits for up to 25 seconds, polling every five seconds.
40
+ #
41
+ # client.wait_until(...) do |w|
42
+ # w.max_attempts = 5
43
+ # w.delay = 5
44
+ # end
45
+ #
46
+ # To disable wait failures, set the value of either of these parameters
47
+ # to `nil`.
48
+ #
49
+ # # Extending a Waiter
50
+ # To modify the behavior of waiters, you can register callbacks that are
51
+ # triggered before each polling attempt and before waiting.
52
+ #
53
+ # The following example implements an exponential backoff in a waiter
54
+ # by doubling the amount of time to wait on every attempt.
55
+ #
56
+ # client.wait_until(...) do |w|
57
+ # w.interval = 0 # disable normal sleep
58
+ # w.before_wait do |n, resp|
59
+ # sleep(n ** 2)
60
+ # end
61
+ # end
62
+ #
63
+ # # Available Waiters
64
+ #
65
+ # The following table lists the valid waiter names, the operations they call,
66
+ # and the default `:delay` and `:max_attempts` values.
67
+ #
68
+ # | waiter_name | params | :delay | :max_attempts |
69
+ # | ----------------------- | -------------------------------- | -------- | ------------- |
70
+ # | load_balancer_available | {Client#describe_load_balancers} | 15 | 40 |
71
+ # | load_balancer_exists | {Client#describe_load_balancers} | 15 | 40 |
72
+ # | load_balancers_deleted | {Client#describe_load_balancers} | 15 | 40 |
73
+ # | target_deregistered | {Client#describe_target_health} | 15 | 40 |
74
+ # | target_in_service | {Client#describe_target_health} | 15 | 40 |
75
+ #
11
76
  module Waiters
12
77
 
13
78
  class LoadBalancerAvailable
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-elasticloadbalancingv2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.40.1
4
+ version: 1.45.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-02 00:00:00.000000000 Z
11
+ date: 2020-06-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.71.0
22
+ version: 3.99.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.71.0
32
+ version: 3.99.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -82,7 +82,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
82
82
  version: '0'
83
83
  requirements: []
84
84
  rubyforge_project:
85
- rubygems_version: 2.5.2.3
85
+ rubygems_version: 2.7.6.2
86
86
  signing_key:
87
87
  specification_version: 4
88
88
  summary: AWS SDK for Ruby - Elastic Load Balancing v2