Class: Errdo::ExceptionsController

Inherits:
ActionDispatch::PublicExceptions
  • Object
show all
Defined in:
app/controllers/errdo/exceptions_controller.rb

Instance Method Summary collapse

Instance Method Details

#call(env) ⇒ Object

def initialize(public_path)

super

end



10
11
12
13
14
15
16
17
18
19
# File 'app/controllers/errdo/exceptions_controller.rb', line 10

def call(env)
  status       = env["PATH_INFO"][1..-1]
  request      = ActionDispatch::Request.new(env)
  content_type = request.formats.first
  body         = {  status: status,
                    error: Rack::Utils::HTTP_STATUS_CODES.fetch(status.to_i, Rack::Utils::HTTP_STATUS_CODES[500]) }

  Errdo::Exception.new(env) if Errdo.log404 || status.to_i != 404
  render(status, content_type, body)
end