Class: Tina4::APIResponse

Inherits:
Object
  • Object
show all
Defined in:
lib/tina4/api.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(status:, body:, headers:, error: nil) ⇒ APIResponse

Returns a new instance of APIResponse.



131
132
133
134
135
136
# File 'lib/tina4/api.rb', line 131

def initialize(status:, body:, headers:, error: nil)
  @status = status
  @body = body
  @headers = headers
  @error = error
end

Instance Attribute Details

#bodyObject (readonly)

Returns the value of attribute body.



129
130
131
# File 'lib/tina4/api.rb', line 129

def body
  @body
end

#errorObject (readonly)

Returns the value of attribute error.



129
130
131
# File 'lib/tina4/api.rb', line 129

def error
  @error
end

#headersObject (readonly)

Returns the value of attribute headers.



129
130
131
# File 'lib/tina4/api.rb', line 129

def headers
  @headers
end

#statusObject (readonly)

Returns the value of attribute status.



129
130
131
# File 'lib/tina4/api.rb', line 129

def status
  @status
end

Instance Method Details

#jsonObject



142
143
144
145
146
# File 'lib/tina4/api.rb', line 142

def json
  @json ||= JSON.parse(@body)
rescue JSON::ParserError
  {}
end

#success?Boolean

Returns:

  • (Boolean)


138
139
140
# File 'lib/tina4/api.rb', line 138

def success?
  @status >= 200 && @status < 300
end

#to_sObject



148
149
150
# File 'lib/tina4/api.rb', line 148

def to_s
  "APIResponse(status=#{@status})"
end