autosave()
click to toggle source
delete(key)
click to toggle source
def delete(key)
@monitor.synchronize do
@storage.load
val = @storage.delete(key)
@storage.save
val
end
end
fetch(key, defval)
click to toggle source
def fetch(key, defval)
@monitor.synchronize do
@storage.load
@storage.fetch(key, defval)
end
end
get(key)
click to toggle source
def get(key)
@monitor.synchronize do
@storage.load
@storage.get(key)
end
end
implementation()
click to toggle source
def implementation
@storage
end
load()
click to toggle source
def load
@monitor.synchronize do
@storage.load
end
end
persistent()
click to toggle source
persistent_always?()
click to toggle source
def persistent_always?
true
end
put(key, value)
click to toggle source
def put(key, value)
@monitor.synchronize do
@storage.load
@storage.put(key, value)
@storage.save
value
end
end
save()
click to toggle source
def save
@monitor.synchronize do
@storage.save
end
end
synchronized?()
click to toggle source
def synchronized?
true
end
update(key, &block)
click to toggle source
def update(key, &block)
@monitor.synchronize do
@storage.load
v = block.call(@storage.get(key))
@storage.put(key, v)
@storage.save
v
end
end