aws-sdk-core 3.90.0 → 3.93.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/VERSION +1 -1
- data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +1 -0
- data/lib/aws-sdk-core/binary/event_builder.rb +6 -6
- data/lib/aws-sdk-core/client_stubs.rb +9 -8
- data/lib/aws-sdk-core/credential_provider_chain.rb +18 -5
- data/lib/aws-sdk-core/errors.rb +19 -0
- data/lib/aws-sdk-core/json.rb +9 -10
- data/lib/aws-sdk-core/log/param_filter.rb +3 -3
- data/lib/aws-sdk-core/pageable_response.rb +34 -20
- data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +2 -1
- data/lib/aws-sdk-core/plugins/retries/client_rate_limiter.rb +137 -0
- data/lib/aws-sdk-core/plugins/retries/clock_skew.rb +98 -0
- data/lib/aws-sdk-core/plugins/retries/error_inspector.rb +142 -0
- data/lib/aws-sdk-core/plugins/retries/retry_quota.rb +57 -0
- data/lib/aws-sdk-core/plugins/retry_errors.rb +289 -111
- data/lib/aws-sdk-core/plugins/signature_v4.rb +13 -2
- data/lib/aws-sdk-core/plugins/stub_responses.rb +1 -0
- data/lib/aws-sdk-core/shared_config.rb +17 -11
- data/lib/aws-sdk-core/util.rb +4 -0
- data/lib/aws-sdk-sts.rb +7 -4
- data/lib/aws-sdk-sts/client.rb +68 -14
- data/lib/aws-sdk-sts/errors.rb +30 -8
- data/lib/aws-sdk-sts/plugins/sts_regional_endpoints.rb +4 -4
- data/lib/aws-sdk-sts/resource.rb +1 -0
- data/lib/seahorse/client/response.rb +3 -5
- metadata +6 -2
@@ -42,7 +42,7 @@ module Aws
|
|
42
42
|
option(:unsigned_operations) do |cfg|
|
43
43
|
cfg.api.operation_names.inject([]) do |unsigned, operation_name|
|
44
44
|
if cfg.api.operation(operation_name)['authtype'] == 'none' ||
|
45
|
-
|
45
|
+
cfg.api.operation(operation_name)['authtype'] == 'custom'
|
46
46
|
# Unsign requests that has custom apigateway authorizer as well
|
47
47
|
unsigned << operation_name
|
48
48
|
else
|
@@ -107,6 +107,17 @@ module Aws
|
|
107
107
|
req.headers.delete('X-Amz-Security-Token')
|
108
108
|
req.headers.delete('X-Amz-Date')
|
109
109
|
|
110
|
+
if context.config.respond_to?(:clock_skew) &&
|
111
|
+
context.config.clock_skew &&
|
112
|
+
context.config.correct_clock_skew
|
113
|
+
|
114
|
+
endpoint = context.http_request.endpoint
|
115
|
+
skew = context.config.clock_skew.clock_correction(endpoint)
|
116
|
+
if skew.abs > 0
|
117
|
+
req.headers['X-Amz-Date'] = (Time.now.utc + skew).strftime("%Y%m%dT%H%M%SZ")
|
118
|
+
end
|
119
|
+
end
|
120
|
+
|
110
121
|
# compute the signature
|
111
122
|
begin
|
112
123
|
signature = signer.sign_request(
|
@@ -130,7 +141,7 @@ module Aws
|
|
130
141
|
# @api private
|
131
142
|
def apply_authtype(context)
|
132
143
|
if context.operation['authtype'].eql?('v4-unsigned-body') &&
|
133
|
-
|
144
|
+
context.http_request.endpoint.scheme.eql?('https')
|
134
145
|
context.http_request.headers['X-Amz-Content-Sha256'] = 'UNSIGNED-PAYLOAD'
|
135
146
|
end
|
136
147
|
context
|
@@ -34,6 +34,7 @@ requests are made, and retries are disabled.
|
|
34
34
|
if client.config.stub_responses
|
35
35
|
client.setup_stubbing
|
36
36
|
client.handlers.remove(RetryErrors::Handler)
|
37
|
+
client.handlers.remove(RetryErrors::LegacyHandler)
|
37
38
|
client.handlers.remove(ClientMetricsPlugin::Handler)
|
38
39
|
client.handlers.remove(ClientMetricsSendPlugin::LatencyHandler)
|
39
40
|
client.handlers.remove(ClientMetricsSendPlugin::AttemptHandler)
|
@@ -117,16 +117,18 @@ module Aws
|
|
117
117
|
credentials
|
118
118
|
end
|
119
119
|
|
120
|
-
def assume_role_web_identity_credentials_from_config(
|
121
|
-
p = profile || @profile_name
|
120
|
+
def assume_role_web_identity_credentials_from_config(opts = {})
|
121
|
+
p = opts[:profile] || @profile_name
|
122
122
|
if @config_enabled && @parsed_config
|
123
123
|
entry = @parsed_config.fetch(p, {})
|
124
124
|
if entry['web_identity_token_file'] && entry['role_arn']
|
125
|
-
|
125
|
+
cfg = {
|
126
126
|
role_arn: entry['role_arn'],
|
127
127
|
web_identity_token_file: entry['web_identity_token_file'],
|
128
128
|
role_session_name: entry['role_session_name']
|
129
|
-
|
129
|
+
}
|
130
|
+
cfg[:region] = opts[:region] if opts[:region]
|
131
|
+
AssumeRoleWebIdentityCredentials.new(cfg)
|
130
132
|
end
|
131
133
|
end
|
132
134
|
end
|
@@ -141,16 +143,20 @@ module Aws
|
|
141
143
|
end
|
142
144
|
|
143
145
|
config_reader(
|
146
|
+
:region,
|
144
147
|
:credential_process,
|
148
|
+
:endpoint_discovery_enabled,
|
149
|
+
:max_attempts,
|
150
|
+
:retry_mode,
|
151
|
+
:adaptive_retry_wait_to_fill,
|
152
|
+
:correct_clock_skew,
|
145
153
|
:csm_client_id,
|
146
154
|
:csm_enabled,
|
147
155
|
:csm_host,
|
148
156
|
:csm_port,
|
149
|
-
:
|
150
|
-
:region,
|
157
|
+
:sts_regional_endpoints,
|
151
158
|
:s3_use_arn_region,
|
152
|
-
:s3_us_east_1_regional_endpoint
|
153
|
-
:sts_regional_endpoints
|
159
|
+
:s3_us_east_1_regional_endpoint
|
154
160
|
)
|
155
161
|
|
156
162
|
private
|
@@ -182,7 +188,7 @@ module Aws
|
|
182
188
|
'a credential_source. For assume role credentials, must '\
|
183
189
|
'provide only source_profile or credential_source, not both.'
|
184
190
|
elsif opts[:source_profile]
|
185
|
-
opts[:credentials] = resolve_source_profile(opts[:source_profile])
|
191
|
+
opts[:credentials] = resolve_source_profile(opts[:source_profile], opts)
|
186
192
|
if opts[:credentials]
|
187
193
|
opts[:role_session_name] ||= prof_cfg['role_session_name']
|
188
194
|
opts[:role_session_name] ||= 'default_session'
|
@@ -220,10 +226,10 @@ module Aws
|
|
220
226
|
end
|
221
227
|
end
|
222
228
|
|
223
|
-
def resolve_source_profile(profile)
|
229
|
+
def resolve_source_profile(profile, opts = {})
|
224
230
|
if (creds = credentials(profile: profile))
|
225
231
|
creds # static credentials
|
226
|
-
elsif (provider = assume_role_web_identity_credentials_from_config(profile))
|
232
|
+
elsif (provider = assume_role_web_identity_credentials_from_config(opts.merge(profile: profile)))
|
227
233
|
provider.credentials if provider.credentials.set?
|
228
234
|
elsif (provider = assume_role_process_credentials_from_config(profile))
|
229
235
|
provider.credentials if provider.credentials.set?
|
data/lib/aws-sdk-core/util.rb
CHANGED
data/lib/aws-sdk-sts.rb
CHANGED
@@ -22,17 +22,20 @@ require_relative 'aws-sdk-sts/customizations'
|
|
22
22
|
# methods each accept a hash of request parameters and return a response
|
23
23
|
# structure.
|
24
24
|
#
|
25
|
+
# sts = Aws::STS::Client.new
|
26
|
+
# resp = sts.assume_role(params)
|
27
|
+
#
|
25
28
|
# See {Client} for more information.
|
26
29
|
#
|
27
30
|
# # Errors
|
28
31
|
#
|
29
|
-
# Errors returned from AWS Security Token Service
|
30
|
-
# extend {Errors::ServiceError}.
|
32
|
+
# Errors returned from AWS Security Token Service are defined in the
|
33
|
+
# {Errors} module and all extend {Errors::ServiceError}.
|
31
34
|
#
|
32
35
|
# begin
|
33
36
|
# # do stuff
|
34
37
|
# rescue Aws::STS::Errors::ServiceError
|
35
|
-
# # rescues all
|
38
|
+
# # rescues all AWS Security Token Service API errors
|
36
39
|
# end
|
37
40
|
#
|
38
41
|
# See {Errors} for more information.
|
@@ -40,6 +43,6 @@ require_relative 'aws-sdk-sts/customizations'
|
|
40
43
|
# @service
|
41
44
|
module Aws::STS
|
42
45
|
|
43
|
-
GEM_VERSION = '3.
|
46
|
+
GEM_VERSION = '3.93.0'
|
44
47
|
|
45
48
|
end
|
data/lib/aws-sdk-sts/client.rb
CHANGED
@@ -31,6 +31,18 @@ require 'aws-sdk-sts/plugins/sts_regional_endpoints.rb'
|
|
31
31
|
Aws::Plugins::GlobalConfiguration.add_identifier(:sts)
|
32
32
|
|
33
33
|
module Aws::STS
|
34
|
+
# An API client for STS. To construct a client, you need to configure a `:region` and `:credentials`.
|
35
|
+
#
|
36
|
+
# client = Aws::STS::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.
|
34
46
|
class Client < Seahorse::Client::Base
|
35
47
|
|
36
48
|
include Aws::ClientStubs
|
@@ -110,6 +122,12 @@ module Aws::STS
|
|
110
122
|
# When set to `true`, a thread polling for endpoints will be running in
|
111
123
|
# the background every 60 secs (default). Defaults to `false`.
|
112
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
|
+
#
|
113
131
|
# @option options [Boolean] :client_side_monitoring (false)
|
114
132
|
# When `true`, client-side metrics will be collected for all API requests from
|
115
133
|
# this client.
|
@@ -134,6 +152,10 @@ module Aws::STS
|
|
134
152
|
# When `true`, an attempt is made to coerce request parameters into
|
135
153
|
# the required types.
|
136
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
|
+
#
|
137
159
|
# @option options [Boolean] :disable_host_prefix_injection (false)
|
138
160
|
# Set to true to disable SDK automatically adding host prefix
|
139
161
|
# to default service endpoint when available.
|
@@ -168,15 +190,29 @@ module Aws::STS
|
|
168
190
|
# The Logger instance to send log messages to. If this option
|
169
191
|
# is not set, logging will be disabled.
|
170
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
|
+
#
|
171
199
|
# @option options [String] :profile ("default")
|
172
200
|
# Used when loading credentials from the shared credentials file
|
173
201
|
# at HOME/.aws/credentials. When not specified, 'default' is used.
|
174
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
|
+
#
|
175
207
|
# @option options [Float] :retry_base_delay (0.3)
|
176
|
-
# 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.
|
177
210
|
#
|
178
211
|
# @option options [Symbol] :retry_jitter (:none)
|
179
|
-
# A delay randomiser function used by the default backoff function.
|
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.
|
180
216
|
#
|
181
217
|
# @see https://www.awsarchitectureblog.com/2015/03/backoff.html
|
182
218
|
#
|
@@ -184,20 +220,39 @@ module Aws::STS
|
|
184
220
|
# The maximum number of times to retry failed requests. Only
|
185
221
|
# ~ 500 level server errors and certain ~ 400 level client errors
|
186
222
|
# are retried. Generally, these are throttling errors, data
|
187
|
-
# checksum errors, networking errors, timeout errors
|
188
|
-
# 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.
|
189
226
|
#
|
190
227
|
# @option options [Integer] :retry_max_delay (0)
|
191
|
-
# The maximum number of seconds to delay between retries (0 for no limit)
|
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
|
+
#
|
192
247
|
#
|
193
248
|
# @option options [String] :secret_access_key
|
194
249
|
#
|
195
250
|
# @option options [String] :session_token
|
196
251
|
#
|
197
|
-
# @option options [String] :sts_regional_endpoints ("
|
252
|
+
# @option options [String] :sts_regional_endpoints ("regional")
|
198
253
|
# Passing in 'regional' to enable regional endpoint for STS for all supported
|
199
|
-
# regions (except 'aws-global')
|
200
|
-
#
|
254
|
+
# regions (except 'aws-global'). Using 'legacy' mode will force all legacy
|
255
|
+
# regions to resolve to the STS global endpoint.
|
201
256
|
#
|
202
257
|
# @option options [Boolean] :stub_responses (false)
|
203
258
|
# Causes the client to return stubbed responses. By default
|
@@ -216,16 +271,15 @@ module Aws::STS
|
|
216
271
|
# requests through. Formatted like 'http://proxy.com:123'.
|
217
272
|
#
|
218
273
|
# @option options [Float] :http_open_timeout (15) The number of
|
219
|
-
# seconds to wait when opening a HTTP session before
|
274
|
+
# seconds to wait when opening a HTTP session before raising a
|
220
275
|
# `Timeout::Error`.
|
221
276
|
#
|
222
277
|
# @option options [Integer] :http_read_timeout (60) The default
|
223
278
|
# number of seconds to wait for response data. This value can
|
224
|
-
# safely be set
|
225
|
-
# per-request on the session yeidled by {#session_for}.
|
279
|
+
# safely be set per-request on the session.
|
226
280
|
#
|
227
281
|
# @option options [Float] :http_idle_timeout (5) The number of
|
228
|
-
# seconds a connection is allowed to sit
|
282
|
+
# seconds a connection is allowed to sit idle before it is
|
229
283
|
# considered stale. Stale connections are closed and removed
|
230
284
|
# from the pool before making a request.
|
231
285
|
#
|
@@ -234,7 +288,7 @@ module Aws::STS
|
|
234
288
|
# request body. This option has no effect unless the request has
|
235
289
|
# "Expect" header set to "100-continue". Defaults to `nil` which
|
236
290
|
# disables this behaviour. This value can safely be set per
|
237
|
-
# request on the session
|
291
|
+
# request on the session.
|
238
292
|
#
|
239
293
|
# @option options [Boolean] :http_wire_trace (false) When `true`,
|
240
294
|
# HTTP debug output will be sent to the `:logger`.
|
@@ -2131,7 +2185,7 @@ module Aws::STS
|
|
2131
2185
|
params: params,
|
2132
2186
|
config: config)
|
2133
2187
|
context[:gem_name] = 'aws-sdk-core'
|
2134
|
-
context[:gem_version] = '3.
|
2188
|
+
context[:gem_version] = '3.93.0'
|
2135
2189
|
Seahorse::Client::Request.new(handlers, context)
|
2136
2190
|
end
|
2137
2191
|
|
data/lib/aws-sdk-sts/errors.rb
CHANGED
@@ -6,6 +6,36 @@
|
|
6
6
|
# WARNING ABOUT GENERATED CODE
|
7
7
|
|
8
8
|
module Aws::STS
|
9
|
+
|
10
|
+
# When STS returns an error response, the Ruby SDK constructs and raises an error.
|
11
|
+
# These errors all extend Aws::STS::Errors::ServiceError < {Aws::Errors::ServiceError}
|
12
|
+
#
|
13
|
+
# You can rescue all STS errors using ServiceError:
|
14
|
+
#
|
15
|
+
# begin
|
16
|
+
# # do stuff
|
17
|
+
# rescue Aws::STS::Errors::ServiceError
|
18
|
+
# # rescues all STS 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
|
+
# * {ExpiredTokenException}
|
29
|
+
# * {IDPCommunicationErrorException}
|
30
|
+
# * {IDPRejectedClaimException}
|
31
|
+
# * {InvalidAuthorizationMessageException}
|
32
|
+
# * {InvalidIdentityTokenException}
|
33
|
+
# * {MalformedPolicyDocumentException}
|
34
|
+
# * {PackedPolicyTooLargeException}
|
35
|
+
# * {RegionDisabledException}
|
36
|
+
#
|
37
|
+
# Additionally, error classes are dynamically generated for service errors based on the error code
|
38
|
+
# if they are not defined above.
|
9
39
|
module Errors
|
10
40
|
|
11
41
|
extend Aws::Errors::DynamicErrors
|
@@ -23,7 +53,6 @@ module Aws::STS
|
|
23
53
|
def message
|
24
54
|
@message || @data[:message]
|
25
55
|
end
|
26
|
-
|
27
56
|
end
|
28
57
|
|
29
58
|
class IDPCommunicationErrorException < ServiceError
|
@@ -39,7 +68,6 @@ module Aws::STS
|
|
39
68
|
def message
|
40
69
|
@message || @data[:message]
|
41
70
|
end
|
42
|
-
|
43
71
|
end
|
44
72
|
|
45
73
|
class IDPRejectedClaimException < ServiceError
|
@@ -55,7 +83,6 @@ module Aws::STS
|
|
55
83
|
def message
|
56
84
|
@message || @data[:message]
|
57
85
|
end
|
58
|
-
|
59
86
|
end
|
60
87
|
|
61
88
|
class InvalidAuthorizationMessageException < ServiceError
|
@@ -71,7 +98,6 @@ module Aws::STS
|
|
71
98
|
def message
|
72
99
|
@message || @data[:message]
|
73
100
|
end
|
74
|
-
|
75
101
|
end
|
76
102
|
|
77
103
|
class InvalidIdentityTokenException < ServiceError
|
@@ -87,7 +113,6 @@ module Aws::STS
|
|
87
113
|
def message
|
88
114
|
@message || @data[:message]
|
89
115
|
end
|
90
|
-
|
91
116
|
end
|
92
117
|
|
93
118
|
class MalformedPolicyDocumentException < ServiceError
|
@@ -103,7 +128,6 @@ module Aws::STS
|
|
103
128
|
def message
|
104
129
|
@message || @data[:message]
|
105
130
|
end
|
106
|
-
|
107
131
|
end
|
108
132
|
|
109
133
|
class PackedPolicyTooLargeException < ServiceError
|
@@ -119,7 +143,6 @@ module Aws::STS
|
|
119
143
|
def message
|
120
144
|
@message || @data[:message]
|
121
145
|
end
|
122
|
-
|
123
146
|
end
|
124
147
|
|
125
148
|
class RegionDisabledException < ServiceError
|
@@ -135,7 +158,6 @@ module Aws::STS
|
|
135
158
|
def message
|
136
159
|
@message || @data[:message]
|
137
160
|
end
|
138
|
-
|
139
161
|
end
|
140
162
|
|
141
163
|
end
|
@@ -5,12 +5,12 @@ module Aws
|
|
5
5
|
class STSRegionalEndpoints < Seahorse::Client::Plugin
|
6
6
|
|
7
7
|
option(:sts_regional_endpoints,
|
8
|
-
default: '
|
8
|
+
default: 'regional',
|
9
9
|
doc_type: String,
|
10
10
|
docstring: <<-DOCS) do |cfg|
|
11
11
|
Passing in 'regional' to enable regional endpoint for STS for all supported
|
12
|
-
regions (except 'aws-global')
|
13
|
-
|
12
|
+
regions (except 'aws-global'). Using 'legacy' mode will force all legacy
|
13
|
+
regions to resolve to the STS global endpoint.
|
14
14
|
DOCS
|
15
15
|
resolve_sts_regional_endpoints(cfg)
|
16
16
|
end
|
@@ -22,7 +22,7 @@ for legacy regions.
|
|
22
22
|
env_mode = nil if env_mode == ''
|
23
23
|
cfg_mode = Aws.shared_config.sts_regional_endpoints(
|
24
24
|
profile: cfg.profile)
|
25
|
-
env_mode || cfg_mode || '
|
25
|
+
env_mode || cfg_mode || 'regional'
|
26
26
|
end
|
27
27
|
|
28
28
|
end
|
data/lib/aws-sdk-sts/resource.rb
CHANGED
@@ -3,7 +3,6 @@ require 'delegate'
|
|
3
3
|
module Seahorse
|
4
4
|
module Client
|
5
5
|
class Response < Delegator
|
6
|
-
|
7
6
|
# @option options [RequestContext] :context (nil)
|
8
7
|
# @option options [Integer] :status_code (nil)
|
9
8
|
# @option options [Http::Headers] :headers (Http::Headers.new)
|
@@ -39,10 +38,10 @@ module Seahorse
|
|
39
38
|
# witin the given range.
|
40
39
|
#
|
41
40
|
# @return [self]
|
42
|
-
def on(range, &
|
41
|
+
def on(range, &_block)
|
43
42
|
response = self
|
44
43
|
@context.http_response.on_success(range) do
|
45
|
-
|
44
|
+
yield response
|
46
45
|
end
|
47
46
|
self
|
48
47
|
end
|
@@ -56,7 +55,7 @@ module Seahorse
|
|
56
55
|
# @return [Boolean] Returns `true` if the response is complete with
|
57
56
|
# a ~ 200 level http status code.
|
58
57
|
def successful?
|
59
|
-
(200..299).
|
58
|
+
(200..299).cover?(@context.http_response.status_code) && @error.nil?
|
60
59
|
end
|
61
60
|
|
62
61
|
# @api private
|
@@ -76,7 +75,6 @@ module Seahorse
|
|
76
75
|
def __setobj__(obj)
|
77
76
|
@data = obj
|
78
77
|
end
|
79
|
-
|
80
78
|
end
|
81
79
|
end
|
82
80
|
end
|