Merge 0.10->trunk
[prosody.git] / plugins / mod_storage_internal.lua
1 local datamanager = require "core.storagemanager".olddm;
2
3 local host = module.host;
4
5 local driver = {};
6 local driver_mt = { __index = driver };
7
8 function driver:open(store, typ)
9         if typ and typ ~= "keyval" then
10                 return nil, "unsupported-store";
11         end
12         return setmetatable({ store = store, type = typ }, driver_mt);
13 end
14 function driver:get(user)
15         return datamanager.load(user, host, self.store);
16 end
17
18 function driver:set(user, data)
19         return datamanager.store(user, host, self.store, data);
20 end
21
22 function driver:stores(username)
23         return datamanager.stores(username, host);
24 end
25
26 function driver:users()
27         return datamanager.users(host, self.store, self.type);
28 end
29
30 function driver:purge(user)
31         return datamanager.purge(user, host);
32 end
33
34 module:provides("storage", driver);