/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
cloud/blockstore/tools/nbd/bootstrap.h
72 строки
2 KB
yegorskii
Proper usage of ICertificateProvider interface (#6095)
03 июн 2026, 17:28
Не верифицирован
03 июн 2026, 17:28
2a84808
Код
Авторство
О чём код?
#pragma once #include "private.h" #include <cloud/blockstore/libs/client/public.h> #include <cloud/blockstore/libs/common/public.h> #include <cloud/blockstore/libs/diagnostics/public.h> #include <cloud/blockstore/libs/nbd/public.h> #include <cloud/blockstore/libs/service/public.h> #include <cloud/storage/core/libs/grpc/public.h> #include <library/cpp/logger/log.h> #include <util/network/socket.h> namespace NCloud::NBlockStore::NBD { //////////////////////////////////////////////////////////////////////////////// class TBootstrap { private: const TOptionsPtr Options; NClient::TClientAppConfigPtr ClientConfig; ITimerPtr Timer; ISchedulerPtr Scheduler; ILoggingServicePtr Logging; TLog GrpcLog; IMonitoringServicePtr Monitoring; IRequestStatsPtr RequestStats; IVolumeStatsPtr VolumeStats; IServerStatsPtr ClientStats; IStatsUpdaterPtr StatsUpdater; ICertificateProviderPtr CertificateProvider; NClient::IClientPtr Client; IBlockStorePtr ClientEndpoint; NClient::ISessionPtr Session; IServerPtr NbdServer; IDevicePtr NbdDevice; public: TBootstrap(TOptionsPtr options); ~TBootstrap(); void Init(); void Start(); void Stop(); private: void InitLWTrace(); void InitClientConfig(); void InitNullClient(); void InitControlClient(); void InitClientSession(); void StartNbdServer(TNetworkAddress listenAddress); void StopNbdServer(); void StartNbdEndpoint(); void StopNbdEndpoint(); }; } // namespace NCloud::NBlockStore::NBD