diff --git a/quic/api/QuicBatchWriter.h b/quic/api/QuicBatchWriter.h index 33a286f2d..1877ad4af 100644 --- a/quic/api/QuicBatchWriter.h +++ b/quic/api/QuicBatchWriter.h @@ -11,6 +11,7 @@ #include #include #include +#include #include namespace quic { @@ -30,7 +31,7 @@ class BatchWriter { } } - FOLLY_NODISCARD folly::EventBase* evb() const { + FOLLY_NODISCARD QuicEventBase* evb() const { return evb_; } @@ -66,7 +67,7 @@ class BatchWriter { const folly::SocketAddress& address) = 0; protected: - folly::EventBase* evb_{nullptr}; + QuicEventBase* evb_{nullptr}; int fd_{-1}; }; diff --git a/quic/api/QuicSocket.h b/quic/api/QuicSocket.h index 1374d7205..0a2cc28c3 100644 --- a/quic/api/QuicSocket.h +++ b/quic/api/QuicSocket.h @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include diff --git a/quic/api/QuicStreamAsyncTransport.cpp b/quic/api/QuicStreamAsyncTransport.cpp index c30af3209..b2db4bebf 100644 --- a/quic/api/QuicStreamAsyncTransport.cpp +++ b/quic/api/QuicStreamAsyncTransport.cpp @@ -277,12 +277,11 @@ bool QuicStreamAsyncTransport::error() const { return bool(ex_); } -folly::EventBase* QuicStreamAsyncTransport::getEventBase() const { +QuicEventBase* QuicStreamAsyncTransport::getEventBase() const { return sock_->getEventBase(); } -void QuicStreamAsyncTransport::attachEventBase( - folly::EventBase* /*eventBase*/) { +void QuicStreamAsyncTransport::attachEventBase(QuicEventBase* /*eventBase*/) { LOG(FATAL) << "Does QUICSocket support this?"; } diff --git a/quic/api/QuicStreamAsyncTransport.h b/quic/api/QuicStreamAsyncTransport.h index 33eaa1612..086a6d7b5 100644 --- a/quic/api/QuicStreamAsyncTransport.h +++ b/quic/api/QuicStreamAsyncTransport.h @@ -9,6 +9,7 @@ #include #include +#include namespace quic { @@ -19,7 +20,7 @@ namespace quic { class QuicStreamAsyncTransport : public folly::AsyncTransport, public QuicSocket::ReadCallback, public QuicSocket::WriteCallback, - public folly::EventBase::LoopCallback { + public QuicEventBase::LoopCallback { public: using UniquePtr = std::unique_ptr< QuicStreamAsyncTransport, @@ -138,7 +139,7 @@ class QuicStreamAsyncTransport : public folly::AsyncTransport, void onStreamWriteError(StreamId /*id*/, QuicError error) noexcept override; // - // folly::EventBase::LoopCallback overrides + // QuicEventBase::LoopCallback overrides // void runLoopCallback() noexcept override; diff --git a/quic/api/QuicTransportBase.h b/quic/api/QuicTransportBase.h index 80b45c514..dad25da11 100644 --- a/quic/api/QuicTransportBase.h +++ b/quic/api/QuicTransportBase.h @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include @@ -839,7 +840,7 @@ class QuicTransportBase : public QuicSocket, QuicStreamPrioritiesObserver { */ folly::Optional getAdditionalCmsgsForAsyncUDPSocket(); - std::atomic evb_; + std::atomic evb_; std::unique_ptr socket_; ConnectionSetupCallback* connSetupCallback_{nullptr}; ConnectionCallback* connCallback_{nullptr}; diff --git a/quic/api/test/Mocks.h b/quic/api/test/Mocks.h index 499bc2fb6..c41db2a34 100644 --- a/quic/api/test/Mocks.h +++ b/quic/api/test/Mocks.h @@ -9,11 +9,11 @@ #include -#include #include #include #include #include +#include #include #include #include diff --git a/quic/api/test/QuicTransportBaseTest.cpp b/quic/api/test/QuicTransportBaseTest.cpp index b1ce65671..cc54761a1 100644 --- a/quic/api/test/QuicTransportBaseTest.cpp +++ b/quic/api/test/QuicTransportBaseTest.cpp @@ -568,7 +568,7 @@ class TestQuicTransport class QuicTransportImplTest : public Test { public: void SetUp() override { - evb = std::make_unique(); + evb = std::make_unique(); auto socket = std::make_unique>(evb.get()); socketPtr = socket.get(); @@ -601,7 +601,7 @@ class QuicTransportImplTest : public Test { } protected: - std::unique_ptr evb; + std::unique_ptr evb; NiceMock connSetupCallback; NiceMock connCallback; TestByteEventCallback byteEventCallback; @@ -4111,7 +4111,7 @@ TEST_P(QuicTransportImplTestBase, ObserverDetachAndAttachEvb) { // check the current event base and create a new one EXPECT_EQ(evb.get(), transport->getEventBase()); - folly::EventBase evb2; + QuicEventBase evb2; // Detach the event base evb EXPECT_CALL(*obs1, evbDetach(transport.get(), evb.get())).Times(0); diff --git a/quic/api/test/TestQuicTransport.h b/quic/api/test/TestQuicTransport.h index 96e656790..222ae9f89 100644 --- a/quic/api/test/TestQuicTransport.h +++ b/quic/api/test/TestQuicTransport.h @@ -9,6 +9,7 @@ #include #include +#include #include #include #include diff --git a/quic/common/Events.h b/quic/common/Events.h new file mode 100644 index 000000000..c186a0024 --- /dev/null +++ b/quic/common/Events.h @@ -0,0 +1,16 @@ +/* + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +#pragma once + +#include + +namespace quic { + +using QuicEventBase = folly::EventBase; + +} // namespace quic diff --git a/quic/common/FunctionLooper.cpp b/quic/common/FunctionLooper.cpp index 794d03cd1..a32429524 100644 --- a/quic/common/FunctionLooper.cpp +++ b/quic/common/FunctionLooper.cpp @@ -13,7 +13,7 @@ namespace quic { using namespace std::chrono_literals; FunctionLooper::FunctionLooper( - folly::EventBase* evb, + QuicEventBase* evb, folly::Function&& func, LooperType type) : evb_(evb), func_(std::move(func)), type_(type) {} @@ -112,7 +112,7 @@ bool FunctionLooper::isRunning() const { return running_; } -void FunctionLooper::attachEventBase(folly::EventBase* evb) { +void FunctionLooper::attachEventBase(QuicEventBase* evb) { VLOG(10) << __func__ << ": " << type_; DCHECK(!evb_); DCHECK(evb && evb->isInEventBaseThread()); diff --git a/quic/common/FunctionLooper.h b/quic/common/FunctionLooper.h index a824c88a3..034e15702 100644 --- a/quic/common/FunctionLooper.h +++ b/quic/common/FunctionLooper.h @@ -9,8 +9,8 @@ #include #include -#include #include +#include #include namespace quic { @@ -27,7 +27,7 @@ std::ostream& operator<<(std::ostream& /* out */, const LooperType& /*rhs*/); * in multiple evb loops. Calling run() will cause the loop to start and stop() * will call the loop to stop. */ -class FunctionLooper : public folly::EventBase::LoopCallback, +class FunctionLooper : public QuicEventBase::LoopCallback, public folly::DelayedDestruction, public TimerHighRes::Callback { public: @@ -35,7 +35,7 @@ class FunctionLooper : public folly::EventBase::LoopCallback, std::unique_ptr; explicit FunctionLooper( - folly::EventBase* evb, + QuicEventBase* evb, folly::Function&& func, LooperType type); @@ -69,7 +69,7 @@ class FunctionLooper : public folly::EventBase::LoopCallback, * Attaches a new event base to the function looper. Must be invoked on the * evb that the looper is to be attached to. */ - void attachEventBase(folly::EventBase* evb); + void attachEventBase(QuicEventBase* evb); /** * Detaches the current event base from the function looper. Must be called on @@ -96,7 +96,7 @@ class FunctionLooper : public folly::EventBase::LoopCallback, void commonLoopBody() noexcept; bool schedulePacingTimeout() noexcept; - folly::EventBase* evb_; + QuicEventBase* evb_; folly::Function func_; folly::Optional> pacingFunc_; TimerHighRes::SharedPtr pacingTimer_; diff --git a/quic/fizz/client/test/QuicClientTransportTestUtil.h b/quic/fizz/client/test/QuicClientTransportTestUtil.h index 28a451d8e..8283b9db4 100644 --- a/quic/fizz/client/test/QuicClientTransportTestUtil.h +++ b/quic/fizz/client/test/QuicClientTransportTestUtil.h @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include diff --git a/quic/happyeyeballs/QuicHappyEyeballsFunctions.cpp b/quic/happyeyeballs/QuicHappyEyeballsFunctions.cpp index 272b304d5..4a85a3e59 100644 --- a/quic/happyeyeballs/QuicHappyEyeballsFunctions.cpp +++ b/quic/happyeyeballs/QuicHappyEyeballsFunctions.cpp @@ -14,7 +14,6 @@ #include #include #include -#include #include #include #include @@ -65,7 +64,7 @@ void happyEyeballsAddSocket( void startHappyEyeballs( QuicClientConnectionState& connection, - folly::EventBase* evb, + QuicEventBase* evb, sa_family_t cachedFamily, folly::HHWheelTimer::Callback& connAttemptDelayTimeout, std::chrono::milliseconds connAttempDelay, diff --git a/quic/happyeyeballs/QuicHappyEyeballsFunctions.h b/quic/happyeyeballs/QuicHappyEyeballsFunctions.h index 00ff29a54..068794495 100644 --- a/quic/happyeyeballs/QuicHappyEyeballsFunctions.h +++ b/quic/happyeyeballs/QuicHappyEyeballsFunctions.h @@ -8,6 +8,7 @@ #pragma once #include +#include #include #include @@ -34,7 +35,7 @@ void happyEyeballsAddSocket( void startHappyEyeballs( QuicClientConnectionState& connection, - folly::EventBase* evb, + QuicEventBase* evb, sa_family_t cachedFamily, folly::HHWheelTimer::Callback& connAttemptDelayTimeout, std::chrono::milliseconds connAttemptDelay, diff --git a/quic/samples/echo/EchoHandler.h b/quic/samples/echo/EchoHandler.h index dec85e2db..685e0414f 100644 --- a/quic/samples/echo/EchoHandler.h +++ b/quic/samples/echo/EchoHandler.h @@ -9,7 +9,6 @@ #include -#include #include namespace quic { diff --git a/quic/state/QuicTransportStatsCallback.h b/quic/state/QuicTransportStatsCallback.h index ff344c683..824f59f03 100644 --- a/quic/state/QuicTransportStatsCallback.h +++ b/quic/state/QuicTransportStatsCallback.h @@ -9,7 +9,6 @@ #include #include -#include #include #include diff --git a/quic/state/test/MockQuicStats.h b/quic/state/test/MockQuicStats.h index e5730deeb..18e778757 100644 --- a/quic/state/test/MockQuicStats.h +++ b/quic/state/test/MockQuicStats.h @@ -7,7 +7,6 @@ #pragma once -#include #include #include diff --git a/quic/tools/tperf/TperfDSRSender.h b/quic/tools/tperf/TperfDSRSender.h index 785a735bf..9798abb1d 100644 --- a/quic/tools/tperf/TperfDSRSender.h +++ b/quic/tools/tperf/TperfDSRSender.h @@ -7,7 +7,6 @@ #include #include -#include #include #include #include