History

Work on better subscribtion to script messages

ksuprynowicz committed 3 years ago

Commit 274867b1 parent f3dbfc49 files · +209 −53Browse files

Showing the changes to libraries/script-engine/src/ScriptMessage.cpp (1 of 9 files). Show all

Unified · Split

libraries/script-engine/src/ScriptMessage.cpp+20−2
@@ -11,12 +11,30 @@ · 10 unmodified lines
11 11
12#include "ScriptMessage.h"12#include "ScriptMessage.h"
13 13
14#include <qhash.h>
15
14QJsonObject ScriptMessage::toJson() {16QJsonObject ScriptMessage::toJson() {
15 QJsonObject object;17 QJsonObject object;
16 object["message"] = _messageContent;18 object["message"] = _messageContent;
17 object["lineNumber"] = _lineNumber;19 object["lineNumber"] = _lineNumber;
18 object["fileName"] = _fileName;20 object["fileName"] = _fileName;
19 object["type"] = scriptTypeToString(_scriptType);21 object["type"] = static_cast<int>(_scriptType);
20 object["severity"] = severityToString(_severity);22 object["severity"] = static_cast<int>(_severity);
21 return object;23 return object;
24}
25
26bool ScriptMessage::fromJson(const QJsonObject &object) {
27 if (!object["message"].isString()
28 || !object["lineNumber"].isDouble()
29 || !object["fileName"].isString()
30 || !object["type"].isDouble()
31 || !object["severity"].isDouble()) {
32 qDebug() << "ScriptMessage::fromJson failed to find required fields in JSON file";
33 return false;
34 }
35 _messageContent = object["message"].toString();
36 _lineNumber = object["lineNumber"].toInt();
37 _fileName = object["fileName"].toInt();
38 _scriptType = static_cast<ScriptMessage::ScriptType>(object["type"].toInt());
39 _severity = static_cast<ScriptMessage::Severity>(object["severity"].toInt());
22}40}