X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=plugins%2Fmod_storage_internal.lua;h=ade4f0a656ec7b12ee15076c4823fe48be382b2c;hb=7fac02237b6fdc0dad24fa63df3e1e8bdcce096d;hp=75f6ec4ecd17b511cd1cf92f97b1783f079c6f6d;hpb=d6babde5a292f79e524da01a0a575688bc99cbda;p=prosody.git diff --git a/plugins/mod_storage_internal.lua b/plugins/mod_storage_internal.lua index 75f6ec4e..ade4f0a6 100644 --- a/plugins/mod_storage_internal.lua +++ b/plugins/mod_storage_internal.lua @@ -5,8 +5,11 @@ local host = module.host; local driver = {}; local driver_mt = { __index = driver }; -function driver:open(store) - return setmetatable({ store = store }, driver_mt); +function driver:open(store, typ) + if typ and typ ~= "keyval" then + return nil, "unsupported-store"; + end + return setmetatable({ store = store, type = typ }, driver_mt); end function driver:get(user) return datamanager.load(user, host, self.store); @@ -16,8 +19,12 @@ function driver:set(user, data) return datamanager.store(user, host, self.store, data); end -function driver:list_stores(username) - return datamanager.list_stores(username, host); +function driver:stores(username) + return datamanager.stores(username, host); +end + +function driver:users() + return datamanager.users(host, self.store, self.type); end function driver:purge(user)