Methods
Public Class methods
[ show source ]
# File lib/glue/cache/og.rb, line 19
19: def initialize(cache_name, keepalive = nil)
20: @cache_name = cache_name
21: @keepalive = keepalive
22: end
Public Instance methods
[ show source ]
# File lib/glue/cache/og.rb, line 36
36: def [](k)
37: s = OgCached.find_by_unique_id_and_cache_name(k.to_s, @cache_name)
38: decode(s.content) if s
39: end
[ show source ]
# File lib/glue/cache/og.rb, line 24
24: def []=(k,v)
25: unless s = OgCached.find_by_unique_id_and_cache_name(k.to_s, @cache_name)
26: s = OgCached.new
27: s.cache_name = @cache_name
28: s.expires = Time.now + @keepalive if @keepalive
29: s.unique_id = k.to_s
30: end
31: #s.content = v.to_yaml
32: s.content = encode(v)
33: s.insert
34: end
[ show source ]
# File lib/glue/cache/og.rb, line 45
45: def all
46: OgCached.find_by_cache_name(@cache_name)
47: end
[ show source ]
# File lib/glue/cache/og.rb, line 41
41: def gc!
42: OgCached.find(:condition => ["expires < ? AND cache_name = ?", Time.now, @cache_name]).each {|s| s.delete }
43: end