Class: Currentable::Middleware::Rails::Cleaner

Inherits:
Object
  • Object
show all
Defined in:
lib/currentable/middleware/rails/cleaner.rb

Overview

Rails Middleware

Instance Method Summary collapse

Constructor Details

#initialize(app) ⇒ Cleaner

Returns a new instance of Cleaner.



14
15
16
# File 'lib/currentable/middleware/rails/cleaner.rb', line 14

def initialize(app)
  @app = app
end

Instance Method Details

#call(env) ⇒ Object



20
21
22
23
24
25
26
27
# File 'lib/currentable/middleware/rails/cleaner.rb', line 20

def call(env)
  response = @app.call(env)
  returned = response << Rack::BodyProxy.new(response.pop) do
    Currentable::Cleaner.clean_all
  end
ensure
  Currentable::Cleaner.clean_all unless returned
end