Revert D36052198: Partially remove dependency on folly async
Differential Revision: D36052198 (ade685c621) Original commit changeset: 170d64a324a1 Original Phabricator Diff: D36052198 (ade685c621) fbshipit-source-id: 69d2b18e70a6267667432d6ed9dc1c5bc545b417
This commit is contained in:
committed by
Facebook GitHub Bot
parent
ade685c621
commit
3804ccf898
@@ -14,6 +14,7 @@
|
||||
#include <Flipper/Log.h>
|
||||
#include <folly/String.h>
|
||||
#include <folly/futures/Future.h>
|
||||
#include <folly/io/async/SSLContext.h>
|
||||
#include <folly/json.h>
|
||||
#include <websocketpp/common/memory.hpp>
|
||||
#include <websocketpp/common/thread.hpp>
|
||||
@@ -30,22 +31,22 @@ namespace flipper {
|
||||
WebSocketClient::WebSocketClient(
|
||||
FlipperConnectionEndpoint endpoint,
|
||||
std::unique_ptr<FlipperSocketBasePayload> payload,
|
||||
Scheduler* scheduler)
|
||||
folly::EventBase* eventBase)
|
||||
: WebSocketClient(
|
||||
std::move(endpoint),
|
||||
std::move(payload),
|
||||
scheduler,
|
||||
eventBase,
|
||||
nullptr) {}
|
||||
|
||||
WebSocketClient::WebSocketClient(
|
||||
FlipperConnectionEndpoint endpoint,
|
||||
std::unique_ptr<FlipperSocketBasePayload> payload,
|
||||
Scheduler* scheduler,
|
||||
folly::EventBase* eventBase,
|
||||
ConnectionContextStore* connectionContextStore)
|
||||
: BaseClient(
|
||||
std::move(endpoint),
|
||||
std::move(payload),
|
||||
scheduler,
|
||||
eventBase,
|
||||
connectionContextStore) {
|
||||
status_ = Status::Unconnected;
|
||||
|
||||
@@ -147,7 +148,7 @@ void WebSocketClient::disconnect() {
|
||||
thread_->join();
|
||||
}
|
||||
thread_ = nullptr;
|
||||
scheduler_->schedule(
|
||||
eventBase_->add(
|
||||
[eventHandler = eventHandler_]() { eventHandler(SocketEvent::CLOSE); });
|
||||
}
|
||||
|
||||
@@ -179,12 +180,12 @@ void WebSocketClient::send(
|
||||
void WebSocketClient::sendExpectResponse(
|
||||
const std::string& message,
|
||||
SocketSendExpectResponseHandler completion) {
|
||||
connection_->set_message_handler([completion, scheduler = scheduler_](
|
||||
websocketpp::connection_hdl hdl,
|
||||
SocketClient::message_ptr msg) {
|
||||
const std::string& payload = msg->get_payload();
|
||||
scheduler->schedule([completion, payload] { completion(payload, false); });
|
||||
});
|
||||
connection_->set_message_handler(
|
||||
[completion, eventBase = eventBase_](
|
||||
websocketpp::connection_hdl hdl, SocketClient::message_ptr msg) {
|
||||
const std::string& payload = msg->get_payload();
|
||||
eventBase->add([completion, payload] { completion(payload, false); });
|
||||
});
|
||||
websocketpp::lib::error_code ec;
|
||||
socket_.send(
|
||||
handle_,
|
||||
@@ -204,7 +205,7 @@ void WebSocketClient::onOpen(SocketClient* c, websocketpp::connection_hdl hdl) {
|
||||
}
|
||||
|
||||
status_ = Status::Initializing;
|
||||
scheduler_->schedule(
|
||||
eventBase_->add(
|
||||
[eventHandler = eventHandler_]() { eventHandler(SocketEvent::OPEN); });
|
||||
}
|
||||
|
||||
@@ -214,7 +215,7 @@ void WebSocketClient::onMessage(
|
||||
SocketClient::message_ptr msg) {
|
||||
const std::string& payload = msg->get_payload();
|
||||
if (messageHandler_) {
|
||||
scheduler_->schedule([payload, messageHandler = messageHandler_]() {
|
||||
eventBase_->add([payload, messageHandler = messageHandler_]() {
|
||||
messageHandler(payload);
|
||||
});
|
||||
}
|
||||
@@ -229,7 +230,7 @@ void WebSocketClient::onFail(SocketClient* c, websocketpp::connection_hdl hdl) {
|
||||
connected_.set_value(false);
|
||||
}
|
||||
status_ = Status::Failed;
|
||||
scheduler_->schedule(
|
||||
eventBase_->add(
|
||||
[eventHandler = eventHandler_]() { eventHandler(SocketEvent::ERROR); });
|
||||
}
|
||||
|
||||
@@ -237,7 +238,7 @@ void WebSocketClient::onClose(
|
||||
SocketClient* c,
|
||||
websocketpp::connection_hdl hdl) {
|
||||
status_ = Status::Closed;
|
||||
scheduler_->schedule(
|
||||
eventBase_->add(
|
||||
[eventHandler = eventHandler_]() { eventHandler(SocketEvent::CLOSE); });
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user