lib/comic_vine/api/response.rb
module ComicVine
class Api
class Response
attr_reader :raw_response, :status, :headers, :body, :error, :limit,
:offset, :number_of_page_results, :number_of_total_results,
:status_code, :results, :version
def initialize(status:, headers:, body:)
@status = status
@headers = headers
@body = body
parse_body
end
private
def parse_body
data = JSON.parse(body)
methods = %w[error limit offset number_of_page_results
number_of_total_results status_code results version]
methods.each do |method_name|
instance_variable_set(:"@#{method_name}", data[method_name])
end
rescue
nil
end
end
end
end