-Message::Message(const BufferInfo &bufferInfo, Type type, const QString &contents, const QString &sender, Flags flags)
- : _timestamp(QDateTime::currentDateTime().toUTC()),
- _bufferInfo(bufferInfo),
- _contents(contents),
- _sender(sender),
- _type(type),
- _flags(flags)
+#include "peer.h"
+#include "signalproxy.h"
+#include "util.h"
+
+Message::Message(
+ BufferInfo bufferInfo, Type type, QString contents, QString sender, QString senderPrefixes, QString realName, QString avatarUrl, Flags flags)
+ : _timestamp(QDateTime::currentDateTime().toUTC())
+ , _bufferInfo(std::move(bufferInfo))
+ , _contents(std::move(contents))
+ , _sender(std::move(sender))
+ , _senderPrefixes(std::move(senderPrefixes))
+ , _realName(std::move(realName))
+ , _avatarUrl(std::move(avatarUrl))
+ , _type(type)
+ , _flags(flags)
+{}
+
+Message::Message(QDateTime ts,
+ BufferInfo bufferInfo,
+ Type type,
+ QString contents,
+ QString sender,
+ QString senderPrefixes,
+ QString realName,
+ QString avatarUrl,
+ Flags flags)
+ : _timestamp(std::move(ts))
+ , _bufferInfo(std::move(bufferInfo))
+ , _contents(std::move(contents))
+ , _sender(std::move(sender))
+ , _senderPrefixes(std::move(senderPrefixes))
+ , _realName(std::move(realName))
+ , _avatarUrl(std::move(avatarUrl))
+ , _type(type)
+ , _flags(flags)
+{}
+
+QDataStream& operator<<(QDataStream& out, const Message& msg)