diff options
author | Joshua Peek <josh@joshpeek.com> | 2008-12-28 15:31:03 -0600 |
---|---|---|
committer | Joshua Peek <josh@joshpeek.com> | 2008-12-28 15:31:03 -0600 |
commit | 5d89605c11cc54acadfdd76ccd226d38989ec600 (patch) | |
tree | 07a06d5b9584d8ae98f32781517007eafccd5fad /actionpack/lib/action_controller/dispatcher.rb | |
parent | 45dee3842d68359a189fe7c0729359bd5a905ea4 (diff) | |
download | rails-5d89605c11cc54acadfdd76ccd226d38989ec600.tar.gz rails-5d89605c11cc54acadfdd76ccd226d38989ec600.tar.bz2 rails-5d89605c11cc54acadfdd76ccd226d38989ec600.zip |
Make router and controller classes better rack citizens
Diffstat (limited to 'actionpack/lib/action_controller/dispatcher.rb')
-rw-r--r-- | actionpack/lib/action_controller/dispatcher.rb | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/actionpack/lib/action_controller/dispatcher.rb b/actionpack/lib/action_controller/dispatcher.rb index 4dc76e1b49..c4e7357b81 100644 --- a/actionpack/lib/action_controller/dispatcher.rb +++ b/actionpack/lib/action_controller/dispatcher.rb @@ -60,11 +60,10 @@ module ActionController def dispatch begin run_callbacks :before_dispatch - controller = Routing::Routes.recognize(@request) - controller.process(@request, @response).to_a + Routing::Routes.call(@env) rescue Exception => exception if controller ||= (::ApplicationController rescue Base) - controller.process_with_exception(@request, @response, exception).to_a + controller.call_with_exception(@env, exception).to_a else raise exception end @@ -83,8 +82,7 @@ module ActionController end def _call(env) - @request = Request.new(env) - @response = Response.new + @env = env dispatch end @@ -110,8 +108,7 @@ module ActionController def checkin_connections # Don't return connection (and peform implicit rollback) if this request is a part of integration test - # TODO: This callback should have direct access to env - return if @request.key?("rack.test") + return if @env.key?("rack.test") ActiveRecord::Base.clear_active_connections! end end |