aws-sdk-core 3.191.5 → 3.193.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 +4 -4
- data/CHANGELOG.md +52 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-core/binary/decode_handler.rb +0 -5
- data/lib/aws-sdk-core/binary/event_builder.rb +34 -37
- data/lib/aws-sdk-core/event_emitter.rb +0 -16
- data/lib/aws-sdk-core/json/builder.rb +8 -1
- data/lib/aws-sdk-core/json/error_handler.rb +10 -3
- data/lib/aws-sdk-core/json/parser.rb +4 -1
- data/lib/aws-sdk-core/param_validator.rb +4 -0
- data/lib/aws-sdk-core/plugins/invocation_id.rb +1 -11
- data/lib/aws-sdk-core/plugins/protocols/rest_json.rb +3 -16
- data/lib/aws-sdk-core/plugins/protocols/rest_xml.rb +1 -2
- data/lib/aws-sdk-core/plugins/request_compression.rb +1 -1
- data/lib/aws-sdk-core/plugins/sign.rb +8 -3
- data/lib/aws-sdk-core/query/param_builder.rb +2 -2
- data/lib/aws-sdk-core/rest/request/body.rb +32 -5
- data/lib/aws-sdk-core/rest/request/content_type.rb +60 -0
- data/lib/aws-sdk-core/rest/request/endpoint.rb +22 -4
- data/lib/aws-sdk-core/rest/request/headers.rb +15 -7
- data/lib/aws-sdk-core/rest/request/querystring_builder.rb +23 -11
- data/lib/aws-sdk-core/rest/response/body.rb +15 -1
- data/lib/aws-sdk-core/rest/response/header_list_parser.rb +79 -0
- data/lib/aws-sdk-core/rest/response/headers.rb +8 -3
- data/lib/aws-sdk-core/rest.rb +1 -0
- data/lib/aws-sdk-core/util.rb +39 -0
- data/lib/aws-sdk-core/xml/builder.rb +17 -9
- data/lib/aws-sdk-core/xml/error_handler.rb +24 -8
- data/lib/aws-sdk-core/xml/parser/frame.rb +4 -20
- data/lib/aws-sdk-core/xml/parser/stack.rb +2 -0
- data/lib/aws-sdk-sso/client.rb +70 -46
- data/lib/aws-sdk-sso.rb +1 -1
- data/lib/aws-sdk-ssooidc/client.rb +70 -46
- data/lib/aws-sdk-ssooidc.rb +1 -1
- data/lib/aws-sdk-sts/client.rb +70 -46
- data/lib/aws-sdk-sts/client_api.rb +8 -8
- data/lib/aws-sdk-sts.rb +1 -1
- data/lib/seahorse/client/async_base.rb +1 -1
- data/lib/seahorse/client/async_response.rb +19 -0
- data/lib/seahorse/client/base.rb +1 -0
- data/lib/seahorse/client/h2/handler.rb +1 -0
- data/lib/seahorse/client/plugin.rb +8 -0
- data/lib/seahorse/client/plugins/net_http.rb +48 -16
- data/lib/seahorse/model/shapes.rb +1 -1
- metadata +4 -2
@@ -30,20 +30,30 @@ module Aws
|
|
30
30
|
#
|
31
31
|
# @return [String] Returns a built querystring
|
32
32
|
def build(params)
|
33
|
+
# keys in query maps must NOT override other keys
|
34
|
+
query_keys = query_keys(params)
|
33
35
|
params.map do |(shape_ref, param_value)|
|
34
|
-
build_part(shape_ref, param_value)
|
35
|
-
end.join('&')
|
36
|
+
build_part(shape_ref, param_value, query_keys)
|
37
|
+
end.reject { |p| p.nil? || p.empty? }.join('&')
|
36
38
|
end
|
37
39
|
|
38
40
|
private
|
39
41
|
|
40
|
-
def
|
42
|
+
def query_keys(params)
|
43
|
+
keys = Set.new
|
44
|
+
params.each do |(shape_ref, _)|
|
45
|
+
keys << shape_ref.location_name unless shape_ref.shape.is_a?(MapShape)
|
46
|
+
end
|
47
|
+
keys
|
48
|
+
end
|
49
|
+
|
50
|
+
def build_part(shape_ref, param_value, query_keys)
|
41
51
|
case shape_ref.shape
|
42
52
|
# supported scalar types
|
43
53
|
when *SUPPORTED_TYPES
|
44
54
|
"#{shape_ref.location_name}=#{query_value(shape_ref, param_value)}"
|
45
55
|
when MapShape
|
46
|
-
generate_query_map(shape_ref, param_value)
|
56
|
+
generate_query_map(shape_ref, param_value, query_keys)
|
47
57
|
when ListShape
|
48
58
|
generate_query_list(shape_ref, param_value)
|
49
59
|
else
|
@@ -80,31 +90,33 @@ module Aws
|
|
80
90
|
end
|
81
91
|
end
|
82
92
|
|
83
|
-
def generate_query_map(ref, value)
|
93
|
+
def generate_query_map(ref, value, query_keys)
|
84
94
|
case ref.shape.value.shape
|
85
95
|
when StringShape
|
86
|
-
query_map_of_string(value)
|
96
|
+
query_map_of_string(value, query_keys)
|
87
97
|
when ListShape
|
88
|
-
query_map_of_string_list(value)
|
98
|
+
query_map_of_string_list(value, query_keys)
|
89
99
|
else
|
90
100
|
msg = 'Only map of string and string list supported'
|
91
101
|
raise NotImplementedError, msg
|
92
102
|
end
|
93
103
|
end
|
94
104
|
|
95
|
-
def query_map_of_string(hash)
|
105
|
+
def query_map_of_string(hash, query_keys)
|
96
106
|
list = []
|
97
107
|
hash.each_pair do |key, value|
|
98
|
-
|
108
|
+
key = escape(key)
|
109
|
+
list << "#{key}=#{escape(value)}" unless query_keys.include?(key)
|
99
110
|
end
|
100
111
|
list
|
101
112
|
end
|
102
113
|
|
103
|
-
def query_map_of_string_list(hash)
|
114
|
+
def query_map_of_string_list(hash, query_keys)
|
104
115
|
list = []
|
105
116
|
hash.each_pair do |key, values|
|
117
|
+
key = escape(key)
|
106
118
|
values.each do |value|
|
107
|
-
list << "#{
|
119
|
+
list << "#{key}=#{escape(value)}" unless query_keys.include?(key)
|
108
120
|
end
|
109
121
|
end
|
110
122
|
list
|
@@ -20,7 +20,8 @@ module Aws
|
|
20
20
|
if event_stream?
|
21
21
|
data[@rules[:payload]] = parse_eventstream(body)
|
22
22
|
elsif streaming?
|
23
|
-
|
23
|
+
# empty blob payloads are omitted
|
24
|
+
data[@rules[:payload]] = body unless empty_blob_payload?(body)
|
24
25
|
elsif @rules[:payload]
|
25
26
|
data[@rules[:payload]] = parse(body.read, @rules[:payload_member])
|
26
27
|
elsif !@rules.shape.member_names.empty?
|
@@ -30,6 +31,19 @@ module Aws
|
|
30
31
|
|
31
32
|
private
|
32
33
|
|
34
|
+
def empty_blob_payload?(body)
|
35
|
+
true if non_streaming_blob_payload? && empty_body?(body)
|
36
|
+
end
|
37
|
+
|
38
|
+
def non_streaming_blob_payload?
|
39
|
+
@rules[:payload_member].shape.is_a?(BlobShape) &&
|
40
|
+
!@rules[:payload_member]['streaming']
|
41
|
+
end
|
42
|
+
|
43
|
+
def empty_body?(body)
|
44
|
+
body.respond_to?(:size) && body.size.zero?
|
45
|
+
end
|
46
|
+
|
33
47
|
def event_stream?
|
34
48
|
@rules[:payload] && @rules[:payload_member].eventstream
|
35
49
|
end
|
@@ -0,0 +1,79 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'strscan'
|
4
|
+
|
5
|
+
module Aws
|
6
|
+
module Rest
|
7
|
+
module Response
|
8
|
+
# @api private
|
9
|
+
module HeaderListParser
|
10
|
+
|
11
|
+
class << self
|
12
|
+
# parse a list of possibly quoted and escaped string values
|
13
|
+
# Follows:
|
14
|
+
# # [RFC-7230's specification of header values](https://datatracker.ietf.org/doc/html/rfc7230#section-3.2.6).
|
15
|
+
def parse_string_list(value)
|
16
|
+
buffer = StringScanner.new(value)
|
17
|
+
parsed = []
|
18
|
+
|
19
|
+
parsed << read_value(buffer) until buffer.eos?
|
20
|
+
|
21
|
+
parsed
|
22
|
+
end
|
23
|
+
|
24
|
+
def parse_timestamp_list(value, ref)
|
25
|
+
# timestamp lists use an http-date by default and are unescaped
|
26
|
+
# eg: Mon, 16 Dec 2019 23:48:18 GMT, Mon, 16 Dec 2019 23:48:18 GMT
|
27
|
+
case ref['timestampFormat'] || ref.shape['timestampFormat']
|
28
|
+
when 'unixTimestamp'
|
29
|
+
value.split(', ').map { |v| Time.at(v.to_f) }
|
30
|
+
when 'iso8601' then value.split(', ').map { |v| Time.parse(v) }
|
31
|
+
else
|
32
|
+
# header default to rfc822/http-date, which has a comma after day
|
33
|
+
value.split(',').each_slice(2).map { |v| Time.parse(v[0] + v[1])}
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
private
|
38
|
+
|
39
|
+
def read_value(buffer)
|
40
|
+
until buffer.eos?
|
41
|
+
case buffer.peek(1)
|
42
|
+
when ' ', "\t"
|
43
|
+
# drop leading whitespace
|
44
|
+
buffer.getch
|
45
|
+
next
|
46
|
+
when '"'
|
47
|
+
buffer.getch # drop the quote and advance
|
48
|
+
return read_quoted_value(buffer)
|
49
|
+
else
|
50
|
+
return read_unquoted_value(buffer)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
# buffer is only whitespace
|
54
|
+
nil
|
55
|
+
end
|
56
|
+
|
57
|
+
def read_unquoted_value(buffer)
|
58
|
+
# there cannot be any escaped values
|
59
|
+
value = buffer.scan_until(/,|$/)
|
60
|
+
# drop the comma if we matched it
|
61
|
+
buffer.matched == ',' ? value.chop : value
|
62
|
+
end
|
63
|
+
|
64
|
+
def read_quoted_value(buffer)
|
65
|
+
# scan until we have an unescaped double quote
|
66
|
+
value = buffer.scan_until(/[^\\]"/)
|
67
|
+
raise ArgumentError, 'Invalid String list: No closing quote found' unless value
|
68
|
+
|
69
|
+
# drop any remaining whitespace/commas
|
70
|
+
buffer.scan_until(/[\s,]*/)
|
71
|
+
# the last character will always be the closing quote.
|
72
|
+
# Add a starting quote and then unescape (undump)
|
73
|
+
"\"#{value}".undump
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'time'
|
4
4
|
require 'base64'
|
5
|
+
require_relative 'header_list_parser'
|
5
6
|
|
6
7
|
module Aws
|
7
8
|
module Rest
|
@@ -36,12 +37,16 @@ module Aws
|
|
36
37
|
def cast_value(ref, value)
|
37
38
|
value = extract_json_trait(value) if ref['jsonvalue']
|
38
39
|
case ref.shape
|
39
|
-
when StringShape then value
|
40
|
+
when StringShape then value.to_s
|
40
41
|
when IntegerShape then value.to_i
|
41
|
-
when FloatShape then value
|
42
|
+
when FloatShape then Util.deserialize_number(value)
|
42
43
|
when BooleanShape then value == 'true'
|
43
44
|
when ListShape then
|
44
|
-
|
45
|
+
case ref.shape.member.shape
|
46
|
+
when StringShape then HeaderListParser.parse_string_list(value)
|
47
|
+
when TimestampShape then HeaderListParser.parse_timestamp_list(value, ref.shape.member)
|
48
|
+
else value.split(', ').map { |v| cast_value(ref.shape.member, v) }
|
49
|
+
end
|
45
50
|
when TimestampShape
|
46
51
|
if value =~ /^\d+(\.\d*)/
|
47
52
|
Time.at(value.to_f)
|
data/lib/aws-sdk-core/rest.rb
CHANGED
@@ -6,6 +6,7 @@ require_relative 'rest/request/builder'
|
|
6
6
|
require_relative 'rest/request/endpoint'
|
7
7
|
require_relative 'rest/request/headers'
|
8
8
|
require_relative 'rest/request/querystring_builder'
|
9
|
+
require_relative 'rest/request/content_type'
|
9
10
|
require_relative 'rest/response/body'
|
10
11
|
require_relative 'rest/response/headers'
|
11
12
|
require_relative 'rest/response/parser'
|
data/lib/aws-sdk-core/util.rb
CHANGED
@@ -67,6 +67,45 @@ module Aws
|
|
67
67
|
end
|
68
68
|
end
|
69
69
|
|
70
|
+
# @param [Number] input
|
71
|
+
# @return [Number, String] The serialized number
|
72
|
+
def serialize_number(input)
|
73
|
+
if input == ::Float::INFINITY then 'Infinity'
|
74
|
+
elsif input == -::Float::INFINITY then '-Infinity'
|
75
|
+
elsif input&.nan? then 'NaN'
|
76
|
+
else
|
77
|
+
input
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
# @param [String] str
|
82
|
+
# @return [Number] The input as a number
|
83
|
+
def deserialize_number(str)
|
84
|
+
case str
|
85
|
+
when 'Infinity' then ::Float::INFINITY
|
86
|
+
when '-Infinity' then -::Float::INFINITY
|
87
|
+
when 'NaN' then ::Float::NAN
|
88
|
+
when nil then nil
|
89
|
+
else str.to_f
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
# @param [String, Integer] value
|
94
|
+
# @return [Time]
|
95
|
+
def deserialize_time(value)
|
96
|
+
case value
|
97
|
+
when nil then nil
|
98
|
+
when /^\d+$/ then Time.at(value.to_i)
|
99
|
+
else
|
100
|
+
begin
|
101
|
+
fractional_time = Time.parse(value).utc.to_f
|
102
|
+
Time.at(fractional_time)
|
103
|
+
rescue ArgumentError
|
104
|
+
raise "unhandled timestamp format `#{value}'"
|
105
|
+
end
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
70
109
|
end
|
71
110
|
end
|
72
111
|
end
|
@@ -10,6 +10,8 @@ module Aws
|
|
10
10
|
|
11
11
|
def initialize(rules, options = {})
|
12
12
|
@rules = rules
|
13
|
+
@location_name =
|
14
|
+
options[:location_name].nil? ? @rules.location_name : options[:location_name]
|
13
15
|
@xml = options[:target] || []
|
14
16
|
indent = options[:indent] || ''
|
15
17
|
pad = options[:pad] || ''
|
@@ -17,7 +19,7 @@ module Aws
|
|
17
19
|
end
|
18
20
|
|
19
21
|
def to_xml(params)
|
20
|
-
structure(@
|
22
|
+
structure(@location_name, @rules, params)
|
21
23
|
@xml.join
|
22
24
|
end
|
23
25
|
alias serialize to_xml
|
@@ -50,7 +52,7 @@ module Aws
|
|
50
52
|
def list(name, ref, values)
|
51
53
|
if ref[:flattened] || ref.shape.flattened
|
52
54
|
values.each do |value|
|
53
|
-
member(
|
55
|
+
member(name, ref.shape.member, value)
|
54
56
|
end
|
55
57
|
else
|
56
58
|
node(name, ref) do
|
@@ -65,7 +67,7 @@ module Aws
|
|
65
67
|
def map(name, ref, hash)
|
66
68
|
key_ref = ref.shape.key
|
67
69
|
value_ref = ref.shape.value
|
68
|
-
if ref.shape.flattened
|
70
|
+
if ref[:flattened] || ref.shape.flattened
|
69
71
|
hash.each do |key, value|
|
70
72
|
node(name, ref) do
|
71
73
|
member(key_ref.location_name || 'key', key_ref, key)
|
@@ -75,7 +77,8 @@ module Aws
|
|
75
77
|
else
|
76
78
|
node(name, ref) do
|
77
79
|
hash.each do |key, value|
|
78
|
-
|
80
|
+
# Pass in a new ShapeRef to create an entry node
|
81
|
+
node('entry', ShapeRef.new) do
|
79
82
|
member(key_ref.location_name || 'key', key_ref, key)
|
80
83
|
member(value_ref.location_name || 'value', value_ref, value)
|
81
84
|
end
|
@@ -129,11 +132,16 @@ module Aws
|
|
129
132
|
end
|
130
133
|
|
131
134
|
def shape_attrs(ref)
|
132
|
-
if xmlns = ref['xmlNamespace']
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
135
|
+
if (xmlns = ref['xmlNamespace'])
|
136
|
+
case xmlns
|
137
|
+
when String
|
138
|
+
{ 'xmlns' => xmlns }
|
139
|
+
when Hash
|
140
|
+
if (prefix = xmlns['prefix'])
|
141
|
+
{ "xmlns:#{prefix}" => xmlns['uri'] }
|
142
|
+
else
|
143
|
+
{ 'xmlns' => xmlns['uri'] }
|
144
|
+
end
|
137
145
|
end
|
138
146
|
else
|
139
147
|
{}
|
@@ -26,8 +26,7 @@ module Aws
|
|
26
26
|
end
|
27
27
|
context[:request_id] = request_id(body)
|
28
28
|
errors_module = context.client.class.errors_module
|
29
|
-
|
30
|
-
error_class
|
29
|
+
errors_module.error_class(code).new(context, message, data)
|
31
30
|
end
|
32
31
|
|
33
32
|
def extract_error(body, context)
|
@@ -43,14 +42,15 @@ module Aws
|
|
43
42
|
data = EmptyStructure.new
|
44
43
|
if error_rules = context.operation.errors
|
45
44
|
error_rules.each do |rule|
|
46
|
-
#
|
47
|
-
#
|
48
|
-
# match modeled shape name
|
45
|
+
# query protocol may have custom error code
|
46
|
+
# reference: https://smithy.io/2.0/aws/protocols/aws-query-protocol.html#error-code-resolution
|
49
47
|
error_shape_code = rule.shape['error']['code'] if rule.shape['error']
|
50
48
|
match = (code == error_shape_code || code == rule.shape.name)
|
51
|
-
|
52
|
-
|
53
|
-
|
49
|
+
next unless match && rule.shape.members.any?
|
50
|
+
|
51
|
+
data = parse_error_data(rule, context.http_response.body_contents)
|
52
|
+
# supporting HTTP bindings
|
53
|
+
apply_error_headers(rule, context, data)
|
54
54
|
end
|
55
55
|
end
|
56
56
|
data
|
@@ -58,6 +58,22 @@ module Aws
|
|
58
58
|
EmptyStructure.new
|
59
59
|
end
|
60
60
|
|
61
|
+
def parse_error_data(rule, body)
|
62
|
+
# errors may nested under <Errors><Error>structure_data</Error></Errors>
|
63
|
+
# Or may be flat and under <Error>structure_data</Error>
|
64
|
+
body = body.tr("\n", '')
|
65
|
+
if matches = body.match(/<Error>(.+?)<\/Error>/)
|
66
|
+
Parser.new(rule).parse("<#{rule.shape.name}>#{matches[1]}</#{rule.shape.name}>")
|
67
|
+
else
|
68
|
+
EmptyStructure.new
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
def apply_error_headers(rule, context, data)
|
73
|
+
headers = Aws::Rest::Response::Headers.new(rule)
|
74
|
+
headers.apply(context.http_response, data)
|
75
|
+
end
|
76
|
+
|
61
77
|
def error_code(body, context)
|
62
78
|
if matches = body.match(/<Code>(.+?)<\/Code>/)
|
63
79
|
remove_prefix(unescape(matches[1]), context)
|
@@ -138,11 +138,7 @@ module Aws
|
|
138
138
|
end
|
139
139
|
|
140
140
|
def xml_name(ref)
|
141
|
-
|
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? ?
|
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
|
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 :
|
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
|
|
@@ -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)
|
data/lib/aws-sdk-sso/client.rb
CHANGED
@@ -22,6 +22,7 @@ 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'
|
@@ -72,6 +73,7 @@ module Aws::SSO
|
|
72
73
|
add_plugin(Aws::Plugins::ResponsePaging)
|
73
74
|
add_plugin(Aws::Plugins::StubResponses)
|
74
75
|
add_plugin(Aws::Plugins::IdempotencyToken)
|
76
|
+
add_plugin(Aws::Plugins::InvocationId)
|
75
77
|
add_plugin(Aws::Plugins::JsonvalueConverter)
|
76
78
|
add_plugin(Aws::Plugins::ClientMetricsPlugin)
|
77
79
|
add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
|
@@ -196,10 +198,17 @@ module Aws::SSO
|
|
196
198
|
# When set to 'true' the request body will not be compressed
|
197
199
|
# for supported operations.
|
198
200
|
#
|
199
|
-
# @option options [String] :endpoint
|
200
|
-
#
|
201
|
-
#
|
202
|
-
#
|
201
|
+
# @option options [String, URI::HTTPS, URI::HTTP] :endpoint
|
202
|
+
# Normally you should not configure the `:endpoint` option
|
203
|
+
# directly. This is normally constructed from the `:region`
|
204
|
+
# option. Configuring `:endpoint` is normally reserved for
|
205
|
+
# connecting to test or custom endpoints. The endpoint should
|
206
|
+
# be a URI formatted like:
|
207
|
+
#
|
208
|
+
# 'http://example.com'
|
209
|
+
# 'https://example.com'
|
210
|
+
# 'http://example.com:123'
|
211
|
+
#
|
203
212
|
#
|
204
213
|
# @option options [Integer] :endpoint_cache_max_entries (1000)
|
205
214
|
# Used for the maximum size limit of the LRU cache storing endpoints data
|
@@ -337,50 +346,65 @@ module Aws::SSO
|
|
337
346
|
# @option options [Aws::SSO::EndpointProvider] :endpoint_provider
|
338
347
|
# 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`
|
339
348
|
#
|
340
|
-
# @option options [
|
341
|
-
#
|
342
|
-
#
|
343
|
-
#
|
344
|
-
#
|
345
|
-
#
|
346
|
-
#
|
347
|
-
#
|
348
|
-
#
|
349
|
-
#
|
350
|
-
#
|
351
|
-
# @option options [Float] :
|
352
|
-
#
|
353
|
-
#
|
354
|
-
#
|
355
|
-
#
|
356
|
-
#
|
357
|
-
#
|
358
|
-
#
|
359
|
-
#
|
360
|
-
#
|
361
|
-
#
|
362
|
-
#
|
363
|
-
#
|
364
|
-
#
|
349
|
+
# @option options [Float] :http_continue_timeout (1)
|
350
|
+
# The number of seconds to wait for a 100-continue response before sending the
|
351
|
+
# request body. This option has no effect unless the request has "Expect"
|
352
|
+
# header set to "100-continue". Defaults to `nil` which disables this
|
353
|
+
# behaviour. This value can safely be set per request on the session.
|
354
|
+
#
|
355
|
+
# @option options [Float] :http_idle_timeout (5)
|
356
|
+
# The number of seconds a connection is allowed to sit idle before it
|
357
|
+
# is considered stale. Stale connections are closed and removed from the
|
358
|
+
# pool before making a request.
|
359
|
+
#
|
360
|
+
# @option options [Float] :http_open_timeout (15)
|
361
|
+
# The default number of seconds to wait for response data.
|
362
|
+
# This value can safely be set per-request on the session.
|
363
|
+
#
|
364
|
+
# @option options [URI::HTTP,String] :http_proxy
|
365
|
+
# A proxy to send requests through. Formatted like 'http://proxy.com:123'.
|
366
|
+
#
|
367
|
+
# @option options [Float] :http_read_timeout (60)
|
368
|
+
# The default number of seconds to wait for response data.
|
369
|
+
# This value can safely be set per-request on the session.
|
370
|
+
#
|
371
|
+
# @option options [Boolean] :http_wire_trace (false)
|
372
|
+
# When `true`, HTTP debug output will be sent to the `:logger`.
|
373
|
+
#
|
374
|
+
# @option options [Proc] :on_chunk_received
|
375
|
+
# When a Proc object is provided, it will be used as callback when each chunk
|
376
|
+
# of the response body is received. It provides three arguments: the chunk,
|
377
|
+
# the number of bytes received, and the total number of
|
378
|
+
# bytes in the response (or nil if the server did not send a `content-length`).
|
379
|
+
#
|
380
|
+
# @option options [Proc] :on_chunk_sent
|
381
|
+
# When a Proc object is provided, it will be used as callback when each chunk
|
382
|
+
# of the request body is sent. It provides three arguments: the chunk,
|
383
|
+
# the number of bytes read from the body, and the total number of
|
384
|
+
# bytes in the body.
|
385
|
+
#
|
386
|
+
# @option options [Boolean] :raise_response_errors (true)
|
387
|
+
# When `true`, response errors are raised.
|
388
|
+
#
|
389
|
+
# @option options [String] :ssl_ca_bundle
|
390
|
+
# Full path to the SSL certificate authority bundle file that should be used when
|
391
|
+
# verifying peer certificates. If you do not pass `:ssl_ca_bundle` or
|
392
|
+
# `:ssl_ca_directory` the the system default will be used if available.
|
393
|
+
#
|
394
|
+
# @option options [String] :ssl_ca_directory
|
395
|
+
# Full path of the directory that contains the unbundled SSL certificate
|
396
|
+
# authority files for verifying peer certificates. If you do
|
397
|
+
# not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the system
|
398
|
+
# default will be used if available.
|
365
399
|
#
|
366
|
-
# @option options [
|
367
|
-
#
|
400
|
+
# @option options [String] :ssl_ca_store
|
401
|
+
# Sets the X509::Store to verify peer certificate.
|
368
402
|
#
|
369
|
-
# @option options [
|
370
|
-
#
|
371
|
-
# connection.
|
403
|
+
# @option options [Float] :ssl_timeout
|
404
|
+
# Sets the SSL timeout in seconds
|
372
405
|
#
|
373
|
-
# @option options [
|
374
|
-
#
|
375
|
-
# verifying peer certificates. If you do not pass
|
376
|
-
# `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
|
377
|
-
# will be used if available.
|
378
|
-
#
|
379
|
-
# @option options [String] :ssl_ca_directory Full path of the
|
380
|
-
# directory that contains the unbundled SSL certificate
|
381
|
-
# authority files for verifying peer certificates. If you do
|
382
|
-
# not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
|
383
|
-
# system default will be used if available.
|
406
|
+
# @option options [Boolean] :ssl_verify_peer (true)
|
407
|
+
# When `true`, SSL peer certificates are verified when establishing a connection.
|
384
408
|
#
|
385
409
|
def initialize(*args)
|
386
410
|
super
|
@@ -605,7 +629,7 @@ module Aws::SSO
|
|
605
629
|
params: params,
|
606
630
|
config: config)
|
607
631
|
context[:gem_name] = 'aws-sdk-core'
|
608
|
-
context[:gem_version] = '3.
|
632
|
+
context[:gem_version] = '3.193.0'
|
609
633
|
Seahorse::Client::Request.new(handlers, context)
|
610
634
|
end
|
611
635
|
|