Class: Elmas::Response
- Inherits:
-
Object
- Object
- Elmas::Response
- Defined in:
- lib/elmas/response.rb
Direct Known Subclasses
Constant Summary collapse
- SUCCESS_CODES =
[ 201, 202, 203, 204, 301, 302, 303, 304 ].freeze
- ERROR_CODES =
[ 400, 401, 402, 403, 404, 500, 501, 502, 503 ].freeze
- UNAUTHORIZED_CODES =
[ 400, 401, 402, 403 ].freeze
Instance Attribute Summary collapse
- #body ⇒ Object
-
#response ⇒ Object
Returns the value of attribute response.
-
#status_code ⇒ Object
Returns the value of attribute status_code.
Instance Method Summary collapse
- #error_message ⇒ Object
- #fail? ⇒ Boolean
-
#initialize(response) ⇒ Response
constructor
A new instance of Response.
- #log_error ⇒ Object
- #parsed ⇒ Object
- #result ⇒ Object
- #results ⇒ Object
- #status ⇒ Object
- #success? ⇒ Boolean
Constructor Details
#initialize(response) ⇒ Response
Returns a new instance of Response.
11 12 13 14 |
# File 'lib/elmas/response.rb', line 11 def initialize(response) @response = response raise_and_log_error if fail? end |
Instance Attribute Details
#body ⇒ Object
20 21 22 |
# File 'lib/elmas/response.rb', line 20 def body @response.body end |
#response ⇒ Object
Returns the value of attribute response.
8 9 10 |
# File 'lib/elmas/response.rb', line 8 def response @response end |
#status_code ⇒ Object
Returns the value of attribute status_code.
8 9 10 |
# File 'lib/elmas/response.rb', line 8 def status_code @status_code end |
Instance Method Details
#error_message ⇒ Object
44 45 46 |
# File 'lib/elmas/response.rb', line 44 def parsed. end |
#fail? ⇒ Boolean
40 41 42 |
# File 'lib/elmas/response.rb', line 40 def fail? ERROR_CODES.include? status end |
#log_error ⇒ Object
48 49 50 51 |
# File 'lib/elmas/response.rb', line 48 def log_error = "An error occured, the response had status #{status}. The content of the error was: #{}" Elmas.error() end |
#result ⇒ Object
28 29 30 |
# File 'lib/elmas/response.rb', line 28 def result Elmas::ResultSet.new(parsed) end |
#results ⇒ Object
32 33 34 |
# File 'lib/elmas/response.rb', line 32 def results Elmas::ResultSet.new(parsed) end |
#status ⇒ Object
36 37 38 |
# File 'lib/elmas/response.rb', line 36 def status @response.status end |
#success? ⇒ Boolean
16 17 18 |
# File 'lib/elmas/response.rb', line 16 def success? @response.success? || SUCCESS_CODES.include?(status) end |