diff options
author | Piotr Sarnacki <drogus@gmail.com> | 2010-10-06 15:54:28 +0200 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-10-08 18:23:25 +0200 |
commit | 08f4713dba1ae013d5b3c9815cb7e33ea5533be5 (patch) | |
tree | 1f0a7828eb3a986f1f57a99c4711243b3ae83525 /railties/lib/rails/application | |
parent | f1f2fb8ae733c4602ba2ec2d7ea830a85c64b4d1 (diff) | |
download | rails-08f4713dba1ae013d5b3c9815cb7e33ea5533be5.tar.gz rails-08f4713dba1ae013d5b3c9815cb7e33ea5533be5.tar.bz2 rails-08f4713dba1ae013d5b3c9815cb7e33ea5533be5.zip |
Refactored routes reloading to use RouteSet#append instead keeping block in Engine
Signed-off-by: José Valim <jose.valim@gmail.com>
Diffstat (limited to 'railties/lib/rails/application')
-rw-r--r-- | railties/lib/rails/application/routes_reloader.rb | 24 |
1 files changed, 6 insertions, 18 deletions
diff --git a/railties/lib/rails/application/routes_reloader.rb b/railties/lib/rails/application/routes_reloader.rb index 6da903c1ac..1d1f5e1b06 100644 --- a/railties/lib/rails/application/routes_reloader.rb +++ b/railties/lib/rails/application/routes_reloader.rb @@ -1,17 +1,15 @@ module Rails class Application class RoutesReloader < ::ActiveSupport::FileUpdateChecker + attr_reader :route_sets + def initialize super([]) { reload! } - end - - def blocks - @blocks ||= {} + @route_sets = [] end def reload! clear! - load_blocks load_paths finalize! ensure @@ -21,37 +19,27 @@ module Rails protected def clear! - routers.each do |routes| + route_sets.each do |routes| routes.disable_clear_and_finalize = true routes.clear! end end - def load_blocks - blocks.each do |routes, block| - routes.draw(&block) if block - end - end - def load_paths paths.each { |path| load(path) } end def finalize! - routers.each do |routes| + route_sets.each do |routes| ActiveSupport.on_load(:action_controller) { routes.finalize! } end end def revert - routers.each do |routes| + route_sets.each do |routes| routes.disable_clear_and_finalize = false end end - - def routers - blocks.keys - end end end end |