aboutsummaryrefslogtreecommitdiff
path: root/events/event.cpp
diff options
context:
space:
mode:
authorKitsune Ral <Kitsune-Ral@users.sf.net>2017-09-19 10:10:18 +0900
committerKitsune Ral <Kitsune-Ral@users.sf.net>2017-09-19 10:55:42 +0900
commit1b11a6ee708291db37b0c7879eb103d81d70a6b7 (patch)
tree8a8e8cb7191b89177e2a6986de0ea544d56b8e8f /events/event.cpp
parentbe258954da33ea3f96fa947569bf617caae68452 (diff)
downloadlibquotient-1b11a6ee708291db37b0c7879eb103d81d70a6b7.tar.gz
libquotient-1b11a6ee708291db37b0c7879eb103d81d70a6b7.zip
Event::originalJsonObject(), RoomEvent validations commented out
* Event::originalJsonObject() exposes the original JSON for the event without converting it to QByteArray. This is useful to quickly dump an event into a bigger JSON without reconstructing a JSON object. * Validations in RoomEvent::RoomEvent() do more harm than good. The rest of the library tolerates absence of those attributes pretty well (it wouldn't be able to do much with that anyway); at the same time, dumping JSON to logs turns out to be pretty heavy, and throwing many invalid events at a client is a good way to hit its performance.
Diffstat (limited to 'events/event.cpp')
-rw-r--r--events/event.cpp35
1 files changed, 20 insertions, 15 deletions
diff --git a/events/event.cpp b/events/event.cpp
index 8a6de822..d718306d 100644
--- a/events/event.cpp
+++ b/events/event.cpp
@@ -48,6 +48,11 @@ QByteArray Event::originalJson() const
return QJsonDocument(_originalJson).toJson();
}
+QJsonObject Event::originalJsonObject() const
+{
+ return _originalJson;
+}
+
QDateTime Event::toTimestamp(const QJsonValue& v)
{
Q_ASSERT(v.isDouble() || v.isNull() || v.isUndefined());
@@ -97,21 +102,21 @@ RoomEvent::RoomEvent(Type type, const QJsonObject& rep)
, _senderId(rep["sender"].toString())
, _txnId(rep["unsigned"].toObject().value("transactionId").toString())
{
- if (_id.isEmpty())
- {
- qCWarning(EVENTS) << "Can't find event_id in a room event";
- qCWarning(EVENTS) << formatJson << rep;
- }
- if (!rep.contains("origin_server_ts"))
- {
- qCWarning(EVENTS) << "Can't find server timestamp in a room event";
- qCWarning(EVENTS) << formatJson << rep;
- }
- if (_senderId.isEmpty())
- {
- qCWarning(EVENTS) << "Can't find sender in a room event";
- qCWarning(EVENTS) << formatJson << rep;
- }
+// if (_id.isEmpty())
+// {
+// qCWarning(EVENTS) << "Can't find event_id in a room event";
+// qCWarning(EVENTS) << formatJson << rep;
+// }
+// if (!rep.contains("origin_server_ts"))
+// {
+// qCWarning(EVENTS) << "Can't find server timestamp in a room event";
+// qCWarning(EVENTS) << formatJson << rep;
+// }
+// if (_senderId.isEmpty())
+// {
+// qCWarning(EVENTS) << "Can't find sender in a room event";
+// qCWarning(EVENTS) << formatJson << rep;
+// }
if (!_txnId.isEmpty())
qCDebug(EVENTS) << "Event transactionId:" << _txnId;
}