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>
42 Poco::JSON::Object::Ptr obj =
new Poco::JSON::Object();
47 std::stringstream ostr;
48 Poco::JSON::Stringifier::stringify(obj, ostr);
51 catch(std::exception& e)
65 messageType = types::MessageType::mtSphinx;
70 Poco::JSON::Parser parser;
71 Poco::Dynamic::Var res = parser.parse(json);
72 Poco::JSON::Object::Ptr obj = res.extract<Poco::JSON::Object::Ptr>();
75 messageType =
static_cast<types::MessageType>(convertVarToNumeric<unsigned long>(tmp,
static_cast<unsigned long>(messageType)));
81 if (messageBody.empty())
82 throw Poco::Exception(
"Invalid body. Empty message.");
85 messageTTL = convertVarToNumeric<unsigned long>(tmp, messageTTL);
87 catch(Poco::JSON::JSONException& e)
93 catch(Poco::Exception& e)
99 catch(std::exception& e)
111 is.seekg(0, std::ios::end);
112 json.resize(is.tellg());
113 is.seekg(0, std::ios::beg);
114 is.read(const_cast<char*>(json.c_str()), json.size());