Class: ActionView::CacheExpiry
Relationships & Source Files | |
Namespace Children | |
Classes:
| |
Inherits: | Object |
Defined in: | actionview/lib/action_view/cache_expiry.rb |
Class Method Summary
- .new(watcher:) ⇒ CacheExpiry constructor
Instance Method Summary
Constructor Details
.new(watcher:) ⇒ CacheExpiry
# File 'actionview/lib/action_view/cache_expiry.rb', line 15
def initialize(watcher:) @watched_dirs = nil @watcher_class = watcher @watcher = nil @mutex = Mutex.new end
Instance Method Details
#clear_cache
[ GitHub ]# File 'actionview/lib/action_view/cache_expiry.rb', line 39
def clear_cache ActionView::LookupContext::DetailsKey.clear end
#clear_cache_if_necessary
[ GitHub ]# File 'actionview/lib/action_view/cache_expiry.rb', line 22
def clear_cache_if_necessary @mutex.synchronize do watched_dirs = dirs_to_watch return if watched_dirs.empty? if watched_dirs != @watched_dirs @watched_dirs = watched_dirs @watcher = @watcher_class.new([], watched_dirs) do clear_cache end @watcher.execute else @watcher.execute_if_updated end end end