From 1a8cffddf383872b84d0df9acef5662e02189f2b Mon Sep 17 00:00:00 2001 From: rtk0c Date: Mon, 27 Jun 2022 00:15:35 +0000 Subject: (From git) Update code style, misc clean up git-svn-id: file:///home/arch/svn/epistmool/trunk@6 71f44415-077c-4ad7-a976-72ddbf76608f --- .../source/EpistmoolServer/Protocol/Command.hpp | 84 ++++++++++++++++++---- 1 file changed, 72 insertions(+), 12 deletions(-) (limited to 'server-v1/source/EpistmoolServer/Protocol/Command.hpp') 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 +#include #include #include #include @@ -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 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 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 -- cgit v1.2.3-70-g09d2