Sha256: d88fa7c10f24080619079006cc3501e96244547ff7eff590eca8fc4d94045328
Contents?: true
Size: 981 Bytes
Versions: 2
Compression:
Stored size: 981 Bytes
Contents
module CacheAdvance class CacheSet attr_reader :named_caches attr_reader :qualifiers attr_reader :plugins def initialize(store) @store, @named_caches, @qualifiers, @plugins = store, {}, {}, [] end def setup_complete end def apply(cache_name, request, options, &block) cache_name = cache_name.to_sym if CacheAdvance.caching_enabled named_cache = @named_caches[cache_name] raise UnknownNamedCacheException if named_cache.nil? named_cache.value_for(request, options, &block) else block.call end end def add_qualifier(name, proc) @qualifiers[name] = proc end def add_plugin(plugin) @plugins << plugin end def add_named_cache(name, options) name = name.to_sym @named_caches[name] = NamedCache.new(name, options, self, @store) end def define_caches yield Mapper.new(self) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
cache_advance-2.0.1 | lib/cache_advance/cache_set.rb |
cache_advance-2.0.0 | lib/cache_advance/cache_set.rb |