aws-sdk-core 2.0.0.rc5 → 2.0.0.rc6

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.
@@ -0,0 +1,33 @@
1
+ {
2
+ "pagination": {
3
+ "ListHealthChecks": {
4
+ "input_token": "Marker",
5
+ "output_token": "NextMarker",
6
+ "more_results": "IsTruncated",
7
+ "limit_key": "MaxItems",
8
+ "result_key": "HealthChecks"
9
+ },
10
+ "ListHostedZones": {
11
+ "input_token": "Marker",
12
+ "output_token": "NextMarker",
13
+ "more_results": "IsTruncated",
14
+ "limit_key": "MaxItems",
15
+ "result_key": "HostedZones"
16
+ },
17
+ "ListResourceRecordSets": {
18
+ "more_results": "IsTruncated",
19
+ "limit_key": "MaxItems",
20
+ "result_key": "ResourceRecordSets",
21
+ "input_token": [
22
+ "StartRecordName",
23
+ "StartRecordType",
24
+ "StartRecordIdentifier"
25
+ ],
26
+ "output_token": [
27
+ "NextRecordName",
28
+ "NextRecordType",
29
+ "NextRecordIdentifier"
30
+ ]
31
+ }
32
+ }
33
+ }
@@ -10,8 +10,8 @@ module Aws
10
10
 
11
11
  def call(context)
12
12
  @handler.call(context).on(300..599) do |response|
13
- if empty_body?(response)
14
- error_code = error_code_for_empty_response(response)
13
+ if empty_body?(context.http_response)
14
+ error_code = error_code_for_empty_response(context.http_response)
15
15
  error_message = ''
16
16
  else
17
17
  error_code, error_message = @parser.extract_error(response)
@@ -29,19 +29,19 @@ module Aws
29
29
  errors_module.error_class(code).new(context, message)
30
30
  end
31
31
 
32
- def empty_body?(response)
33
- response.http_response.body_contents.empty?
32
+ def empty_body?(http_resp)
33
+ http_resp.body_contents.empty?
34
34
  end
35
35
 
36
- def error_code_for_empty_response(response)
37
- error_code = response.http_response.status_code
36
+ def error_code_for_empty_response(http_resp)
37
+ status_code = http_resp.status_code
38
38
  {
39
39
  302 => 'MovedTemporarily',
40
40
  304 => 'NotModified',
41
41
  400 => 'BadRequest',
42
42
  403 => 'Forbidden',
43
43
  404 => 'NotFound',
44
- }[error_code] || "#{error_code}Error"
44
+ }[status_code] || "#{status_code}Error"
45
45
  end
46
46
 
47
47
  end
@@ -3,9 +3,10 @@ module Aws
3
3
  class ErrorParser
4
4
 
5
5
  def extract_error(response)
6
- json = MultiJson.load(response.http_response.body_contents)
6
+ context = response.context
7
+ json = MultiJson.load(context.http_response.body_contents)
7
8
  error_code = json['code'] || json['__type']
8
- error_code ||= response.http_response.headers['x-amzn-errortype']
9
+ error_code ||= context.http_response.headers['x-amzn-errortype']
9
10
  error_code = error_code.split('#').last
10
11
  if error_code == 'RequestEntityTooLarge'
11
12
  error_message = 'Request body must be less than 1 MB'
@@ -96,7 +96,8 @@ module Aws
96
96
  end
97
97
 
98
98
  def error_for(response)
99
- ErrorInspector.new(response.error, response.http_response.status_code)
99
+ status_code = response.context.http_response.status_code
100
+ ErrorInspector.new(response.error, status_code)
100
101
  end
101
102
 
102
103
  def retry_request(context, error)
@@ -8,20 +8,20 @@ module Aws
8
8
 
9
9
  def call(context)
10
10
  @handler.call(context).on(200) do |response|
11
- if error = check_for_error(response)
12
- response.http_response.status_code = 500
11
+ if error = check_for_error(context)
12
+ context.http_response.status_code = 500
13
13
  response.data = nil
14
14
  response.error = error
15
15
  end
16
16
  end
17
17
  end
18
18
 
19
- def check_for_error(response)
20
- xml = MultiXml.parse(response.http_response.body_contents)
19
+ def check_for_error(context)
20
+ xml = MultiXml.parse(context.http_response.body_contents)
21
21
  if xml['Error']
22
22
  error_code = xml['Error']['Code']
23
23
  error_message = xml['Error']['Message']
24
- S3::Errors.error_class(error_code).new(response.context, error_message)
24
+ S3::Errors.error_class(error_code).new(context, error_message)
25
25
  end
26
26
  end
27
27
 
@@ -6,7 +6,7 @@ module Aws
6
6
 
7
7
  def call(context)
8
8
  @handler.call(context).on(200) do |response|
9
- xml = MultiXml.parse(response.http_response.body_contents)
9
+ xml = MultiXml.parse(context.http_response.body_contents)
10
10
  if xml.key?('LocationConstraint')
11
11
  constraint = xml['LocationConstraint']
12
12
  response.data[:location_constraint] =
@@ -13,8 +13,8 @@ module Aws
13
13
 
14
14
  def call(context)
15
15
  response = @handler.call(context)
16
- if response.http_response.status_code == 307
17
- endpoint = response.http_response.headers['location']
16
+ if context.http_response.status_code == 307
17
+ endpoint = context.http_response.headers['location']
18
18
  endpoint = Seahorse::Client::Http::Endpoint.new(endpoint)
19
19
  context.http_request.endpoint = endpoint
20
20
  context.http_response.body.truncate(0)
@@ -1,3 +1,3 @@
1
1
  module Aws
2
- VERSION = '2.0.0.rc5'
2
+ VERSION = '2.0.0.rc6'
3
3
  end
@@ -3,7 +3,7 @@ module Aws
3
3
  class ErrorParser
4
4
 
5
5
  def extract_error(response)
6
- error = MultiXml.parse(response.http_response.body_contents)
6
+ error = MultiXml.parse(response.context.http_response.body_contents)
7
7
  %w(Response ErrorResponse Errors Error).each do |wrapper|
8
8
  error = error[wrapper] if error[wrapper]
9
9
  end
@@ -134,7 +134,7 @@ module Aws
134
134
  # send the request
135
135
  resp = req.send_request
136
136
 
137
- request_assertions(f, resp.http_request)
137
+ request_assertions(f, resp.context.http_request)
138
138
  response_assertions(f, resp)
139
139
 
140
140
  end
@@ -19,7 +19,7 @@ module Aws
19
19
 
20
20
  it 'moves the queue url param to the http request endpoint' do
21
21
  resp = send_request
22
- expect(resp.http_request.endpoint).to eq('http://foo.com/')
22
+ expect(resp.context.http_request.endpoint).to eq('http://foo.com/')
23
23
  end
24
24
 
25
25
  it 'resets the configured region based on the queue url' do
@@ -8,9 +8,9 @@ params:
8
8
  :change_batch:
9
9
  :changes: []
10
10
  request:
11
- path: '/2012-12-12/hostedzone/ZONE-ID/rrset/'
11
+ path: '/2013-04-01/hostedzone/ZONE-ID/rrset/'
12
12
  body: |
13
- <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/">
13
+ <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2013-04-01/">
14
14
  <ChangeBatch>
15
15
  <Changes>
16
16
  </Changes>
@@ -16,7 +16,7 @@ module Seahorse
16
16
  def handle_response(*args, &block)
17
17
  handler(*args) do |context|
18
18
  resp = @handler.call(context)
19
- block.call(resp) if resp.http_response.status_code > 0
19
+ block.call(resp) if resp.context.http_response.status_code > 0
20
20
  resp
21
21
  end
22
22
  end
@@ -155,11 +155,11 @@ module Seahorse
155
155
  end
156
156
 
157
157
  def _http_request_headers(response)
158
- response.http_request.headers.inspect
158
+ response.context.http_request.headers.inspect
159
159
  end
160
160
 
161
161
  def _http_request_body(response)
162
- summarize_value(response.http_request.body_contents)
162
+ summarize_value(response.context.http_request.body_contents)
163
163
  end
164
164
 
165
165
  def _http_response_status_code(response)
@@ -20,7 +20,7 @@ module Seahorse
20
20
  def call(context)
21
21
  context.http_request.body = MultiJson.dump(context.params)
22
22
  @handler.call(context).on(200..299) do |resp|
23
- resp.data = MultiJson.load(resp.http_response.body_contents)
23
+ resp.data = MultiJson.load(context.http_response.body_contents)
24
24
  end
25
25
  end
26
26
 
@@ -78,13 +78,13 @@ module Seahorse
78
78
 
79
79
  def extract_status_code(response)
80
80
  if member = response.context.operation.output.status_code_member
81
- status_code = response.http_response.status_code
81
+ status_code = response.context.http_response.status_code
82
82
  response.data[member.member_name] = status_code
83
83
  end
84
84
  end
85
85
 
86
86
  def extract_headers(response)
87
- headers = response.http_response.headers
87
+ headers = response.context.http_response.headers
88
88
  rules = response.context.operation.output.header_members
89
89
  rules.each do |member_name, member|
90
90
  response.data[member_name] = header_value(member, headers)
@@ -125,7 +125,7 @@ module Seahorse
125
125
  def extract_body(response)
126
126
  output = response.context.operation.output
127
127
  if output.raw_payload?
128
- response.data[output.payload] = response.http_response.body
128
+ response.data[output.payload] = response.context.http_response.body
129
129
  end
130
130
  end
131
131
 
@@ -19,12 +19,6 @@ module Seahorse
19
19
  # @return [RequestContext]
20
20
  attr_reader :context
21
21
 
22
- # @return [Http::Request]
23
- attr_reader :http_request
24
-
25
- # @return [Http::Response]
26
- attr_reader :http_response
27
-
28
22
  # @return The response data. This may be `nil` if the response contains
29
23
  # an {#error}.
30
24
  attr_accessor :data
@@ -101,7 +101,7 @@ module Seahorse
101
101
  it 'is called when the response is signaled complete' do
102
102
  called = false
103
103
  handler = obj.handle_response { |response| called = true }
104
- handler.new(->(_) { Response.new.tap {|r| r.http_response.status_code = 200 } }).call(nil)
104
+ handler.new(->(_) { Response.new.tap {|r| r.context.http_response.status_code = 200 } }).call(nil)
105
105
  expect(called).to be(true)
106
106
  end
107
107
 
@@ -210,17 +210,19 @@ module Seahorse
210
210
 
211
211
  it 'populates the status code' do
212
212
  stub_request(:any, endpoint).to_return(status: 200)
213
- expect(make_request.http_response.status_code).to eq(200)
213
+ resp = make_request
214
+ expect(resp.context.http_response.status_code).to eq(200)
214
215
  end
215
216
 
216
217
  it 'populates the headers' do
217
218
  stub_request(:any, endpoint).to_return(headers: { foo: 'bar' })
218
- expect(make_request.http_response.headers['foo']).to eq('bar')
219
+ resp = make_request
220
+ expect(resp.context.http_response.headers['foo']).to eq('bar')
219
221
  end
220
222
 
221
223
  it 'populates the response body' do
222
224
  stub_request(:any, endpoint).to_return(body: 'response-body')
223
- resp_body = make_request.http_response.body
225
+ resp_body = make_request.context.http_response.body
224
226
  resp_body.rewind
225
227
  expect(resp_body.read).to eq('response-body')
226
228
  end
@@ -135,12 +135,12 @@ module Seahorse
135
135
 
136
136
  it 'counts the bytes yielded' do
137
137
  resp = request.send_request { |chunk| }
138
- expect(resp.http_response.body.size).to eq(15)
138
+ expect(resp.context.http_response.body.size).to eq(15)
139
139
  end
140
140
 
141
141
  it 'does not buffer the response chunks' do
142
142
  response = request.send_request { |chunk| }
143
- body = response.http_response.body
143
+ body = response.context.http_response.body
144
144
  expect(body.read).to eq('')
145
145
  expect(body).not_to respond_to(:truncate)
146
146
  end
@@ -57,28 +57,6 @@ module Seahorse
57
57
 
58
58
  end
59
59
 
60
- describe '#http_request' do
61
-
62
- it 'returns the context #http_request' do
63
- http_request = Http::Request.new
64
- context = RequestContext.new(http_request: http_request)
65
- resp = Response.new(context: context)
66
- expect(resp.http_request).to be(http_request)
67
- end
68
-
69
- end
70
-
71
- describe '#http_response' do
72
-
73
- it 'returns the context #http_response' do
74
- http_response = Http::Response.new
75
- context = RequestContext.new(http_response: http_response)
76
- resp = Response.new(context: context)
77
- expect(resp.http_response).to be(http_response)
78
- end
79
-
80
- end
81
-
82
60
  describe 'callbacks' do
83
61
 
84
62
  let(:http_resp) { Http::Response.new }
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.0.rc5
4
+ version: 2.0.0.rc6
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: 2014-01-30 00:00:00.000000000 Z
11
+ date: 2014-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: multi_json
@@ -113,6 +113,7 @@ files:
113
113
  - apis/RDS-2013-09-09.json
114
114
  - apis/Redshift-2012-12-01.json
115
115
  - apis/Route53-2012-12-12.json
116
+ - apis/Route53-2013-04-01.json
116
117
  - apis/S3-2006-03-01.json
117
118
  - apis/SDB-2009-04-15.json
118
119
  - apis/SES-2010-12-01.json
@@ -199,6 +200,8 @@ files:
199
200
  - apis/source/redshift-2012-12-01.waiters.json
200
201
  - apis/source/route53-2012-12-12.json
201
202
  - apis/source/route53-2012-12-12.paginators.json
203
+ - apis/source/route53-2013-04-01.json
204
+ - apis/source/route53-2013-04-01.paginators.json
202
205
  - apis/source/s3-2006-03-01.json
203
206
  - apis/source/s3-2006-03-01.paginators.json
204
207
  - apis/source/s3-2006-03-01.waiters.json