class MojFileUploaderApiClient::Response

Attributes

code[RW]
raw_body[RW]

Public Class Methods

new(code:, body:) click to toggle source
# File lib/mojfile_uploader_api_client/response.rb, line 5
def initialize(code:, body:)
  @code = code
  @raw_body = body
end

Public Instance Methods

body() click to toggle source
# File lib/mojfile_uploader_api_client/response.rb, line 18
def body
  @body ||= parse_body
end
error?() click to toggle source
# File lib/mojfile_uploader_api_client/response.rb, line 14
def error?
  !success?
end
success?() click to toggle source
# File lib/mojfile_uploader_api_client/response.rb, line 10
def success?
  [200, 204].include?(code)
end

Private Instance Methods

parse_body() click to toggle source
# File lib/mojfile_uploader_api_client/response.rb, line 24
def parse_body
  return if raw_body.nil? || raw_body.empty?
  JSON.parse(raw_body, symbolize_names: true)
rescue JSON::ParserError
  raise UnparsableResponseError.new('Invalid JSON response', raw_body)
end