Line data Source code
1 : #include "source/server/instance_impl.h" 2 : 3 : #include "source/server/guarddog_impl.h" 4 : #include "source/server/overload_manager_impl.h" 5 : 6 : namespace Envoy { 7 : namespace Server { 8 132 : void InstanceImpl::maybeCreateHeapShrinker() { 9 132 : heap_shrinker_ = 10 132 : std::make_unique<Memory::HeapShrinker>(dispatcher(), overloadManager(), *stats().rootScope()); 11 132 : } 12 : 13 134 : std::unique_ptr<OverloadManager> InstanceImpl::createOverloadManager() { 14 134 : return std::make_unique<OverloadManagerImpl>( 15 134 : dispatcher(), *stats().rootScope(), threadLocal(), bootstrap().overload_manager(), 16 134 : messageValidationContext().staticValidationVisitor(), api(), options()); 17 134 : } 18 : 19 222 : std::unique_ptr<Server::GuardDog> InstanceImpl::maybeCreateGuardDog(absl::string_view name) { 20 222 : return std::make_unique<Server::GuardDogImpl>(*stats().rootScope(), 21 222 : config().mainThreadWatchdogConfig(), api(), name); 22 222 : } 23 : 24 : } // namespace Server 25 : } // namespace Envoy