class Rack::Cache::MetaStore::Heap
Concrete MetaStore implementation that uses a simple Hash to store request/response pairs on the heap.
Public Class Methods
new(hash={}, options = {})
click to toggle source
# File lib/rack/cache/meta_store.rb, line 201 def initialize(hash={}, options = {}) @hash = hash @options = options end
resolve(uri, options = {})
click to toggle source
# File lib/rack/cache/meta_store.rb, line 227 def self.resolve(uri, options = {}) new({}, options) end
Public Instance Methods
purge(key)
click to toggle source
# File lib/rack/cache/meta_store.rb, line 218 def purge(key) @hash.delete(key) nil end
read(key)
click to toggle source
# File lib/rack/cache/meta_store.rb, line 206 def read(key) if data = @hash[key] Marshal.load(data) else [] end end
to_hash()
click to toggle source
# File lib/rack/cache/meta_store.rb, line 223 def to_hash @hash end
write(key, entries, ttl = nil)
click to toggle source
# File lib/rack/cache/meta_store.rb, line 214 def write(key, entries, ttl = nil) @hash[key] = Marshal.dump(entries) end