Added option core.data_path
authorWaqas Hussain <waqas20@gmail.com>
Fri, 28 Nov 2008 15:17:20 +0000 (20:17 +0500)
committerWaqas Hussain <waqas20@gmail.com>
Fri, 28 Nov 2008 15:17:20 +0000 (20:17 +0500)
main.lua
util/datamanager.lua

index 3ea97ca4df0cc0dbe98a69fb91e8c6578f940a57..7e41012c5e089e159eb934254d803fc415e0e928 100644 (file)
--- a/main.lua
+++ b/main.lua
@@ -24,6 +24,8 @@ do
        end
 end
 
+require "util.datamanager".set_data_path(config.get("*", "core", "data_path") or "data");
+
 local server = require "net.server"
 
 require "util.dependencies"
index 80b357331c2e37fbcf1c8c36ba17cd5ef0edbcc7..f25fffb36effbfed38215f8c4afc6b6f67aa2162 100644 (file)
@@ -17,6 +17,8 @@ local indent = function(f, i)
        end
 end
 
+local data_path = "data";
+
 module "datamanager"
 
 
@@ -70,14 +72,18 @@ end
 
 ------- API -------------
 
+function set_data_path(path)
+       data_path = path;
+end
+
 function getpath(username, host, datastore, ext)
        ext = ext or "dat";
        if username then
-               return format("data/%s/%s/%s.%s", encode(host), datastore, encode(username), ext);
+               return format("%s/%s/%s/%s.%s", data_path, encode(host), datastore, encode(username), ext);
        elseif host then
-               return format("data/%s/%s.%s", encode(host), datastore, ext);
+               return format("%s/%s/%s.%s", data_path, encode(host), datastore, ext);
        else
-               return format("data/%s.%s", datastore, ext);
+               return format("%s/%s.%s", data_path, datastore, ext);
        end
 end