aws-sdk-core 2.0.22 → 2.0.23
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/apis/CloudFormation.resources.json +5 -5
- data/apis/DynamoDB.api.json +1 -0
- data/lib/aws-sdk-core/pageable_response.rb +2 -2
- data/lib/aws-sdk-core/plugins/stub_responses.rb +4 -4
- data/lib/aws-sdk-core/version.rb +1 -1
- data/lib/aws-sdk-core/waiters/waiter.rb +2 -3
- data/lib/seahorse.rb +1 -0
- data/lib/seahorse/client/base.rb +1 -0
- data/lib/seahorse/client/plugins/response_target.rb +58 -0
- data/lib/seahorse/client/request.rb +1 -28
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dc32a01f8117fda9f7ffeea82754555a11c38b3a
|
4
|
+
data.tar.gz: 8bc2496e3ae3bfdc8a8869142a8460d3f18541f7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 43702de1c64c7a6c2a0a0f4d90ac9ec15eb512c513188fe82b691e3b82422130a0266f89b4fcec666cd5ce2dca9d22f821d91153d7f7b7787a271e09e3fcf20f
|
7
|
+
data.tar.gz: f8a778781fad39bfdbff05f625b95489b0fe37e4726b2bb7a622eac848c5d7f9475bb4edd4c142c9bff41a55b93f84cd84ea3f0ecbc9c21b9cd5dd00a3c40630
|
@@ -94,7 +94,7 @@
|
|
94
94
|
"type": "StackResource",
|
95
95
|
"identifiers": [
|
96
96
|
{ "target": "StackName", "source": "identifier", "name": "Name" },
|
97
|
-
{ "target": "
|
97
|
+
{ "target": "LogicalId", "source": "input" }
|
98
98
|
]
|
99
99
|
}
|
100
100
|
}
|
@@ -135,8 +135,8 @@
|
|
135
135
|
},
|
136
136
|
"StackResource": {
|
137
137
|
"identifiers": [
|
138
|
-
{ "name": "
|
139
|
-
{ "name": "
|
138
|
+
{ "name": "StackName" },
|
139
|
+
{ "name": "LogicalId" }
|
140
140
|
],
|
141
141
|
"shape": "StackResourceDetail",
|
142
142
|
"load": {
|
@@ -162,8 +162,8 @@
|
|
162
162
|
},
|
163
163
|
"StackResourceSummary": {
|
164
164
|
"identifiers": [
|
165
|
-
{ "name": "
|
166
|
-
{ "name": "
|
165
|
+
{ "name": "StackName" },
|
166
|
+
{ "name": "LogicalId" }
|
167
167
|
],
|
168
168
|
"shape": "StackResourceSummary",
|
169
169
|
"has": {
|
data/apis/DynamoDB.api.json
CHANGED
@@ -1127,6 +1127,7 @@
|
|
1127
1127
|
"required":["TableName"],
|
1128
1128
|
"members":{
|
1129
1129
|
"TableName":{"shape":"TableName"},
|
1130
|
+
"IndexName":{"shape":"IndexName"},
|
1130
1131
|
"AttributesToGet":{"shape":"AttributeNameList"},
|
1131
1132
|
"Limit":{"shape":"PositiveIntegerObject"},
|
1132
1133
|
"Select":{"shape":"Select"},
|
@@ -71,7 +71,7 @@ module Aws
|
|
71
71
|
# Yields the current and each following response to the given block.
|
72
72
|
# @yieldparam [Response] response
|
73
73
|
# @return [Enumerable,nil] Returns a new Enumerable if no block is given.
|
74
|
-
def
|
74
|
+
def each(&block)
|
75
75
|
return enum_for(:each_page) unless block_given?
|
76
76
|
response = self
|
77
77
|
yield(response)
|
@@ -80,7 +80,7 @@ module Aws
|
|
80
80
|
yield(response)
|
81
81
|
end
|
82
82
|
end
|
83
|
-
alias each
|
83
|
+
alias each_page each
|
84
84
|
|
85
85
|
# @api private
|
86
86
|
def count
|
@@ -69,10 +69,10 @@ module Aws
|
|
69
69
|
|
70
70
|
def stub_http_body(resp)
|
71
71
|
payload = resp.context.operation.output.payload
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
resp.data[payload] = body
|
72
|
+
resp.context.http_response.signal_headers(200, {})
|
73
|
+
resp.context.http_response.signal_data(resp.data[payload])
|
74
|
+
resp.context.http_response.signal_done
|
75
|
+
resp.data[payload] = resp.context.http_response.body
|
76
76
|
end
|
77
77
|
|
78
78
|
end
|
data/lib/aws-sdk-core/version.rb
CHANGED
@@ -88,11 +88,10 @@ module Aws
|
|
88
88
|
def wait(options)
|
89
89
|
catch(:success) do
|
90
90
|
failure_msg = catch(:failure) do
|
91
|
-
poll(options)
|
92
|
-
return true
|
91
|
+
return poll(options)
|
93
92
|
end
|
94
93
|
raise Errors::WaiterFailed.new(failure_msg || 'waiter failed')
|
95
|
-
end
|
94
|
+
end || true
|
96
95
|
end
|
97
96
|
|
98
97
|
private
|
data/lib/seahorse.rb
CHANGED
@@ -48,6 +48,7 @@ module Seahorse
|
|
48
48
|
autoload :ParamConversion, 'seahorse/client/plugins/param_conversion'
|
49
49
|
autoload :ParamValidation, 'seahorse/client/plugins/param_validation'
|
50
50
|
autoload :RaiseResponseErrors, 'seahorse/client/plugins/raise_response_errors'
|
51
|
+
autoload :ResponseTarget, 'seahorse/client/plugins/response_target'
|
51
52
|
autoload :RestfulBindings, 'seahorse/client/plugins/restful_bindings'
|
52
53
|
end
|
53
54
|
|
data/lib/seahorse/client/base.rb
CHANGED
@@ -0,0 +1,58 @@
|
|
1
|
+
module Seahorse
|
2
|
+
module Client
|
3
|
+
module Plugins
|
4
|
+
# @api private
|
5
|
+
class ResponseTarget < Plugin
|
6
|
+
|
7
|
+
# This handler is responsible for replacing the HTTP response body IO
|
8
|
+
# object with custom targets, such as a block, or a file. It is important
|
9
|
+
# to not write data to the custom target in the case of a non-success
|
10
|
+
# response. We do not want to write an XML error message to someone's
|
11
|
+
# file.
|
12
|
+
class Handler < Client::Handler
|
13
|
+
|
14
|
+
def call(context)
|
15
|
+
target = context.params.delete(:response_target)
|
16
|
+
target ||= context[:response_target]
|
17
|
+
add_event_listeners(context, target) if target
|
18
|
+
@handler.call(context)
|
19
|
+
end
|
20
|
+
|
21
|
+
private
|
22
|
+
|
23
|
+
def add_event_listeners(context, target)
|
24
|
+
handler = self
|
25
|
+
context.http_response.on_headers(200) do
|
26
|
+
context.http_response.body = handler.send(:io, target)
|
27
|
+
end
|
28
|
+
|
29
|
+
context.http_response.on_success(200) do
|
30
|
+
body = context.http_response.body
|
31
|
+
if ManagedFile === body && body.open?
|
32
|
+
body.close
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
context.http_response.on_error do
|
37
|
+
body = context.http_response.body
|
38
|
+
File.unlink(body) if ManagedFile === body
|
39
|
+
context.http_response.body = StringIO.new
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
def io(target)
|
44
|
+
case target
|
45
|
+
when Proc then BlockIO.new(&target)
|
46
|
+
when String, Pathname then ManagedFile.new(target, 'w+b')
|
47
|
+
else target
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
handler(Handler, step: :initialize, priority: 90)
|
54
|
+
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
@@ -66,35 +66,8 @@ module Seahorse
|
|
66
66
|
# @return [Response]
|
67
67
|
#
|
68
68
|
def send_request(options = {}, &block)
|
69
|
-
|
69
|
+
@context[:response_target] = options[:target] || block
|
70
70
|
@handlers.to_stack.call(@context)
|
71
|
-
ensure
|
72
|
-
close_managed_files
|
73
|
-
end
|
74
|
-
|
75
|
-
private
|
76
|
-
|
77
|
-
def set_response_target(options, &block)
|
78
|
-
target = options[:target]
|
79
|
-
target ||= block
|
80
|
-
target ||= context.params.delete(:response_target)
|
81
|
-
if target
|
82
|
-
@context.http_response.body =
|
83
|
-
case target
|
84
|
-
when Proc then BlockIO.new(&target)
|
85
|
-
when String, Pathname then ManagedFile.new(target, 'w+b')
|
86
|
-
else target
|
87
|
-
end
|
88
|
-
end
|
89
|
-
end
|
90
|
-
|
91
|
-
def close_managed_files
|
92
|
-
[
|
93
|
-
@context.http_request.body,
|
94
|
-
@context.http_response.body,
|
95
|
-
].each do |io|
|
96
|
-
io.close if io.is_a?(ManagedFile) && io.open?
|
97
|
-
end
|
98
71
|
end
|
99
72
|
|
100
73
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.23
|
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: 2015-02-
|
11
|
+
date: 2015-02-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: multi_json
|
@@ -341,6 +341,7 @@ files:
|
|
341
341
|
- lib/seahorse/client/plugins/param_conversion.rb
|
342
342
|
- lib/seahorse/client/plugins/param_validation.rb
|
343
343
|
- lib/seahorse/client/plugins/raise_response_errors.rb
|
344
|
+
- lib/seahorse/client/plugins/response_target.rb
|
344
345
|
- lib/seahorse/client/plugins/restful_bindings.rb
|
345
346
|
- lib/seahorse/client/request.rb
|
346
347
|
- lib/seahorse/client/request_context.rb
|