vlc | branch: master | Rob Jonson <[email protected]> | Wed Sep 28 13:05:15 2011 +0100| [35cb1ed0089d0f85464ee8f9c2d17352971bad3d] | committer: Jean-Baptiste Kempf
generate properly escaped json Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=35cb1ed0089d0f85464ee8f9c2d17352971bad3d --- share/lua/http/requests/browse.json | 5 +-- share/lua/http/requests/playlist.json | 4 +-- share/lua/http/requests/status.json | 4 +-- share/lua/intf/modules/httprequests.lua | 43 +++---------------------------- 4 files changed, 8 insertions(+), 48 deletions(-) diff --git a/share/lua/http/requests/browse.json b/share/lua/http/requests/browse.json index da9fc9a..39fb9b5 100644 --- a/share/lua/http/requests/browse.json +++ b/share/lua/http/requests/browse.json @@ -33,8 +33,7 @@ httprequests.processcommands() local browseTable=httprequests.getbrowsetable() -print('{') -httprequests.printTableAsJson(browseTable,0) -print('}') +httprequests.printTableAsJson(browseTable) + ?> diff --git a/share/lua/http/requests/playlist.json b/share/lua/http/requests/playlist.json index f99866e..7f531f3 100644 --- a/share/lua/http/requests/playlist.json +++ b/share/lua/http/requests/playlist.json @@ -31,8 +31,6 @@ require "httprequests" httprequests.processcommands() -print('{') -httprequests.printTableAsJson(httprequests.playlisttable(),0) -print('}') +httprequests.printTableAsJson(httprequests.playlisttable()) ?> diff --git a/share/lua/http/requests/status.json b/share/lua/http/requests/status.json index f98ed22..d446158 100644 --- a/share/lua/http/requests/status.json +++ b/share/lua/http/requests/status.json @@ -33,8 +33,6 @@ httprequests.processcommands() local statusTable=httprequests.getstatus(true) -print('{') -httprequests.printTableAsJson(statusTable,0) -print('}') +httprequests.printTableAsJson(statusTable) ?> diff --git a/share/lua/intf/modules/httprequests.lua b/share/lua/intf/modules/httprequests.lua index cd86113..9e549c4 100644 --- a/share/lua/intf/modules/httprequests.lua +++ b/share/lua/intf/modules/httprequests.lua @@ -24,6 +24,7 @@ module("httprequests",package.seeall) +local dkjson = require ("dkjson") @@ -195,47 +196,11 @@ function xmlString(s) end end -local printJsonKeyValue = function (k,v,indent) - print("\n") - for i=1,indent do print(" ") end - if (k) then - print("\""..k.."\":") - end - if (type(v)=="number") then - print(xmlString(v)) - elseif (type(v)=="table") then - if (v._array==NULL) then - print("{\n") - printTableAsJson(v,indent+2) - print("\n}") - else - print("[") - printArrayAsJson(v._array,indent+2) - print("\n]") - end - else - print("\""..xmlString(v).."\"") - end -end - -printArrayAsJson = function(array,indent) - first=true - for i,v in ipairs(array) do - if not first then print(",") end - printJsonKeyValue(NULL,v,indent) - first=false - end -end - -printTableAsJson = function (dict,indent) - first=true - for k,v in pairs(dict) do - if not first then print(",") end - printJsonKeyValue(k,v,indent) - first=false - end +printTableAsJson = function (dict) + local output=dkjson.encode (dict, { indent = true }) + print(output) end local printXmlKeyValue = function (k,v,indent) _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
