class Tumblife::Response::RaiseServerError

Public Instance Methods

on_complete(env) click to toggle source
# File lib/tumblife/response/raise_server_error.rb, line 7
def on_complete(env)
  case env[:status].to_i
  when 500
    raise Tumblife::InternalServerError.new(error_message(env))
  when 503
    raise Tumblife::ServiceUnavailable.new(error_message(env))
  when 500...600
    raise Tumblife::InternalServerError.new(error_message(env))
  end
end

Private Instance Methods

error_body(body) click to toggle source
# File lib/tumblife/response/raise_server_error.rb, line 28
def error_body(body)
  if body.nil?
    nil
  elsif body['meta'] && body['meta']['msg']
    body['meta']['msg']
  end
end
error_message(env) click to toggle source
# File lib/tumblife/response/raise_server_error.rb, line 19
def error_message(env)
  [
   env[:method].to_s.upcase,
   env[:url].to_s,
   env[:status],
   error_body(env[:body])
  ].join(': ')
end