53 lines
995 B
C++
53 lines
995 B
C++
|
|
|
|
#pragma once
|
|
|
|
#include "ltswebsocketcommon_export.h"
|
|
|
|
#include <QtCore/QJsonObject>
|
|
#include <QJsonParseError>
|
|
#include <QtCore/QString>
|
|
|
|
namespace LtsWebSocket
|
|
{
|
|
|
|
class LTSWEBSOCKETCOMMON_EXPORT ReplyMessage
|
|
{
|
|
public:
|
|
virtual ~ReplyMessage() = default;
|
|
|
|
virtual QString toJsonString() const;
|
|
|
|
QJsonObject json() const { return m_jsonRepresentation; }
|
|
|
|
protected:
|
|
ReplyMessage() = default;
|
|
ReplyMessage(const QString &type, const int typeId, const QString &uuid);
|
|
|
|
protected:
|
|
QJsonObject m_jsonRepresentation;
|
|
};
|
|
|
|
class LTSWEBSOCKETCOMMON_EXPORT ReplyHandler
|
|
{
|
|
public:
|
|
virtual ~ReplyHandler() = default;
|
|
|
|
virtual void addReply(ReplyMessage *message) = 0;
|
|
};
|
|
|
|
class LTSWEBSOCKETCOMMON_EXPORT ErrorMessage final : public ReplyMessage
|
|
{
|
|
public:
|
|
struct ErrorData
|
|
{
|
|
int errorClass = 0;
|
|
QString uuid;
|
|
QString errorMessage;
|
|
};
|
|
|
|
explicit ErrorMessage(const ErrorData &data);
|
|
};
|
|
|
|
} // namespace LtsWebSocket
|