Line data Source code
1 : #pragma once 2 : 3 : #include <string> 4 : 5 : #include "envoy/server/hot_restart.h" 6 : 7 : #include "source/common/common/thread.h" 8 : #include "source/common/stats/allocator_impl.h" 9 : 10 : namespace Envoy { 11 : namespace Server { 12 : 13 : /** 14 : * No-op implementation of HotRestart. 15 : */ 16 : class HotRestartNopImpl : public Server::HotRestart { 17 : public: 18 : // Server::HotRestart 19 94 : void drainParentListeners() override {} 20 118 : int duplicateParentListenSocket(const std::string&, uint32_t) override { return -1; } 21 : void registerUdpForwardingListener(Network::Address::InstanceConstSharedPtr, 22 0 : std::shared_ptr<Network::UdpListenerConfig>) override {} 23 98 : void initialize(Event::Dispatcher&, Server::Instance&) override {} 24 98 : absl::optional<AdminShutdownResponse> sendParentAdminShutdownRequest() override { 25 98 : return absl::nullopt; 26 98 : } 27 98 : void sendParentTerminateRequest() override {} 28 192 : ServerStatsFromParent mergeParentStatsIfAny(Stats::StoreRoot&) override { return {}; } 29 98 : void shutdown() override {} 30 0 : uint32_t baseId() override { return 0; } 31 0 : std::string version() override { return "disabled"; } 32 0 : Thread::BasicLockable& logLock() override { return log_lock_; } 33 0 : Thread::BasicLockable& accessLogLock() override { return access_log_lock_; } 34 : 35 : private: 36 : Thread::MutexBasicLockable log_lock_; 37 : Thread::MutexBasicLockable access_log_lock_; 38 : }; 39 : 40 : } // namespace Server 41 : } // namespace Envoy