Class: Foto::Requests::Response

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

Defined Under Namespace

Classes: InvalidResponse

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(http_response) ⇒ Response

Returns a new instance of Response.



8
9
10
11
# File 'lib/foto/requests/response.rb', line 8

def initialize(http_response)
  @body = http_response.body
  @code = http_response.code
end

Instance Attribute Details

#bodyObject (readonly)

Returns the value of attribute body.



4
5
6
# File 'lib/foto/requests/response.rb', line 4

def body
  @body
end

#codeObject (readonly)

Returns the value of attribute code.



4
5
6
# File 'lib/foto/requests/response.rb', line 4

def code
  @code
end

Instance Method Details

#messageObject



13
14
15
16
17
18
# File 'lib/foto/requests/response.rb', line 13

def message
  doc = Nokogiri::HTML(body)
  doc.xpath('/html/body/p').first.content
rescue NoMethodError => e
  raise InvalidResponse, "The response from FOTO could not be parsed.\nHTTP #{code} : #{body}"
end

#successful?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/foto/requests/response.rb', line 20

def successful?
  code == '200'
end