+-- Prosody IM v0.2
+-- Copyright (C) 2008 Matthew Wild
+-- Copyright (C) 2008 Waqas Hussain
+--
+-- This program is free software; you can redistribute it and/or
+-- modify it under the terms of the GNU General Public License
+-- as published by the Free Software Foundation; either version 2
+-- of the License, or (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program; if not, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+--
+
+
local _G = _G;
local setmetatable, loadfile, pcall, rawget, rawset, io =
setmetatable, loadfile, pcall, rawget, rawset, io;
+
module "configmanager"
local parsers = {};
function load(filename, format)
format = format or filename:match("%w+$");
+
if parsers[format] and parsers[format].load then
- local f = io.open(filename);
+ local f, err = io.open(filename);
if f then
local ok, err = parsers[format].load(f:read("*a"));
f:close();
return ok, err;
end
+ return f, err;
end
+
if not format then
return nil, "no parser specified";
else
- return false, "no parser";
+ return nil, "no parser for "..(format);
end
end
end
-return _M;
\ No newline at end of file
+return _M;