Class: Rails::API::PublicExceptions

Inherits:
Object
  • Object
show all
Defined in:
lib/rails-api/public_exceptions.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(public_path) ⇒ PublicExceptions

Returns a new instance of PublicExceptions


6
7
8
# File 'lib/rails-api/public_exceptions.rb', line 6

def initialize(public_path)
  @public_path = public_path
end

Instance Attribute Details

#public_pathObject

Returns the value of attribute public_path


4
5
6
# File 'lib/rails-api/public_exceptions.rb', line 4

def public_path
  @public_path
end

Instance Method Details

#call(env) ⇒ Object


10
11
12
13
14
15
16
17
18
# File 'lib/rails-api/public_exceptions.rb', line 10

def call(env)
  exception    = env["action_dispatch.exception"]
  status       = env["PATH_INFO"][1..-1]
  request      = ActionDispatch::Request.new(env)
  content_type = request.formats.first
  body         = { :status => status, :error => exception.message }

  render(status, content_type, body)
end