module Fortnox::API::RequestHandling

Private Instance Methods

execute() { |class| ... } click to toggle source
# File lib/fortnox/api/request_handling.rb, line 28
def execute
  response = yield(self.class)
  validate_and_parse response
end
raise_api_error(error, response) click to toggle source
# File lib/fortnox/api/request_handling.rb, line 8
def raise_api_error(error, response)
  message = (error['message'] || error['Message'] || 'Okänt fel')

  message += "\n\n#{response.request.inspect}" if Fortnox::API.debugging

  raise Fortnox::API::RemoteServerError, message
end
validate_and_parse(response) click to toggle source
# File lib/fortnox/api/request_handling.rb, line 23
def validate_and_parse(response)
  validate_response(response)
  response.parsed_response
end
validate_response(response) click to toggle source
# File lib/fortnox/api/request_handling.rb, line 16
def validate_response(response)
  return if response.code == 200

  api_error = response.parsed_response['ErrorInformation']
  raise_api_error(api_error, response) if api_error
end