[Libreoffice-commits] online.git: 3 commits - net/WebSocketHandler.hpp wsd/Admin.cpp wsd/Admin.hpp wsd/LOOLWSD.cpp
Michael Meeks
michael.meeks at collabora.com
Thu Mar 16 17:33:23 UTC 2017
net/WebSocketHandler.hpp | 7 +++----
wsd/Admin.cpp | 18 +++++++++---------
wsd/Admin.hpp | 8 ++++----
wsd/LOOLWSD.cpp | 2 +-
4 files changed, 17 insertions(+), 18 deletions(-)
New commits:
commit a6de441ed0577d7c7cb9e431b43e48b543a02b22
Author: Michael Meeks <michael.meeks at collabora.com>
Date: Thu Mar 16 17:32:38 2017 +0000
rename AdminRequestHandler to AdminSocketHandler.
diff --git a/wsd/Admin.cpp b/wsd/Admin.cpp
index b3b4b765..646ec274 100644
--- a/wsd/Admin.cpp
+++ b/wsd/Admin.cpp
@@ -53,8 +53,9 @@ using Poco::Net::HTTPServerRequest;
using Poco::Net::HTTPServerResponse;
using Poco::Util::Application;
- /// Process incoming websocket messages
-void AdminRequestHandler::handleMessage(bool /* fin */, WSOpCode /* code */, std::vector<char> &payload)
+/// Process incoming websocket messages
+void AdminSocketHandler::handleMessage(bool /* fin */, WSOpCode /* code */,
+ std::vector<char> &payload)
{
// FIXME: check fin, code etc.
const std::string firstLine = getFirstLine(payload.data(), payload.size());
@@ -226,9 +227,9 @@ void AdminRequestHandler::handleMessage(bool /* fin */, WSOpCode /* code */, std
}
}
-AdminRequestHandler::AdminRequestHandler(Admin* adminManager,
- const std::weak_ptr<StreamSocket>& socket,
- const Poco::Net::HTTPRequest& request)
+AdminSocketHandler::AdminSocketHandler(Admin* adminManager,
+ const std::weak_ptr<StreamSocket>& socket,
+ const Poco::Net::HTTPRequest& request)
: WebSocketHandler(socket, request),
_admin(adminManager),
_sessionId(0),
@@ -236,7 +237,7 @@ AdminRequestHandler::AdminRequestHandler(Admin* adminManager,
{
}
-void AdminRequestHandler::sendTextFrame(const std::string& message)
+void AdminSocketHandler::sendTextFrame(const std::string& message)
{
UnitWSD::get().onAdminQueryMessage(message);
if (_isAuthenticated)
@@ -245,7 +246,7 @@ void AdminRequestHandler::sendTextFrame(const std::string& message)
LOG_TRC("Skip sending message to non-authenticated client: '" << message << "'");
}
-bool AdminRequestHandler::handleInitialRequest(
+bool AdminSocketHandler::handleInitialRequest(
const std::weak_ptr<StreamSocket> &socketWeak,
const Poco::Net::HTTPRequest& request)
{
@@ -260,7 +261,7 @@ bool AdminRequestHandler::handleInitialRequest(
if (request.find("Upgrade") != request.end() && Poco::icompare(request["Upgrade"], "websocket") == 0)
{
Admin &admin = Admin::instance();
- auto handler = std::make_shared<AdminRequestHandler>(&admin, socketWeak, request);
+ auto handler = std::make_shared<AdminSocketHandler>(&admin, socketWeak, request);
socket->setHandler(handler);
{ // FIXME: weird locking around subscribe ...
diff --git a/wsd/Admin.hpp b/wsd/Admin.hpp
index da51cdc8..d288658a 100644
--- a/wsd/Admin.hpp
+++ b/wsd/Admin.hpp
@@ -28,12 +28,12 @@
class Admin;
/// Handle admin client's Websocket requests & replies.
-class AdminRequestHandler : public WebSocketHandler
+class AdminSocketHandler : public WebSocketHandler
{
public:
- AdminRequestHandler(Admin* adminManager,
- const std::weak_ptr<StreamSocket>& socket,
- const Poco::Net::HTTPRequest& request);
+ AdminSocketHandler(Admin* adminManager,
+ const std::weak_ptr<StreamSocket>& socket,
+ const Poco::Net::HTTPRequest& request);
/// Handle the initial Admin WS upgrade request.
/// @returns true if we should give this socket to the Admin poll.
diff --git a/wsd/LOOLWSD.cpp b/wsd/LOOLWSD.cpp
index 9c5fb007..5ed485eb 100644
--- a/wsd/LOOLWSD.cpp
+++ b/wsd/LOOLWSD.cpp
@@ -1795,7 +1795,7 @@ private:
else if (reqPathSegs.size() >= 2 && reqPathSegs[0] == "lool" && reqPathSegs[1] == "adminws")
{
LOG_ERR("Admin request: " << request.getURI());
- if (AdminRequestHandler::handleInitialRequest(_socket, request))
+ if (AdminSocketHandler::handleInitialRequest(_socket, request))
{
// Hand the socket over to the Admin poll.
WebServerPoll.releaseSocket(socket);
commit 4bc71cc86dd5eaf50738a09173b379e5a1973959
Author: Michael Meeks <michael.meeks at collabora.com>
Date: Thu Mar 16 17:29:18 2017 +0000
Admin: remove debug.
diff --git a/wsd/Admin.cpp b/wsd/Admin.cpp
index f8d9f6f8..b3b4b765 100644
--- a/wsd/Admin.cpp
+++ b/wsd/Admin.cpp
@@ -239,7 +239,6 @@ AdminRequestHandler::AdminRequestHandler(Admin* adminManager,
void AdminRequestHandler::sendTextFrame(const std::string& message)
{
UnitWSD::get().onAdminQueryMessage(message);
- std::cerr << "Admin: send text frame '" << message << "'\n";
if (_isAuthenticated)
sendFrame(message);
else
commit 69feb165ddbab0c48ac4a6963d432f9ba7fc0d86
Author: Michael Meeks <michael.meeks at collabora.com>
Date: Thu Mar 16 17:23:42 2017 +0000
Remove websocket assert on performWrites.
Since commit 862d7a07342f1caad5a9474c480b06585c813bea
wsd: write as many messages to socket as possible:
This can be called even if hasQueuedWrites returns false.
diff --git a/net/WebSocketHandler.hpp b/net/WebSocketHandler.hpp
index 9a72f2a2..feff583b 100644
--- a/net/WebSocketHandler.hpp
+++ b/net/WebSocketHandler.hpp
@@ -225,6 +225,7 @@ public:
; // can have multiple msgs in one recv'd packet.
}
+ /// By default rely on the socket buffer.
bool hasQueuedWrites() const override
{
auto socket = _socket.lock();
@@ -233,10 +234,8 @@ public:
return false;
}
- void performWrites() override
- {
- assert(false && "performWrites not implemented");
- }
+ /// By default rely on the socket buffer.
+ void performWrites() override {}
/// Sends a WebSocket Text message.
void sendFrame(const std::string& msg) const
More information about the Libreoffice-commits
mailing list