Files
daydaytalk-fwutils/target/cache.lua
2026-01-08 21:58:41 +08:00

41 lines
897 B
Lua

local M = {}
local localstorage = require("localstorage")
local fw = require("fastweb")
local cjson = require("cjson")
M.start = function(dirpath)
local storage = localstorage.new()
fw.set_ptr("localstorage_cache",storage:self())
if storage:open(dirpath) == false then
return false,storage:last_error()
end
return true
end
M.close = function()
localstorage.new(localstorage_cache):close()
end
M.get = function(key)
return localstorage.new(localstorage_cache):read(key)
end
M.get_json = function(key)
local value = M.get(key)
if value then
return cjson.decode(value)
end
return nil
end
M.set = function(key,value)
localstorage.new(localstorage_cache):write(key,value)
end
M.set_json = function(key,value)
M.set(key,cjson.encode(value))
end
M.del = function(key)
localstorage.new(localstorage_cache):del(key)
end
return M