Merge 0.9->trunk
[prosody.git] / core / storagemanager.lua
index 97ff084f7267f0ff109b4963707a44ff1e9d7447..36a671beb68a70ae5abaa069e8bec7df4e42909b 100644 (file)
@@ -96,7 +96,6 @@ end
 
 function purge(user, host)
        local storage = config.get(host, "storage");
-       local driver_name;
        if type(storage) == "table" then
                -- multiple storage backends in use that we need to purge
                local purged = {};
@@ -119,6 +118,13 @@ end
 function datamanager.store(username, host, datastore, data)
        return open(host, datastore):set(username, data);
 end
+function datamanager.users(host, datastore, typ)
+       local driver = open(host, datastore, typ);
+       if not driver.users then
+               return function() log("warn", "storage driver %s does not support listing users", driver.name) end
+       end
+       return driver:users();
+end
 function datamanager.stores(username, host, typ)
        return get_driver(host):stores(username, typ);
 end