Class: Ilovepdf::Response

Inherits:
Object
  • Object
show all
Defined in:
lib/ilovepdf/response.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(response) ⇒ Response

Returns a new instance of Response.

Raises:

  • (ArgumentError)


5
6
7
8
# File 'lib/ilovepdf/response.rb', line 5

def initialize(response)
  raise ArgumentError.new('Argument must be of type \'RestClient::Response\'') unless response.is_a? ::RestClient::Response
  self.response = response
end

Instance Attribute Details

#responseObject

Returns the value of attribute response.



3
4
5
# File 'lib/ilovepdf/response.rb', line 3

def response
  @response
end

Instance Method Details

#bodyObject



14
15
16
17
18
19
20
21
22
# File 'lib/ilovepdf/response.rb', line 14

def body
  return @body if @body
  is_json = (/application\/json/i =~ self.response.headers[:content_type]) != nil
  if is_json
    @body ||= JSON.parse(self.response.body)
  else
    @body = self.response.body
  end
end

#codeObject



28
29
30
# File 'lib/ilovepdf/response.rb', line 28

def code
  self.response.code
end

#headersObject



10
11
12
# File 'lib/ilovepdf/response.rb', line 10

def headers
  self.response.headers
end

#raw_bodyObject



24
25
26
# File 'lib/ilovepdf/response.rb', line 24

def raw_body
  self.response.body
end

#success?Boolean

Returns:

  • (Boolean)


32
33
34
# File 'lib/ilovepdf/response.rb', line 32

def success?
  self.response.code.to_s[0] == '2'
end