1 #include <Poco/JSON/Object.h>
2 #include <Poco/JSON/Array.h>
3 #include <Poco/JSON/JSON.h>
4 #include <Poco/JSON/Stringifier.h>
5 #include <Poco/JSON/Parser.h>
6 #include <Poco/JSON/JSONException.h>
7 #include <Poco/Dynamic/Var.h>
29 Poco::JSON::Array::Ptr pItems =
new Poco::JSON::Array();
33 Poco::JSON::Object::Ptr pItemElem =
new Poco::JSON::Object();
41 Poco::JSON::Array::Ptr pFiles =
new Poco::JSON::Array();
44 for (
size_t k=0;k<filesCount;++k)
46 Poco::JSON::Object::Ptr pFileElem =
new Poco::JSON::Object();
50 pFiles->add(pFileElem);
53 pItems->add(pItemElem);
56 std::stringstream ostr;
57 Poco::JSON::Stringifier::stringify(pItems, ostr);
62 catch(std::exception& e)
79 Poco::JSON::Parser parser;
80 Poco::Dynamic::Var res = parser.parse(json);
82 Poco::Dynamic::Var tmp;
83 Poco::JSON::Array::Ptr pItems = res.extract<Poco::JSON::Array::Ptr>();
86 for (
size_t i=0;i<pItems->size();++i)
88 Poco::JSON::Object::Ptr pItemElem = pItems->getObject(i);
89 if (!pItemElem.isNull())
105 dataItem.
setTime(convertVarToNumeric<unsigned int>(tmp, 0));
108 dataItem.
setExitStatus(convertVarToNumeric<unsigned int>(tmp, 0));
111 if (!pFiles.isNull())
113 for (
size_t k=0;k<pFiles->size();++k)
115 Poco::JSON::Object::Ptr pFileElem = pFiles->getObject(k);
116 if (!pFileElem.isNull())
122 fileItem.
name = tmp.convert<std::string>();
126 fileItem.
data = tmp.convert<std::string>();
129 fileItem.
actionType = convertVarToNumeric<unsigned int>(tmp, 0);
131 dataItem.
addFileItem(std::forward<FileItem>(fileItem));
135 resultData.
addDataItem(std::forward<DRCEResultDataItem>(dataItem));
141 catch(Poco::JSON::JSONException& e)
147 catch(Poco::Exception& e)