aboutsummaryrefslogtreecommitdiff
path: root/server-v1/source/EpistmoolServer/Protocol/Command.hpp
diff options
context:
space:
mode:
authorrtk0c <[email protected]>2022-06-27 00:15:35 +0000
committerrtk0c <[email protected]>2022-06-27 00:15:35 +0000
commit1a8cffddf383872b84d0df9acef5662e02189f2b (patch)
tree5ab6ecb6a0e864db9cda68c563a4e52ae5b7be86 /server-v1/source/EpistmoolServer/Protocol/Command.hpp
parent3250fc72f906797f113855cf9dde4e7803a66bd9 (diff)
(From git) Update code style, misc clean up
git-svn-id: file:///home/arch/svn/epistmool/trunk@6 71f44415-077c-4ad7-a976-72ddbf76608f
Diffstat (limited to 'server-v1/source/EpistmoolServer/Protocol/Command.hpp')
-rw-r--r--server-v1/source/EpistmoolServer/Protocol/Command.hpp84
1 files changed, 72 insertions, 12 deletions
diff --git a/server-v1/source/EpistmoolServer/Protocol/Command.hpp b/server-v1/source/EpistmoolServer/Protocol/Command.hpp
index 9ec9786..6d6ecd6 100644
--- a/server-v1/source/EpistmoolServer/Protocol/Command.hpp
+++ b/server-v1/source/EpistmoolServer/Protocol/Command.hpp
@@ -3,6 +3,7 @@
#include "all_fwd.hpp"
#include <QLatin1String>
+#include <QString>
#include <QVersionNumber>
#include <cstddef>
#include <memory>
@@ -17,19 +18,16 @@ class ProtocolMessage
Q_GADGET
public:
- struct KindTrait
- {
+ struct KindTrait {
bool isC2S;
bool hasReply;
};
- enum Kind
- {
+ enum Kind {
SessionAuth,
SessionDestroy,
WorkspaceCreate,
- WorkspaceOpen,
WorkspaceFetchIndex,
WorkspaceFetchKnowledge,
@@ -53,8 +51,7 @@ public:
static std::unique_ptr<ProtocolReply> createReply(Kind kind);
static const KindTrait& getKindTrait(Kind kind);
- enum Variant
- {
+ enum Variant {
RequestVariant,
ReplyVariant,
};
@@ -73,15 +70,17 @@ protected:
virtual void deserializeFields(const QJsonObject& object) = 0;
};
-struct ProtocolRequest : public ProtocolMessage
+class ProtocolRequest : public ProtocolMessage
{
+public:
ProtocolRequest(Kind kind);
static QJsonObject serialize(const ProtocolRequest& msg);
static std::unique_ptr<ProtocolRequest> deserialize(const QJsonObject& object);
};
-struct ProtocolReply : public ProtocolMessage
+class ProtocolReply : public ProtocolMessage
{
+public:
int sequence;
ProtocolReply(Kind kind);
@@ -92,8 +91,9 @@ struct ProtocolReply : public ProtocolMessage
// ===========================
// Individual messages classes
-struct ProtocolRequest_SessionAuth : public ProtocolRequest
+class ProtocolRequest_SessionAuth : public ProtocolRequest
{
+public:
int theSession;
bool createIfInvalid;
@@ -104,8 +104,9 @@ protected:
virtual void deserializeFields(const QJsonObject& object) override;
};
-struct ProtocolReply_SessionAuth : public ProtocolReply
+class ProtocolReply_SessionAuth : public ProtocolReply
{
+public:
/// The same value as provided in the request message.
/// If \l ProcotolCommandSessionAuth::createIfValid is set and the given session is invalid, a new session is created and written here instead of the original value.
int theSession;
@@ -117,8 +118,67 @@ protected:
virtual void deserializeFields(const QJsonObject& object) override;
};
-struct ProtocolNotification_WorkspaceUpdate : public ProtocolRequest
+class ProtocolRequest_SessionDestroy : public ProtocolRequest
+{
+public:
+ // TODO
+
+ ProtocolRequest_SessionDestroy();
+
+protected:
+ virtual void serializeFields(QJsonObject& object) const override;
+ virtual void deserializeFields(const QJsonObject& object) override;
+};
+
+class ProtocolReply_SessionDestroy : public ProtocolReply
+{
+public:
+ // TODO
+
+ ProtocolReply_SessionDestroy();
+
+protected:
+ virtual void serializeFields(QJsonObject& object) const override;
+ virtual void deserializeFields(const QJsonObject& object) override;
+};
+
+class ProtocolRequest_WorkspaceFetchIndex : public ProtocolRequest
+{
+public:
+ QString knowledgeFilter;
+ QString keywordFilter;
+ int knowledgeMaxCount;
+ int keywordMaxCount;
+
+ ProtocolRequest_WorkspaceFetchIndex();
+
+protected:
+ virtual void serializeFields(QJsonObject& object) const override;
+ virtual void deserializeFields(const QJsonObject& object) override;
+};
+
+class ProtocolReply_WorkspaceFetchIndex : public ProtocolReply
{
+public:
+ // TODO
+
+ ProtocolReply_WorkspaceFetchIndex();
+
+protected:
+ virtual void serializeFields(QJsonObject& object) const override;
+ virtual void deserializeFields(const QJsonObject& object) override;
+};
+
+class ProtocolNotification_WorkspaceUpdate : public ProtocolRequest
+{
+public:
+ // TODO
+
+ ProtocolNotification_WorkspaceUpdate();
+
+protected:
+ virtual void serializeFields(QJsonObject& object) const override;
+ virtual void deserializeFields(const QJsonObject& object) override;
};
} // namespace Epistmool::Server