class BacklogKit::Response::RaiseError

Constants

CODE_ERRORS

Public Instance Methods

on_complete(env) click to toggle source
# File lib/backlog_kit/response/raise_error.rb, line 20
def on_complete(env)
  super
  raise BacklogKit::Error, error_message unless success?
end

Private Instance Methods

error_message() click to toggle source
# File lib/backlog_kit/response/raise_error.rb, line 31
def error_message
  messages = []
  json_body['errors'].each.with_index(1) do |error, index|
    klass = CODE_ERRORS[error['code']] || BacklogKit::UnexpectedError
    messages.push(klass.build_error_message(error, index))
  end
  messages.join(', ')
end
json_body() click to toggle source
# File lib/backlog_kit/response/raise_error.rb, line 40
def json_body
  @json_body ||= JSON.parse(body)
end
success?() click to toggle source
# File lib/backlog_kit/response/raise_error.rb, line 27
def success?
  no_content? || !json? || json_body.is_a?(Array) || json_body['errors'].nil?
end