common/Session.cpp | 10 +++------- common/Session.hpp | 39 +-------------------------------------- kit/ChildSession.cpp | 2 +- kit/ChildSession.hpp | 8 ++------ wsd/ClientSession.cpp | 2 +- wsd/PrisonerSession.cpp | 2 +- wsd/TileCache.cpp | 4 +--- 7 files changed, 10 insertions(+), 57 deletions(-)
New commits: commit 477ca6f414090941d66392d0b3081eb2d8b1f6c2 Author: Ashod Nakashian <ashod.nakash...@collabora.co.uk> Date: Mon Dec 12 20:18:25 2016 -0500 loolwsd: cleanup the Sessions Change-Id: I3cd065ab84e17f943fa7de7e094db574ff6fde07 Reviewed-on: https://gerrit.libreoffice.org/31931 Reviewed-by: Ashod Nakashian <ashnak...@gmail.com> Tested-by: Ashod Nakashian <ashnak...@gmail.com> diff --git a/common/Session.cpp b/common/Session.cpp index f2c68ec..0e51de5 100644 --- a/common/Session.cpp +++ b/common/Session.cpp @@ -49,14 +49,10 @@ using Poco::Net::Socket; using Poco::Net::WebSocket; using Poco::StringTokenizer; -Session::Session(const std::string& id, const Kind kind, - std::shared_ptr<LOOLWebSocket> ws) : +Session::Session(const std::string& name, const std::string& id, const std::shared_ptr<LOOLWebSocket>& ws) : _id(id), - _kind(kind), - _kindString(kind == Kind::ToClient ? "ToClient" : - kind == Kind::ToMaster ? "ToMaster" : "ToPrisoner"), - _name(_kindString + '-' + id), - _ws(std::move(ws)), + _name(name), + _ws(ws), _disconnected(false), _isActive(true), _lastActivityTime(std::chrono::steady_clock::now()), diff --git a/common/Session.hpp b/common/Session.hpp index 617348a..8277c5e 100644 --- a/common/Session.hpp +++ b/common/Session.hpp @@ -32,17 +32,6 @@ class Session { public: - /// We have three kinds of Websocket sessions - /// 1) Between the master loolwsd server to the end-user LOOL client - /// 2) Between the master loolwsd server and a jailed child process, in the master process - /// 3) Ditto, in the jailed process - enum class Kind - { - ToClient, - ToPrisoner, - ToMaster - }; - const std::string& getId() const { return _id; } const std::string& getName() const { return _name; } bool isDisconnected() const { return _disconnected; } @@ -77,13 +66,10 @@ public: void closeFrame() { _isCloseFrame = true; }; bool isCloseFrame() const { return _isCloseFrame; } - Kind getKind() const { return _kind; } - bool isHeadless() const { return _ws == nullptr; } protected: - Session(const std::string& id, const Kind kind, - std::shared_ptr<LOOLWebSocket> ws); + Session(const std::string& name, const std::string& id, const std::shared_ptr<LOOLWebSocket>& ws); virtual ~Session(); /// Parses the options of the "load" command, shared between MasterProcessSession::loadDocument() and ChildProcessSession::loadDocument(). @@ -107,12 +93,6 @@ private: /// A session ID specific to an end-to-end connection (from user to lokit). const std::string _id; - // Our kind signifies to what we are connected to. - const Kind _kind; - - // The kind cached as a string. - const std::string _kindString; - /// A readable name that identifies our peer and ID. const std::string _name; @@ -158,23 +138,6 @@ protected: std::string _userName; }; -template <typename charT, typename traits> -inline std::basic_ostream<charT, traits>& operator<<(std::basic_ostream<charT, traits>& stream, Session::Kind kind) -{ - switch (kind) - { - case Session::Kind::ToClient: - return stream << "TO_CLIENT"; - case Session::Kind::ToPrisoner: - return stream << "TO_PRISONER"; - case Session::Kind::ToMaster: - return stream << "TO_MASTER"; - default: - assert(false); - return stream << "UNK_" + std::to_string(static_cast<int>(kind)); - } -} - #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/kit/ChildSession.cpp b/kit/ChildSession.cpp index 9df2b56..cd1f404 100644 --- a/kit/ChildSession.cpp +++ b/kit/ChildSession.cpp @@ -37,7 +37,7 @@ std::recursive_mutex ChildSession::Mutex; ChildSession::ChildSession(const std::string& id, const std::string& jailId, IDocumentManager& docManager) : - Session(id, Kind::ToMaster, nullptr), + Session("ToMaster-" + id, id, nullptr), _jailId(jailId), _docManager(docManager), _viewId(-1), diff --git a/kit/ChildSession.hpp b/kit/ChildSession.hpp index 19005ac..c41426a 100644 --- a/kit/ChildSession.hpp +++ b/kit/ChildSession.hpp @@ -35,8 +35,7 @@ public: const std::string& userName, const std::string& docPassword, const std::string& renderOpts, - const bool haveDocPassword) - = 0; + const bool haveDocPassword) = 0; /// Unload a client session, which unloads the document /// if it is the last and only. @@ -94,10 +93,7 @@ public: return _docManager.sendTextFrame(msg); } - bool sendTextFrame(const std::string& text) - { - return sendTextFrame(text.data(), text.size()); - } + using Session::sendTextFrame; private: bool loadDocument(const char* buffer, int length, Poco::StringTokenizer& tokens); diff --git a/wsd/ClientSession.cpp b/wsd/ClientSession.cpp index 3befec5..1707650 100644 --- a/wsd/ClientSession.cpp +++ b/wsd/ClientSession.cpp @@ -39,7 +39,7 @@ ClientSession::ClientSession(const std::string& id, const std::shared_ptr<DocumentBroker>& docBroker, const Poco::URI& uriPublic, const bool readOnly) : - Session(id, Kind::ToClient, ws), + Session("ToClient-" + id, id, ws), _docBroker(docBroker), _uriPublic(uriPublic), _isReadOnly(readOnly), diff --git a/wsd/PrisonerSession.cpp b/wsd/PrisonerSession.cpp index 2bd9c41..69eafad 100644 --- a/wsd/PrisonerSession.cpp +++ b/wsd/PrisonerSession.cpp @@ -36,7 +36,7 @@ using Poco::StringTokenizer; PrisonerSession::PrisonerSession(std::shared_ptr<ClientSession> clientSession, std::shared_ptr<DocumentBroker> docBroker) : - Session(clientSession->getId(), Kind::ToPrisoner, nullptr), + Session("ToPrisoner-" + clientSession->getId(), clientSession->getId(), nullptr), _docBroker(std::move(docBroker)), _peer(clientSession), _curPart(0) diff --git a/wsd/TileCache.cpp b/wsd/TileCache.cpp index 010ce00..60123a7 100644 --- a/wsd/TileCache.cpp +++ b/wsd/TileCache.cpp @@ -434,10 +434,8 @@ void TileCache::saveLastModified(const Timestamp& timestamp) } // FIXME: to be further simplified when we centralize tile messages. -void TileCache::subscribeToTileRendering(const TileDesc& tile, const std::shared_ptr<ClientSession> &subscriber) +void TileCache::subscribeToTileRendering(const TileDesc& tile, const std::shared_ptr<ClientSession>& subscriber) { - assert(subscriber->getKind() == Session::Kind::ToClient); - std::ostringstream oss; oss << '(' << tile.getPart() << ',' << tile.getTilePosX() << ',' << tile.getTilePosY() << ')'; const auto name = oss.str(); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits