class Notificate::Rails::Rack

Public Class Methods

new(app) click to toggle source
# File lib/notificate-rails/rack.rb, line 3
def initialize(app)
  @app = app
end

Public Instance Methods

call(env) click to toggle source
# File lib/notificate-rails/rack.rb, line 7
def call(env)
  @env = env

  begin
    result = @app.call(env)
  rescue ::Exception => ex
    @env['notificate.notified'] = ::Notificate::ExceptionCatcher.notify(ex, rack_data)

    raise ex
  end

  result
end
rack_data() click to toggle source
# File lib/notificate-rails/rack.rb, line 21
def rack_data
  {
    environment: ::Notificate::Rails.options.environment,
    root:        ::Notificate::Rails.options.project_root
  }
end