Module: CacheKeeper::CachedMethod::Refreshable

Included in:
CacheKeeper::CachedMethod
Defined in:
app/models/cache_keeper/cached_method/refreshable.rb

Instance Method Summary collapse

Instance Method Details

#autorefresh(target) ⇒ Object



12
13
14
15
16
# File 'app/models/cache_keeper/cached_method/refreshable.rb', line 12

def autorefresh(target)
  return unless stale?(target)

  refresh_later target
end

#refresh(target) ⇒ Object



2
3
4
5
6
# File 'app/models/cache_keeper/cached_method/refreshable.rb', line 2

def refresh(target)
  Rails.cache.fetch(cache_key(target), expires_in: expires_in) do
    target.send alias_for_original_method
  end
end

#refresh_later(target) ⇒ Object



8
9
10
# File 'app/models/cache_keeper/cached_method/refreshable.rb', line 8

def refresh_later(target)
  CacheKeeper::RefreshJob.perform_later self, target
end