util.pluginloader: Return full file path from internal file loader on success, not...
[prosody.git] / util / xmlrpc.lua
index 8b1d56cfb4a60af32bcaf02ab4199aeaa4687e2e..29815b0d94fc3a427642475fdc2185b486de0b5c 100644 (file)
@@ -1,6 +1,6 @@
--- Prosody IM v0.3
--- Copyright (C) 2008-2009 Matthew Wild
--- Copyright (C) 2008-2009 Waqas Hussain
+-- Prosody IM
+-- Copyright (C) 2008-2010 Matthew Wild
+-- Copyright (C) 2008-2010 Waqas Hussain
 -- 
 -- This project is MIT/X11 licensed. Please see the
 -- COPYING file in the source package for more information.
@@ -14,6 +14,7 @@ local t_concat = table.concat;
 local t_insert = table.insert;
 local tostring = tostring;
 local tonumber = tonumber;
+local select = select;
 local st = require "util.stanza";
 
 module "xmlrpc"
@@ -66,6 +67,18 @@ function create_error_response(faultCode, faultString)
        return stanza;
 end
 
+function create_request(method_name, ...)
+       local stanza = st.stanza("methodCall")
+               :tag("methodName"):text(method_name):up()
+               :tag("params");
+       for i=1,select('#', ...) do
+               stanza:tag("param"):tag("value");
+               _lua_to_xmlrpc(stanza, select(i, ...));
+               stanza:up():up();
+       end
+       stanza:up():up():up();
+       return stanza;
+end
 
 local _xmlrpc_to_lua;
 local int_parse = function(stanza)