]> git.donarmstrong.com Git - dsa-puppet.git/blob - 3rdparty/modules/aviator/feature/aviator/core/response.rb
add aimonb/aviator to 3rdparty
[dsa-puppet.git] / 3rdparty / modules / aviator / feature / aviator / core / response.rb
1 module Aviator
2
3   class Response
4     extend Forwardable
5
6     def_delegators :@response, :headers, :status
7
8     attr_reader :request
9
10     def initialize(response, request)
11       @response = response
12       @request  = request
13     end
14
15
16     def body
17       if raw_body.length > 0
18         if Aviator::Compatibility::RUBY_1_8_MODE
19           clean_body = raw_body.gsub(/\\ /, ' ')
20         else
21           clean_body = raw_body
22         end
23
24         Hashish.new(JSON.parse(clean_body))
25       else
26         Hashish.new({})
27       end
28     end
29
30
31     private
32
33     def raw_body
34       @response.body
35     end
36
37   end
38
39 end