aws-sdk-core 3.165.0 → 3.201.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (164) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +462 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-defaults/default_configuration.rb +4 -4
  5. data/lib/aws-sdk-core/binary/decode_handler.rb +3 -9
  6. data/lib/aws-sdk-core/binary/encode_handler.rb +1 -1
  7. data/lib/aws-sdk-core/binary/event_builder.rb +34 -37
  8. data/lib/aws-sdk-core/binary/event_stream_decoder.rb +1 -0
  9. data/lib/aws-sdk-core/binary/event_stream_encoder.rb +4 -3
  10. data/lib/aws-sdk-core/cbor/cbor_engine.rb +19 -0
  11. data/lib/aws-sdk-core/cbor/decoder.rb +310 -0
  12. data/lib/aws-sdk-core/cbor/encoder.rb +243 -0
  13. data/lib/aws-sdk-core/cbor.rb +106 -0
  14. data/lib/aws-sdk-core/client_stubs.rb +18 -14
  15. data/lib/aws-sdk-core/credential_provider.rb +4 -1
  16. data/lib/aws-sdk-core/credential_provider_chain.rb +8 -5
  17. data/lib/aws-sdk-core/ec2_metadata.rb +1 -1
  18. data/lib/aws-sdk-core/ecs_credentials.rb +178 -53
  19. data/lib/aws-sdk-core/endpoints/condition.rb +5 -0
  20. data/lib/aws-sdk-core/endpoints/endpoint_rule.rb +5 -1
  21. data/lib/aws-sdk-core/endpoints/error_rule.rb +5 -0
  22. data/lib/aws-sdk-core/endpoints/function.rb +5 -0
  23. data/lib/aws-sdk-core/endpoints/matchers.rb +18 -10
  24. data/lib/aws-sdk-core/endpoints/reference.rb +5 -0
  25. data/lib/aws-sdk-core/endpoints/rule.rb +5 -0
  26. data/lib/aws-sdk-core/endpoints/rule_set.rb +5 -0
  27. data/lib/aws-sdk-core/endpoints/rules_provider.rb +5 -0
  28. data/lib/aws-sdk-core/endpoints/templater.rb +6 -0
  29. data/lib/aws-sdk-core/endpoints/tree_rule.rb +5 -0
  30. data/lib/aws-sdk-core/endpoints/url.rb +1 -0
  31. data/lib/aws-sdk-core/endpoints.rb +69 -19
  32. data/lib/aws-sdk-core/error_handler.rb +41 -0
  33. data/lib/aws-sdk-core/errors.rb +12 -3
  34. data/lib/aws-sdk-core/event_emitter.rb +0 -16
  35. data/lib/aws-sdk-core/ini_parser.rb +7 -0
  36. data/lib/aws-sdk-core/instance_profile_credentials.rb +55 -32
  37. data/lib/aws-sdk-core/json/builder.rb +8 -1
  38. data/lib/aws-sdk-core/json/error_handler.rb +29 -14
  39. data/lib/aws-sdk-core/json/handler.rb +12 -6
  40. data/lib/aws-sdk-core/json/json_engine.rb +3 -1
  41. data/lib/aws-sdk-core/json/oj_engine.rb +7 -1
  42. data/lib/aws-sdk-core/json/parser.rb +33 -3
  43. data/lib/aws-sdk-core/json.rb +43 -14
  44. data/lib/aws-sdk-core/log/formatter.rb +6 -0
  45. data/lib/aws-sdk-core/lru_cache.rb +75 -0
  46. data/lib/aws-sdk-core/pageable_response.rb +3 -1
  47. data/lib/aws-sdk-core/param_validator.rb +9 -4
  48. data/lib/aws-sdk-core/plugins/bearer_authorization.rb +2 -0
  49. data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +7 -4
  50. data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +1 -0
  51. data/lib/aws-sdk-core/plugins/client_metrics_send_plugin.rb +14 -2
  52. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +2 -0
  53. data/lib/aws-sdk-core/plugins/global_configuration.rb +8 -9
  54. data/lib/aws-sdk-core/plugins/http_checksum.rb +2 -1
  55. data/lib/aws-sdk-core/plugins/invocation_id.rb +1 -11
  56. data/lib/aws-sdk-core/plugins/logging.rb +2 -0
  57. data/lib/aws-sdk-core/plugins/protocols/api_gateway.rb +3 -1
  58. data/lib/aws-sdk-core/plugins/protocols/ec2.rb +2 -24
  59. data/lib/aws-sdk-core/plugins/protocols/json_rpc.rb +6 -8
  60. data/lib/aws-sdk-core/plugins/protocols/query.rb +4 -2
  61. data/lib/aws-sdk-core/plugins/protocols/rest_json.rb +3 -15
  62. data/lib/aws-sdk-core/plugins/protocols/rest_xml.rb +3 -0
  63. data/lib/aws-sdk-core/plugins/protocols/rpc_v2.rb +17 -0
  64. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +140 -35
  65. data/lib/aws-sdk-core/plugins/request_compression.rb +226 -0
  66. data/lib/aws-sdk-core/plugins/retries/error_inspector.rb +2 -1
  67. data/lib/aws-sdk-core/plugins/retry_errors.rb +12 -3
  68. data/lib/aws-sdk-core/plugins/sign.rb +43 -19
  69. data/lib/aws-sdk-core/plugins/signature_v2.rb +2 -1
  70. data/lib/aws-sdk-core/plugins/signature_v4.rb +2 -1
  71. data/lib/aws-sdk-core/plugins/stub_responses.rb +1 -0
  72. data/lib/aws-sdk-core/plugins/transfer_encoding.rb +16 -9
  73. data/lib/aws-sdk-core/plugins/user_agent.rb +152 -14
  74. data/lib/aws-sdk-core/process_credentials.rb +45 -27
  75. data/lib/aws-sdk-core/query/ec2_handler.rb +27 -0
  76. data/lib/aws-sdk-core/query/ec2_param_builder.rb +5 -7
  77. data/lib/aws-sdk-core/query/handler.rb +4 -4
  78. data/lib/aws-sdk-core/query/param_builder.rb +2 -2
  79. data/lib/aws-sdk-core/query.rb +2 -1
  80. data/lib/aws-sdk-core/refreshing_credentials.rb +12 -12
  81. data/lib/aws-sdk-core/rest/content_type_handler.rb +60 -0
  82. data/lib/aws-sdk-core/rest/handler.rb +3 -4
  83. data/lib/aws-sdk-core/rest/request/body.rb +32 -5
  84. data/lib/aws-sdk-core/rest/request/endpoint.rb +24 -4
  85. data/lib/aws-sdk-core/rest/request/headers.rb +15 -7
  86. data/lib/aws-sdk-core/rest/request/querystring_builder.rb +62 -36
  87. data/lib/aws-sdk-core/rest/response/body.rb +15 -1
  88. data/lib/aws-sdk-core/rest/response/header_list_parser.rb +79 -0
  89. data/lib/aws-sdk-core/rest/response/headers.rb +8 -3
  90. data/lib/aws-sdk-core/rest.rb +1 -0
  91. data/lib/aws-sdk-core/rpc_v2/builder.rb +62 -0
  92. data/lib/aws-sdk-core/rpc_v2/content_type_handler.rb +45 -0
  93. data/lib/aws-sdk-core/rpc_v2/error_handler.rb +84 -0
  94. data/lib/aws-sdk-core/rpc_v2/handler.rb +74 -0
  95. data/lib/aws-sdk-core/rpc_v2/parser.rb +90 -0
  96. data/lib/aws-sdk-core/rpc_v2.rb +6 -0
  97. data/lib/aws-sdk-core/shared_config.rb +77 -18
  98. data/lib/aws-sdk-core/sso_credentials.rb +80 -45
  99. data/lib/aws-sdk-core/sso_token_provider.rb +3 -2
  100. data/lib/aws-sdk-core/stubbing/protocols/rpc_v2.rb +41 -0
  101. data/lib/aws-sdk-core/stubbing/stub_data.rb +11 -0
  102. data/lib/aws-sdk-core/util.rb +39 -0
  103. data/lib/aws-sdk-core/waiters/poller.rb +4 -2
  104. data/lib/aws-sdk-core/xml/builder.rb +17 -9
  105. data/lib/aws-sdk-core/xml/error_handler.rb +32 -42
  106. data/lib/aws-sdk-core/xml/parser/frame.rb +4 -20
  107. data/lib/aws-sdk-core/xml/parser/{engines/oga.rb → oga_engine.rb} +2 -0
  108. data/lib/aws-sdk-core/xml/parser/stack.rb +2 -0
  109. data/lib/aws-sdk-core/xml/parser.rb +2 -6
  110. data/lib/aws-sdk-core.rb +8 -2
  111. data/lib/aws-sdk-sso/client.rb +103 -46
  112. data/lib/aws-sdk-sso/client_api.rb +6 -0
  113. data/lib/aws-sdk-sso/endpoint_provider.rb +41 -96
  114. data/lib/aws-sdk-sso/endpoints.rb +1 -0
  115. data/lib/aws-sdk-sso/plugins/endpoints.rb +4 -2
  116. data/lib/aws-sdk-sso/types.rb +0 -35
  117. data/lib/aws-sdk-sso.rb +1 -1
  118. data/lib/aws-sdk-ssooidc/client.rb +488 -74
  119. data/lib/aws-sdk-ssooidc/client_api.rb +82 -1
  120. data/lib/aws-sdk-ssooidc/endpoint_provider.rb +41 -95
  121. data/lib/aws-sdk-ssooidc/endpoints.rb +15 -0
  122. data/lib/aws-sdk-ssooidc/errors.rb +52 -0
  123. data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +6 -2
  124. data/lib/aws-sdk-ssooidc/types.rb +372 -83
  125. data/lib/aws-sdk-ssooidc.rb +1 -1
  126. data/lib/aws-sdk-sts/client.rb +361 -288
  127. data/lib/aws-sdk-sts/client_api.rb +24 -11
  128. data/lib/aws-sdk-sts/endpoint_provider.rb +96 -213
  129. data/lib/aws-sdk-sts/endpoints.rb +1 -0
  130. data/lib/aws-sdk-sts/plugins/endpoints.rb +4 -2
  131. data/lib/aws-sdk-sts/presigner.rb +1 -1
  132. data/lib/aws-sdk-sts/types.rb +128 -197
  133. data/lib/aws-sdk-sts.rb +1 -1
  134. data/lib/seahorse/client/async_base.rb +1 -1
  135. data/lib/seahorse/client/async_response.rb +19 -0
  136. data/lib/seahorse/client/base.rb +18 -7
  137. data/lib/seahorse/client/configuration.rb +0 -4
  138. data/lib/seahorse/client/h2/connection.rb +12 -11
  139. data/lib/seahorse/client/h2/handler.rb +1 -0
  140. data/lib/seahorse/client/handler.rb +1 -1
  141. data/lib/seahorse/client/net_http/connection_pool.rb +3 -9
  142. data/lib/seahorse/client/net_http/patches.rb +1 -4
  143. data/lib/seahorse/client/plugin.rb +9 -0
  144. data/lib/seahorse/client/plugins/endpoint.rb +0 -1
  145. data/lib/seahorse/client/plugins/h2.rb +3 -3
  146. data/lib/seahorse/client/plugins/net_http.rb +48 -16
  147. data/lib/seahorse/client/plugins/request_callback.rb +31 -0
  148. data/lib/seahorse/client/response.rb +6 -0
  149. data/lib/seahorse/model/operation.rb +3 -0
  150. data/lib/seahorse/model/shapes.rb +2 -2
  151. data/sig/aws-sdk-core/client_stubs.rbs +10 -0
  152. data/sig/aws-sdk-core/errors.rbs +22 -0
  153. data/sig/aws-sdk-core/resources/collection.rbs +21 -0
  154. data/sig/aws-sdk-core/structure.rbs +4 -0
  155. data/sig/aws-sdk-core/waiters/errors.rbs +20 -0
  156. data/sig/aws-sdk-core.rbs +7 -0
  157. data/sig/seahorse/client/base.rbs +25 -0
  158. data/sig/seahorse/client/handler_builder.rbs +16 -0
  159. data/sig/seahorse/client/response.rbs +61 -0
  160. metadata +44 -17
  161. /data/lib/aws-sdk-core/xml/parser/{engines/libxml.rb → libxml_engine.rb} +0 -0
  162. /data/lib/aws-sdk-core/xml/parser/{engines/nokogiri.rb → nokogiri_engine.rb} +0 -0
  163. /data/lib/aws-sdk-core/xml/parser/{engines/ox.rb → ox_engine.rb} +0 -0
  164. /data/lib/aws-sdk-core/xml/parser/{engines/rexml.rb → rexml_engine.rb} +0 -0
@@ -4,7 +4,7 @@ require 'cgi'
4
4
 
5
5
  module Aws
6
6
  module Xml
7
- class ErrorHandler < Seahorse::Client::Handler
7
+ class ErrorHandler < Aws::ErrorHandler
8
8
 
9
9
  def call(context)
10
10
  @handler.call(context).on(300..599) do |response|
@@ -15,42 +15,29 @@ module Aws
15
15
 
16
16
  private
17
17
 
18
- def error(context)
19
- body = context.http_response.body_contents
20
- if body.empty?
21
- code = http_status_error_code(context)
22
- message = ''
23
- data = EmptyStructure.new
24
- else
25
- code, message, data = extract_error(body, context)
26
- end
27
- context[:request_id] = request_id(body)
28
- errors_module = context.client.class.errors_module
29
- error_class = errors_module.error_class(code).new(context, message, data)
30
- error_class
31
- end
32
-
33
18
  def extract_error(body, context)
19
+ context[:request_id] = request_id(body)
34
20
  code = error_code(body, context)
35
21
  [
36
22
  code,
37
23
  error_message(body),
38
- error_data(context, code)
24
+ error_data(context, body, code)
39
25
  ]
40
26
  end
41
27
 
42
- def error_data(context, code)
28
+ def error_data(context, body, code)
43
29
  data = EmptyStructure.new
44
- if error_rules = context.operation.errors
30
+ if (error_rules = context.operation.errors)
45
31
  error_rules.each do |rule|
46
- # for modeled shape with error trait
47
- # match `code` in the error trait before
48
- # match modeled shape name
32
+ # query protocol may have custom error code
33
+ # reference: https://smithy.io/2.0/aws/protocols/aws-query-protocol.html#error-code-resolution
49
34
  error_shape_code = rule.shape['error']['code'] if rule.shape['error']
50
35
  match = (code == error_shape_code || code == rule.shape.name)
51
- if match && rule.shape.members.any?
52
- data = Parser.new(rule).parse(context.http_response.body_contents)
53
- end
36
+ next unless match && rule.shape.members.any?
37
+
38
+ data = parse_error_data(rule, body)
39
+ # supporting HTTP bindings
40
+ apply_error_headers(rule, context, data)
54
41
  end
55
42
  end
56
43
  data
@@ -58,29 +45,32 @@ module Aws
58
45
  EmptyStructure.new
59
46
  end
60
47
 
48
+ def parse_error_data(rule, body)
49
+ # errors may nested under <Errors><Error>structure_data</Error></Errors>
50
+ # Or may be flat and under <Error>structure_data</Error>
51
+ body = body.tr("\n", '')
52
+ if (matches = body.match(/<Error>(.+?)<\/Error>/))
53
+ Parser.new(rule).parse("<#{rule.shape.name}>#{matches[1]}</#{rule.shape.name}>")
54
+ else
55
+ EmptyStructure.new
56
+ end
57
+ end
58
+
59
+ def apply_error_headers(rule, context, data)
60
+ headers = Aws::Rest::Response::Headers.new(rule)
61
+ headers.apply(context.http_response, data)
62
+ end
63
+
61
64
  def error_code(body, context)
62
- if matches = body.match(/<Code>(.+?)<\/Code>/)
65
+ if (matches = body.match(/<Code>(.+?)<\/Code>/))
63
66
  remove_prefix(unescape(matches[1]), context)
64
67
  else
65
68
  http_status_error_code(context)
66
69
  end
67
70
  end
68
71
 
69
- def http_status_error_code(context)
70
- status_code = context.http_response.status_code
71
- {
72
- 302 => 'MovedTemporarily',
73
- 304 => 'NotModified',
74
- 400 => 'BadRequest',
75
- 403 => 'Forbidden',
76
- 404 => 'NotFound',
77
- 412 => 'PreconditionFailed',
78
- 413 => 'RequestEntityTooLarge',
79
- }[status_code] || "Http#{status_code}Error"
80
- end
81
-
82
72
  def remove_prefix(error_code, context)
83
- if prefix = context.config.api.metadata['errorPrefix']
73
+ if (prefix = context.config.api.metadata['errorPrefix'])
84
74
  error_code.sub(/^#{prefix}/, '')
85
75
  else
86
76
  error_code
@@ -88,7 +78,7 @@ module Aws
88
78
  end
89
79
 
90
80
  def error_message(body)
91
- if matches = body.match(/<Message>(.+?)<\/Message>/m)
81
+ if (matches = body.match(/<Message>(.+?)<\/Message>/m))
92
82
  unescape(matches[1])
93
83
  else
94
84
  ''
@@ -96,7 +86,7 @@ module Aws
96
86
  end
97
87
 
98
88
  def request_id(body)
99
- if matches = body.match(/<RequestId>(.+?)<\/RequestId>/m)
89
+ if (matches = body.match(/<RequestId>(.+?)<\/RequestId>/m))
100
90
  matches[1]
101
91
  end
102
92
  end
@@ -138,11 +138,7 @@ module Aws
138
138
  end
139
139
 
140
140
  def xml_name(ref)
141
- if flattened_list?(ref)
142
- ref.shape.member.location_name || ref.location_name
143
- else
144
- ref.location_name
145
- end
141
+ ref.location_name
146
142
  end
147
143
 
148
144
  def flattened_list?(ref)
@@ -266,7 +262,7 @@ module Aws
266
262
 
267
263
  class BlobFrame < Frame
268
264
  def result
269
- @text.empty? ? nil : Base64.decode64(@text.join)
265
+ @text.empty? ? '' : Base64.decode64(@text.join)
270
266
  end
271
267
  end
272
268
 
@@ -278,7 +274,7 @@ module Aws
278
274
 
279
275
  class FloatFrame < Frame
280
276
  def result
281
- @text.empty? ? nil : @text.join.to_f
277
+ @text.empty? ? nil : Aws::Util.deserialize_number(@text.join)
282
278
  end
283
279
  end
284
280
 
@@ -296,19 +292,7 @@ module Aws
296
292
 
297
293
  class TimestampFrame < Frame
298
294
  def result
299
- @text.empty? ? nil : parse(@text.join)
300
- end
301
- def parse(value)
302
- case value
303
- when nil then nil
304
- when /^\d+$/ then Time.at(value.to_i)
305
- else
306
- begin
307
- Time.parse(value).utc
308
- rescue ArgumentError
309
- raise "unhandled timestamp format `#{value}'"
310
- end
311
- end
295
+ @text.empty? ? nil : Aws::Util.deserialize_time(@text.join)
312
296
  end
313
297
  end
314
298
 
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Oga Java requires JRuby.runtime
4
+ require 'jruby' if RUBY_PLATFORM == 'java'
3
5
  require 'oga'
4
6
 
5
7
  module Aws
@@ -24,6 +24,8 @@ module Aws
24
24
  if name.to_s == 'encoding' && value.to_s == 'base64'
25
25
  @frame = BlobFrame.new(name, @frame.parent, @frame.ref)
26
26
  else
27
+ # don't try to parse shapes from xml namespace
28
+ return if name.to_s == 'xmlns'
27
29
  start_element(name)
28
30
  text(value)
29
31
  end_element(name)
@@ -5,7 +5,6 @@ module Aws
5
5
  module Xml
6
6
  # A SAX-style XML parser that uses a shape context to handle types.
7
7
  class Parser
8
-
9
8
  # @param [Seahorse::Model::ShapeRef] rules
10
9
  def initialize(rules, options = {})
11
10
  @rules = rules
@@ -47,8 +46,7 @@ module Aws
47
46
  # * :libxml
48
47
  # * :nokogiri
49
48
  # * :rexml
50
- #
51
- def engine= engine
49
+ def engine=(engine)
52
50
  @engine = Class === engine ? engine : load_engine(engine)
53
51
  end
54
52
 
@@ -60,7 +58,6 @@ module Aws
60
58
  # * {LibxmlEngine}
61
59
  # * {NokogiriEngine}
62
60
  # * {RexmlEngine}
63
- #
64
61
  def engine
65
62
  set_default_engine unless @engine
66
63
  @engine
@@ -80,7 +77,7 @@ module Aws
80
77
  private
81
78
 
82
79
  def load_engine(name)
83
- require "aws-sdk-core/xml/parser/engines/#{name}"
80
+ require "aws-sdk-core/xml/parser/#{name}_engine"
84
81
  const_name = name[0].upcase + name[1..-1] + 'Engine'
85
82
  const_get(const_name)
86
83
  end
@@ -94,7 +91,6 @@ module Aws
94
91
  end
95
92
 
96
93
  set_default_engine
97
-
98
94
  end
99
95
  end
100
96
  end
data/lib/aws-sdk-core.rb CHANGED
@@ -63,19 +63,23 @@ require_relative 'aws-sdk-core/stubbing/xml_error'
63
63
 
64
64
  # stubbing protocols
65
65
 
66
- require_relative 'aws-sdk-core/stubbing/protocols/ec2'
67
66
  require_relative 'aws-sdk-core/stubbing/protocols/json'
68
- require_relative 'aws-sdk-core/stubbing/protocols/query'
69
67
  require_relative 'aws-sdk-core/stubbing/protocols/rest'
70
68
  require_relative 'aws-sdk-core/stubbing/protocols/rest_json'
71
69
  require_relative 'aws-sdk-core/stubbing/protocols/rest_xml'
70
+ require_relative 'aws-sdk-core/stubbing/protocols/query'
71
+ require_relative 'aws-sdk-core/stubbing/protocols/ec2'
72
+ require_relative 'aws-sdk-core/stubbing/protocols/rpc_v2'
72
73
  require_relative 'aws-sdk-core/stubbing/protocols/api_gateway'
73
74
 
74
75
  # protocols
75
76
 
77
+ require_relative 'aws-sdk-core/error_handler'
76
78
  require_relative 'aws-sdk-core/rest'
77
79
  require_relative 'aws-sdk-core/xml'
78
80
  require_relative 'aws-sdk-core/json'
81
+ require_relative 'aws-sdk-core/query'
82
+ require_relative 'aws-sdk-core/rpc_v2'
79
83
 
80
84
  # event stream
81
85
 
@@ -96,9 +100,11 @@ require_relative 'aws-sdk-core/client_side_monitoring/publisher'
96
100
  require_relative 'aws-sdk-core/arn'
97
101
  require_relative 'aws-sdk-core/arn_parser'
98
102
  require_relative 'aws-sdk-core/ec2_metadata'
103
+ require_relative 'aws-sdk-core/lru_cache'
99
104
 
100
105
  # dynamic endpoints
101
106
  require_relative 'aws-sdk-core/endpoints'
107
+ require_relative 'aws-sdk-core/plugins/signature_v4'
102
108
 
103
109
  # defaults
104
110
  require_relative 'aws-defaults'
@@ -22,12 +22,14 @@ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
22
  require 'aws-sdk-core/plugins/response_paging.rb'
23
23
  require 'aws-sdk-core/plugins/stub_responses.rb'
24
24
  require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/invocation_id.rb'
25
26
  require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
27
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
28
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
29
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
30
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
31
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
32
+ require 'aws-sdk-core/plugins/request_compression.rb'
31
33
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
34
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
35
  require 'aws-sdk-core/plugins/sign.rb'
@@ -71,12 +73,14 @@ module Aws::SSO
71
73
  add_plugin(Aws::Plugins::ResponsePaging)
72
74
  add_plugin(Aws::Plugins::StubResponses)
73
75
  add_plugin(Aws::Plugins::IdempotencyToken)
76
+ add_plugin(Aws::Plugins::InvocationId)
74
77
  add_plugin(Aws::Plugins::JsonvalueConverter)
75
78
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
76
79
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
77
80
  add_plugin(Aws::Plugins::TransferEncoding)
78
81
  add_plugin(Aws::Plugins::HttpChecksum)
79
82
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
83
+ add_plugin(Aws::Plugins::RequestCompression)
80
84
  add_plugin(Aws::Plugins::DefaultsMode)
81
85
  add_plugin(Aws::Plugins::RecursionDetection)
82
86
  add_plugin(Aws::Plugins::Sign)
@@ -85,6 +89,11 @@ module Aws::SSO
85
89
 
86
90
  # @overload initialize(options)
87
91
  # @param [Hash] options
92
+ #
93
+ # @option options [Array<Seahorse::Client::Plugin>] :plugins ([]])
94
+ # A list of plugins to apply to the client. Each plugin is either a
95
+ # class name or an instance of a plugin class.
96
+ #
88
97
  # @option options [required, Aws::CredentialProvider] :credentials
89
98
  # Your AWS credentials. This can be an instance of any one of the
90
99
  # following classes:
@@ -190,10 +199,20 @@ module Aws::SSO
190
199
  # Set to true to disable SDK automatically adding host prefix
191
200
  # to default service endpoint when available.
192
201
  #
193
- # @option options [String] :endpoint
194
- # The client endpoint is normally constructed from the `:region`
195
- # option. You should only configure an `:endpoint` when connecting
196
- # to test or custom endpoints. This should be a valid HTTP(S) URI.
202
+ # @option options [Boolean] :disable_request_compression (false)
203
+ # When set to 'true' the request body will not be compressed
204
+ # for supported operations.
205
+ #
206
+ # @option options [String, URI::HTTPS, URI::HTTP] :endpoint
207
+ # Normally you should not configure the `:endpoint` option
208
+ # directly. This is normally constructed from the `:region`
209
+ # option. Configuring `:endpoint` is normally reserved for
210
+ # connecting to test or custom endpoints. The endpoint should
211
+ # be a URI formatted like:
212
+ #
213
+ # 'http://example.com'
214
+ # 'https://example.com'
215
+ # 'http://example.com:123'
197
216
  #
198
217
  # @option options [Integer] :endpoint_cache_max_entries (1000)
199
218
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -210,6 +229,10 @@ module Aws::SSO
210
229
  # @option options [Boolean] :endpoint_discovery (false)
211
230
  # When set to `true`, endpoint discovery will be enabled for operations when available.
212
231
  #
232
+ # @option options [Boolean] :ignore_configured_endpoint_urls
233
+ # Setting to true disables use of endpoint URLs provided via environment
234
+ # variables and the shared configuration file.
235
+ #
213
236
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
214
237
  # The log formatter.
215
238
  #
@@ -230,6 +253,11 @@ module Aws::SSO
230
253
  # Used when loading credentials from the shared credentials file
231
254
  # at HOME/.aws/credentials. When not specified, 'default' is used.
232
255
  #
256
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
257
+ # The minimum size in bytes that triggers compression for request
258
+ # bodies. The value must be non-negative integer value between 0
259
+ # and 10485780 bytes inclusive.
260
+ #
233
261
  # @option options [Proc] :retry_backoff
234
262
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
235
263
  # This option is only used in the `legacy` retry mode.
@@ -274,11 +302,25 @@ module Aws::SSO
274
302
  # throttling. This is a provisional mode that may change behavior
275
303
  # in the future.
276
304
  #
305
+ # @option options [String] :sdk_ua_app_id
306
+ # A unique and opaque application ID that is appended to the
307
+ # User-Agent header as app/sdk_ua_app_id. It should have a
308
+ # maximum length of 50. This variable is sourced from environment
309
+ # variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.
277
310
  #
278
311
  # @option options [String] :secret_access_key
279
312
  #
280
313
  # @option options [String] :session_token
281
314
  #
315
+ # @option options [Array] :sigv4a_signing_region_set
316
+ # A list of regions that should be signed with SigV4a signing. When
317
+ # not passed, a default `:sigv4a_signing_region_set` is searched for
318
+ # in the following locations:
319
+ #
320
+ # * `Aws.config[:sigv4a_signing_region_set]`
321
+ # * `ENV['AWS_SIGV4A_SIGNING_REGION_SET']`
322
+ # * `~/.aws/config`
323
+ #
282
324
  # @option options [Boolean] :stub_responses (false)
283
325
  # Causes the client to return stubbed responses. By default
284
326
  # fake responses are generated and returned. You can specify
@@ -317,50 +359,65 @@ module Aws::SSO
317
359
  # @option options [Aws::SSO::EndpointProvider] :endpoint_provider
318
360
  # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::SSO::EndpointParameters`
319
361
  #
320
- # @option options [URI::HTTP,String] :http_proxy A proxy to send
321
- # requests through. Formatted like 'http://proxy.com:123'.
322
- #
323
- # @option options [Float] :http_open_timeout (15) The number of
324
- # seconds to wait when opening a HTTP session before raising a
325
- # `Timeout::Error`.
326
- #
327
- # @option options [Float] :http_read_timeout (60) The default
328
- # number of seconds to wait for response data. This value can
329
- # safely be set per-request on the session.
330
- #
331
- # @option options [Float] :http_idle_timeout (5) The number of
332
- # seconds a connection is allowed to sit idle before it is
333
- # considered stale. Stale connections are closed and removed
334
- # from the pool before making a request.
335
- #
336
- # @option options [Float] :http_continue_timeout (1) The number of
337
- # seconds to wait for a 100-continue response before sending the
338
- # request body. This option has no effect unless the request has
339
- # "Expect" header set to "100-continue". Defaults to `nil` which
340
- # disables this behaviour. This value can safely be set per
341
- # request on the session.
342
- #
343
- # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
344
- # in seconds.
345
- #
346
- # @option options [Boolean] :http_wire_trace (false) When `true`,
347
- # HTTP debug output will be sent to the `:logger`.
362
+ # @option options [Float] :http_continue_timeout (1)
363
+ # The number of seconds to wait for a 100-continue response before sending the
364
+ # request body. This option has no effect unless the request has "Expect"
365
+ # header set to "100-continue". Defaults to `nil` which disables this
366
+ # behaviour. This value can safely be set per request on the session.
367
+ #
368
+ # @option options [Float] :http_idle_timeout (5)
369
+ # The number of seconds a connection is allowed to sit idle before it
370
+ # is considered stale. Stale connections are closed and removed from the
371
+ # pool before making a request.
372
+ #
373
+ # @option options [Float] :http_open_timeout (15)
374
+ # The default number of seconds to wait for response data.
375
+ # This value can safely be set per-request on the session.
376
+ #
377
+ # @option options [URI::HTTP,String] :http_proxy
378
+ # A proxy to send requests through. Formatted like 'http://proxy.com:123'.
379
+ #
380
+ # @option options [Float] :http_read_timeout (60)
381
+ # The default number of seconds to wait for response data.
382
+ # This value can safely be set per-request on the session.
383
+ #
384
+ # @option options [Boolean] :http_wire_trace (false)
385
+ # When `true`, HTTP debug output will be sent to the `:logger`.
386
+ #
387
+ # @option options [Proc] :on_chunk_received
388
+ # When a Proc object is provided, it will be used as callback when each chunk
389
+ # of the response body is received. It provides three arguments: the chunk,
390
+ # the number of bytes received, and the total number of
391
+ # bytes in the response (or nil if the server did not send a `content-length`).
392
+ #
393
+ # @option options [Proc] :on_chunk_sent
394
+ # When a Proc object is provided, it will be used as callback when each chunk
395
+ # of the request body is sent. It provides three arguments: the chunk,
396
+ # the number of bytes read from the body, and the total number of
397
+ # bytes in the body.
398
+ #
399
+ # @option options [Boolean] :raise_response_errors (true)
400
+ # When `true`, response errors are raised.
401
+ #
402
+ # @option options [String] :ssl_ca_bundle
403
+ # Full path to the SSL certificate authority bundle file that should be used when
404
+ # verifying peer certificates. If you do not pass `:ssl_ca_bundle` or
405
+ # `:ssl_ca_directory` the the system default will be used if available.
406
+ #
407
+ # @option options [String] :ssl_ca_directory
408
+ # Full path of the directory that contains the unbundled SSL certificate
409
+ # authority files for verifying peer certificates. If you do
410
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the system
411
+ # default will be used if available.
348
412
  #
349
- # @option options [Boolean] :ssl_verify_peer (true) When `true`,
350
- # SSL peer certificates are verified when establishing a
351
- # connection.
413
+ # @option options [String] :ssl_ca_store
414
+ # Sets the X509::Store to verify peer certificate.
352
415
  #
353
- # @option options [String] :ssl_ca_bundle Full path to the SSL
354
- # certificate authority bundle file that should be used when
355
- # verifying peer certificates. If you do not pass
356
- # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
357
- # will be used if available.
416
+ # @option options [Float] :ssl_timeout
417
+ # Sets the SSL timeout in seconds
358
418
  #
359
- # @option options [String] :ssl_ca_directory Full path of the
360
- # directory that contains the unbundled SSL certificate
361
- # authority files for verifying peer certificates. If you do
362
- # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
363
- # system default will be used if available.
419
+ # @option options [Boolean] :ssl_verify_peer (true)
420
+ # When `true`, SSL peer certificates are verified when establishing a connection.
364
421
  #
365
422
  def initialize(*args)
366
423
  super
@@ -585,7 +642,7 @@ module Aws::SSO
585
642
  params: params,
586
643
  config: config)
587
644
  context[:gem_name] = 'aws-sdk-core'
588
- context[:gem_version] = '3.165.0'
645
+ context[:gem_version] = '3.201.0'
589
646
  Seahorse::Client::Request.new(handlers, context)
590
647
  end
591
648
 
@@ -111,9 +111,11 @@ module Aws::SSO
111
111
 
112
112
  api.metadata = {
113
113
  "apiVersion" => "2019-06-10",
114
+ "auth" => ["aws.auth#sigv4"],
114
115
  "endpointPrefix" => "portal.sso",
115
116
  "jsonVersion" => "1.1",
116
117
  "protocol" => "rest-json",
118
+ "protocols" => ["rest-json"],
117
119
  "serviceAbbreviation" => "SSO",
118
120
  "serviceFullName" => "AWS Single Sign-On",
119
121
  "serviceId" => "SSO",
@@ -127,6 +129,7 @@ module Aws::SSO
127
129
  o.http_method = "GET"
128
130
  o.http_request_uri = "/federation/credentials"
129
131
  o['authtype'] = "none"
132
+ o['auth'] = ["smithy.api#noAuth"]
130
133
  o.input = Shapes::ShapeRef.new(shape: GetRoleCredentialsRequest)
131
134
  o.output = Shapes::ShapeRef.new(shape: GetRoleCredentialsResponse)
132
135
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
@@ -140,6 +143,7 @@ module Aws::SSO
140
143
  o.http_method = "GET"
141
144
  o.http_request_uri = "/assignment/roles"
142
145
  o['authtype'] = "none"
146
+ o['auth'] = ["smithy.api#noAuth"]
143
147
  o.input = Shapes::ShapeRef.new(shape: ListAccountRolesRequest)
144
148
  o.output = Shapes::ShapeRef.new(shape: ListAccountRolesResponse)
145
149
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
@@ -159,6 +163,7 @@ module Aws::SSO
159
163
  o.http_method = "GET"
160
164
  o.http_request_uri = "/assignment/accounts"
161
165
  o['authtype'] = "none"
166
+ o['auth'] = ["smithy.api#noAuth"]
162
167
  o.input = Shapes::ShapeRef.new(shape: ListAccountsRequest)
163
168
  o.output = Shapes::ShapeRef.new(shape: ListAccountsResponse)
164
169
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
@@ -178,6 +183,7 @@ module Aws::SSO
178
183
  o.http_method = "POST"
179
184
  o.http_request_uri = "/logout"
180
185
  o['authtype'] = "none"
186
+ o['auth'] = ["smithy.api#noAuth"]
181
187
  o.input = Shapes::ShapeRef.new(shape: LogoutRequest)
182
188
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
183
189
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)