aboutsummaryrefslogtreecommitdiffstats
path: root/railties
diff options
context:
space:
mode:
Diffstat (limited to 'railties')
-rw-r--r--railties/lib/rails/application.rb6
-rw-r--r--railties/lib/rails/console_app.rb2
-rw-r--r--railties/lib/rails/initializer.rb2
-rw-r--r--railties/test/console_app_test.rb6
-rw-r--r--railties/test/fcgi_dispatcher_test.rb6
5 files changed, 19 insertions, 3 deletions
diff --git a/railties/lib/rails/application.rb b/railties/lib/rails/application.rb
index d3057aaa11..14336d90c3 100644
--- a/railties/lib/rails/application.rb
+++ b/railties/lib/rails/application.rb
@@ -1,10 +1,14 @@
module Rails
class Application
+ attr_accessor :middleware, :routes
+
def initialize
- @app = ActionController::Dispatcher.new
+ @middleware = ActionDispatch::MiddlewareStack.new
+ @routes = ActionController::Routing::Routes
end
def call(env)
+ @app ||= middleware.build(@routes)
@app.call(env)
end
end
diff --git a/railties/lib/rails/console_app.rb b/railties/lib/rails/console_app.rb
index fc84a50e91..1ad62e5058 100644
--- a/railties/lib/rails/console_app.rb
+++ b/railties/lib/rails/console_app.rb
@@ -27,6 +27,6 @@ end
def reload!
puts "Reloading..."
ActionDispatch::Callbacks.new(lambda {}, true)
- ActionController::Dispatcher.router.reload
+ ActionController::Routing::Routes.reload
true
end
diff --git a/railties/lib/rails/initializer.rb b/railties/lib/rails/initializer.rb
index 399ce26618..f6aca082e8 100644
--- a/railties/lib/rails/initializer.rb
+++ b/railties/lib/rails/initializer.rb
@@ -608,8 +608,8 @@ Run `rake gems:install` to install the missing gems.
Initializer.default.add :build_application do
if configuration.frameworks.include?(:action_controller)
- ActionController::Dispatcher.middleware = configuration.middleware
Rails.application = Rails::Application.new
+ Rails.application.middleware = configuration.middleware
end
end
end
diff --git a/railties/test/console_app_test.rb b/railties/test/console_app_test.rb
index 7d697d4d05..1437e6d885 100644
--- a/railties/test/console_app_test.rb
+++ b/railties/test/console_app_test.rb
@@ -5,6 +5,12 @@ require 'action_controller' # console_app uses 'action_controller/integration'
require 'rails/dispatcher'
require 'rails/console_app'
+module Rails
+ def self.application
+ ActionController::Routing::Routes
+ end
+end
+
# console_app sets Test::Unit.run to work around the at_exit hook in test/unit, which kills IRB
if Test::Unit.respond_to?(:run=)
Test::Unit.run = false
diff --git a/railties/test/fcgi_dispatcher_test.rb b/railties/test/fcgi_dispatcher_test.rb
index 1e704b862f..4d77a321a0 100644
--- a/railties/test/fcgi_dispatcher_test.rb
+++ b/railties/test/fcgi_dispatcher_test.rb
@@ -5,6 +5,12 @@ uses_gem "fcgi", "0.8.7" do
require 'action_controller'
require 'rails/fcgi_handler'
+module Rails
+ def self.application
+ ActionController::Routing::Routes
+ end
+end
+
class RailsFCGIHandlerTest < Test::Unit::TestCase
def setup
@log = StringIO.new