libQuotient
A Qt library for building matrix clients
push_ruleset.h
Go to the documentation of this file.
1 // THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN
2 
3 #pragma once
4 
5 #include <Quotient/csapi/definitions/push_rule.h>
6 
7 #include <Quotient/converters.h>
8 
9 namespace Quotient {
10 
11 struct QUOTIENT_API PushRuleset {
12  QVector<PushRule> content{};
13 
14  QVector<PushRule> override{};
15 
16  QVector<PushRule> room{};
17 
18  QVector<PushRule> sender{};
19 
20  QVector<PushRule> underride{};
21 };
22 
23 template <>
24 struct JsonObjectConverter<PushRuleset> {
25  static void dumpTo(QJsonObject& jo, const PushRuleset& pod)
26  {
27  addParam<IfNotEmpty>(jo, "content"_L1, pod.content);
28  addParam<IfNotEmpty>(jo, "override"_L1, pod.override);
29  addParam<IfNotEmpty>(jo, "room"_L1, pod.room);
30  addParam<IfNotEmpty>(jo, "sender"_L1, pod.sender);
31  addParam<IfNotEmpty>(jo, "underride"_L1, pod.underride);
32  }
33  static void fillFrom(const QJsonObject& jo, PushRuleset& pod)
34  {
35  fillFromJson(jo.value("content"_L1), pod.content);
36  fillFromJson(jo.value("override"_L1), pod.override);
37  fillFromJson(jo.value("room"_L1), pod.room);
38  fillFromJson(jo.value("sender"_L1), pod.sender);
39  fillFromJson(jo.value("underride"_L1), pod.underride);
40  }
41 };
42 
43 } // namespace Quotient