diff options
Diffstat (limited to 'lib/csapi/definitions/push_ruleset.h')
-rw-r--r-- | lib/csapi/definitions/push_ruleset.h | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/lib/csapi/definitions/push_ruleset.h b/lib/csapi/definitions/push_ruleset.h index 98a21408..ba780a33 100644 --- a/lib/csapi/definitions/push_ruleset.h +++ b/lib/csapi/definitions/push_ruleset.h @@ -8,12 +8,8 @@ #include "csapi/definitions/push_rule.h" -#include <QtCore/QVector> - namespace Quotient { -// Data structures - struct PushRuleset { QVector<PushRule> content; @@ -28,8 +24,22 @@ struct PushRuleset { template <> struct JsonObjectConverter<PushRuleset> { - static void dumpTo(QJsonObject& jo, const PushRuleset& pod); - static void fillFrom(const QJsonObject& jo, PushRuleset& pod); + static void dumpTo(QJsonObject& jo, const PushRuleset& pod) + { + addParam<IfNotEmpty>(jo, QStringLiteral("content"), pod.content); + addParam<IfNotEmpty>(jo, QStringLiteral("override"), pod.override); + addParam<IfNotEmpty>(jo, QStringLiteral("room"), pod.room); + addParam<IfNotEmpty>(jo, QStringLiteral("sender"), pod.sender); + addParam<IfNotEmpty>(jo, QStringLiteral("underride"), pod.underride); + } + static void fillFrom(const QJsonObject& jo, PushRuleset& pod) + { + fromJson(jo.value("content"_ls), pod.content); + fromJson(jo.value("override"_ls), pod.override); + fromJson(jo.value("room"_ls), pod.room); + fromJson(jo.value("sender"_ls), pod.sender); + fromJson(jo.value("underride"_ls), pod.underride); + } }; } // namespace Quotient |