summary refs log tree commit diff
path: root/include/events/StateEvent.h
diff options
context:
space:
mode:
authorKonstantinos Sideris <sideris.konstantin@gmail.com>2017-07-27 13:49:44 +0300
committerKonstantinos Sideris <sideris.konstantin@gmail.com>2017-07-30 14:30:55 +0300
commite5ccb73a20f559983960db2daa08d6086c90b8ec (patch)
tree3212d0727d63611e5398e8eab2a3a4bc1cddbb5d /include/events/StateEvent.h
parentAppend backwards events after the spacer (diff)
downloadnheko-e5ccb73a20f559983960db2daa08d6086c90b8ec.tar.xz
Add serialization on matrix events
Diffstat (limited to 'include/events/StateEvent.h')
-rw-r--r--include/events/StateEvent.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/events/StateEvent.h b/include/events/StateEvent.h

index 2075a996..26313048 100644 --- a/include/events/StateEvent.h +++ b/include/events/StateEvent.h
@@ -33,6 +33,7 @@ public: inline Content previousContent() const; void deserialize(const QJsonValue &data); + QJsonObject serialize() const; private: QString state_key_; @@ -66,5 +67,20 @@ void StateEvent<Content>::deserialize(const QJsonValue &data) if (object.contains("prev_content")) prev_content_.deserialize(object.value("prev_content")); } + +template <class Content> +QJsonObject StateEvent<Content>::serialize() const +{ + QJsonObject object = RoomEvent<Content>::serialize(); + + object["state_key"] = state_key_; + + auto prev = prev_content_.serialize(); + + if (!prev.isEmpty()) + object["prev_content"] = prev; + + return object; +} } // namespace events } // namespace matrix