diff options
Diffstat (limited to 'src/mongo/transport/transport_layer.h')
-rw-r--r-- | src/mongo/transport/transport_layer.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/mongo/transport/transport_layer.h b/src/mongo/transport/transport_layer.h index ca1453cb3a4..0b736ba600f 100644 --- a/src/mongo/transport/transport_layer.h +++ b/src/mongo/transport/transport_layer.h @@ -109,17 +109,21 @@ public: enum WhichReactor { kIngress, kEgress, kNewReactor }; virtual ReactorHandle getReactor(WhichReactor which) = 0; - virtual BatonHandle makeBaton(OperationContext* opCtx) { - return nullptr; + virtual BatonHandle makeBaton(OperationContext* opCtx) const { + return makeDefaultBaton(opCtx); } protected: TransportLayer() = default; + +private: + static BatonHandle makeDefaultBaton(OperationContext* opCtx); }; class ReactorTimer { public: - ReactorTimer() = default; + ReactorTimer(); + ReactorTimer(const ReactorTimer&) = delete; ReactorTimer& operator=(const ReactorTimer&) = delete; @@ -128,6 +132,10 @@ public: */ virtual ~ReactorTimer() = default; + size_t id() const { + return _id; + } + /* * Cancel any outstanding future from waitFor/waitUntil. The future will be filled with an * ErrorCodes::CallbackCancelled status. @@ -142,6 +150,9 @@ public: * Calling this implicitly calls cancel(). */ virtual Future<void> waitUntil(Date_t deadline, const BatonHandle& baton = nullptr) = 0; + +private: + const size_t _id; }; class Reactor { |