class GogoKit::Middleware::RaiseError

Public Class Methods

new(app) click to toggle source
Calls superclass method
# File lib/gogokit/middleware/raise_error.rb, line 7
def initialize(app)
  super app
end

Public Instance Methods

call(request_env) click to toggle source
# File lib/gogokit/middleware/raise_error.rb, line 11
def call(request_env)
  @app.call(request_env).on_complete do |response_env|
    if response_env[:status].to_i >= 400
      api_error = GogoKit::ApiError.new
      api_error.response = response_env
      raise api_error, error_message(response_env)
    end
  end
end
error_message(response_env) click to toggle source
# File lib/gogokit/middleware/raise_error.rb, line 21
def error_message(response_env)
  "#{response_env[:method].to_s.upcase} #{response_env[:url]}:" \
  " #{response_env[:status]}}"
end