summary refs log tree commit diff
path: root/include/events/Event.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/events/Event.h')
-rw-r--r--include/events/Event.h162
1 files changed, 81 insertions, 81 deletions
diff --git a/include/events/Event.h b/include/events/Event.h

index d48c20c6..c6d2da2f 100644 --- a/include/events/Event.h +++ b/include/events/Event.h
@@ -27,30 +27,30 @@ namespace matrix namespace events { enum class EventType { - /// m.room.aliases - RoomAliases, - /// m.room.avatar - RoomAvatar, - /// m.room.canonical_alias - RoomCanonicalAlias, - /// m.room.create - RoomCreate, - /// m.room.history_visibility - RoomHistoryVisibility, - /// m.room.join_rules - RoomJoinRules, - /// m.room.member - RoomMember, - /// m.room.message - RoomMessage, - /// m.room.name - RoomName, - /// m.room.power_levels - RoomPowerLevels, - /// m.room.topic - RoomTopic, - // Unsupported event - Unsupported, + /// m.room.aliases + RoomAliases, + /// m.room.avatar + RoomAvatar, + /// m.room.canonical_alias + RoomCanonicalAlias, + /// m.room.create + RoomCreate, + /// m.room.history_visibility + RoomHistoryVisibility, + /// m.room.join_rules + RoomJoinRules, + /// m.room.member + RoomMember, + /// m.room.message + RoomMessage, + /// m.room.name + RoomName, + /// m.room.power_levels + RoomPowerLevels, + /// m.room.topic + RoomTopic, + // Unsupported event + Unsupported, }; EventType @@ -67,92 +67,92 @@ class Event , public Serializable { public: - inline Content content() const; - inline EventType eventType() const; + inline Content content() const; + inline EventType eventType() const; - void deserialize(const QJsonValue &data) override; - QJsonObject serialize() const override; + void deserialize(const QJsonValue &data) override; + QJsonObject serialize() const override; private: - Content content_; - EventType type_; + Content content_; + EventType type_; }; template<class Content> inline Content Event<Content>::content() const { - return content_; + return content_; } template<class Content> inline EventType Event<Content>::eventType() const { - return type_; + return type_; } template<class Content> void Event<Content>::deserialize(const QJsonValue &data) { - if (!data.isObject()) - throw DeserializationException("Event is not a JSON object"); + if (!data.isObject()) + throw DeserializationException("Event is not a JSON object"); - auto object = data.toObject(); + auto object = data.toObject(); - content_.deserialize(object.value("content")); - type_ = extractEventType(object); + content_.deserialize(object.value("content")); + type_ = extractEventType(object); } template<class Content> QJsonObject Event<Content>::serialize() const { - QJsonObject object; - - switch (type_) { - case EventType::RoomAliases: - object["type"] = "m.room.aliases"; - break; - case EventType::RoomAvatar: - object["type"] = "m.room.avatar"; - break; - case EventType::RoomCanonicalAlias: - object["type"] = "m.room.canonical_alias"; - break; - case EventType::RoomCreate: - object["type"] = "m.room.create"; - break; - case EventType::RoomHistoryVisibility: - object["type"] = "m.room.history_visibility"; - break; - case EventType::RoomJoinRules: - object["type"] = "m.room.join_rules"; - break; - case EventType::RoomMember: - object["type"] = "m.room.member"; - break; - case EventType::RoomMessage: - object["type"] = "m.room.message"; - break; - case EventType::RoomName: - object["type"] = "m.room.name"; - break; - case EventType::RoomPowerLevels: - object["type"] = "m.room.power_levels"; - break; - case EventType::RoomTopic: - object["type"] = "m.room.topic"; - break; - case EventType::Unsupported: - qWarning() << "Unsupported type to serialize"; - break; - } - - object["content"] = content_.serialize(); - - return object; + QJsonObject object; + + switch (type_) { + case EventType::RoomAliases: + object["type"] = "m.room.aliases"; + break; + case EventType::RoomAvatar: + object["type"] = "m.room.avatar"; + break; + case EventType::RoomCanonicalAlias: + object["type"] = "m.room.canonical_alias"; + break; + case EventType::RoomCreate: + object["type"] = "m.room.create"; + break; + case EventType::RoomHistoryVisibility: + object["type"] = "m.room.history_visibility"; + break; + case EventType::RoomJoinRules: + object["type"] = "m.room.join_rules"; + break; + case EventType::RoomMember: + object["type"] = "m.room.member"; + break; + case EventType::RoomMessage: + object["type"] = "m.room.message"; + break; + case EventType::RoomName: + object["type"] = "m.room.name"; + break; + case EventType::RoomPowerLevels: + object["type"] = "m.room.power_levels"; + break; + case EventType::RoomTopic: + object["type"] = "m.room.topic"; + break; + case EventType::Unsupported: + qWarning() << "Unsupported type to serialize"; + break; + } + + object["content"] = content_.serialize(); + + return object; } } // namespace events } // namespace matrix