diff options
-rw-r--r-- | message.cpp | 16 | ||||
-rw-r--r-- | message.h | 2 |
2 files changed, 12 insertions, 6 deletions
diff --git a/message.cpp b/message.cpp index 95bc586..33211da 100644 --- a/message.cpp +++ b/message.cpp @@ -29,14 +29,18 @@ Message::Message() bool Message::createRequest(QString api, QString verb, QJsonValue parameter) { - QJsonArray *request = new QJsonArray; - request->append(Call); - request->append(9999); - request->append(api + (QString)("/") + verb); - request->append(QJsonValue(parameter)); + if (!m_request.isEmpty()){ + qWarning("Message instance has already been used. Cannot send another request."); + return false; + } + + m_request.append(Call); + m_request.append(9999); + m_request.append(api + (QString)("/") + verb); + m_request.append(QJsonValue(parameter)); QJsonDocument jdoc; - jdoc.setArray(*request); + jdoc.setArray(m_request); m_jdoc = jdoc; m_init = true; @@ -18,6 +18,7 @@ #define MESSAGE_H #include <QObject> +#include <QJsonArray> #include <QJsonDocument> #include <QJsonObject> @@ -89,6 +90,7 @@ class Message : public QObject protected: bool m_event, m_init, m_reply; QString m_event_api, m_event_name, m_reply_info, m_reply_status, m_reply_uuid; + QJsonArray m_request; QJsonDocument m_jdoc; QJsonObject m_event_data, m_reply_data; }; |