module Sequel::Plugins::StaticCacheCache::ClassMethods
Public Instance Methods
dump_static_cache_cache()
click to toggle source
Dump the in-memory cached rows to the cache file.
# File lib/sequel/plugins/static_cache_cache.rb 28 def dump_static_cache_cache 29 static_cache_cache = {} 30 @static_cache_cache.sort.each do |k, v| 31 static_cache_cache[k] = v 32 end 33 File.open(@static_cache_cache_file, 'wb'){|f| f.write(Marshal.dump(static_cache_cache))} 34 nil 35 end
Private Instance Methods
load_static_cache_rows()
click to toggle source
Load the rows for the model from the cache if available. If not available, load the rows from the database, and then update the cache with the raw rows.
# File lib/sequel/plugins/static_cache_cache.rb 44 def load_static_cache_rows 45 if rows = Sequel.synchronize{@static_cache_cache[name]} 46 rows.map{|row| call(row)}.freeze 47 else 48 rows = dataset.all.freeze 49 raw_rows = rows.map(&:values) 50 Sequel.synchronize{@static_cache_cache[name] = raw_rows} 51 rows 52 end 53 end