diff options
author | Nicholas Seckar <nseckar@gmail.com> | 2006-02-02 05:41:00 +0000 |
---|---|---|
committer | Nicholas Seckar <nseckar@gmail.com> | 2006-02-02 05:41:00 +0000 |
commit | 1bce58b31289362d62863ad0600b924858a11e34 (patch) | |
tree | a99ebc764c8e91e04b490bd6145a5201341e50c3 /actionpack | |
parent | 4bb6f863b42814707c0df6d972c931c6925b3de8 (diff) | |
download | rails-1bce58b31289362d62863ad0600b924858a11e34.tar.gz rails-1bce58b31289362d62863ad0600b924858a11e34.tar.bz2 rails-1bce58b31289362d62863ad0600b924858a11e34.zip |
Add Reloadable::OnlySubclasses which handles the common case where a base class should not be reloaded, but its subclasses should be.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3521 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack')
-rwxr-xr-x | actionpack/lib/action_controller/base.rb | 11 | ||||
-rw-r--r-- | actionpack/lib/action_controller/caching.rb | 6 |
2 files changed, 5 insertions, 12 deletions
diff --git a/actionpack/lib/action_controller/base.rb b/actionpack/lib/action_controller/base.rb index 862d2e5efd..0b4a8ca3c5 100755 --- a/actionpack/lib/action_controller/base.rb +++ b/actionpack/lib/action_controller/base.rb @@ -224,14 +224,9 @@ module ActionController #:nodoc: # FCGI.each_cgi{ |cgi| WeblogController.process_cgi(cgi) } class Base DEFAULT_RENDER_STATUS_CODE = "200 OK" - - # Action Controller subclasses should be reloaded by the dispatcher in Rails - # when Dependencies.mechanism = :load. - def self.inherited(child) #:nodoc: - child.send :include, Reloadable - super - end - + + include Reloadable::OnlySubclasses + # Determines whether the view has access to controller internals @request, @response, @session, and @template. # By default, it does. @@view_controller_internals = true diff --git a/actionpack/lib/action_controller/caching.rb b/actionpack/lib/action_controller/caching.rb index e62fe11a19..5e6fe3948b 100644 --- a/actionpack/lib/action_controller/caching.rb +++ b/actionpack/lib/action_controller/caching.rb @@ -523,10 +523,8 @@ module ActionController #:nodoc: # ActiveRecord::Observer will mark this class as reloadable even though it should not be. # However, subclasses of ActionController::Caching::Sweeper should be Reloadable - def self.reloadable? #:nodoc: - self != Sweeper - end - + include Reloadable::OnlySubclasses + def before(controller) self.controller = controller callback(:before) |