/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
cloud/filestore/libs/daemon/server/config_initializer.cpp
47 строк
1 KB
Kirill Pleshivtsev
Refactor config handlers in filestore (#1758)
09 авг 2024, 18:04
Не верифицирован
09 авг 2024, 18:04
81834c5
Код
Авторство
О чём код?
#include "config_initializer.h" #include "options.h" #include <cloud/filestore/libs/server/config.h> #include <cloud/storage/core/libs/common/proto_helpers.h> namespace NCloud::NFileStore::NDaemon { //////////////////////////////////////////////////////////////////////////////// TConfigInitializerServer::TConfigInitializerServer(TOptionsServerPtr options) : TConfigInitializerCommon( {{"ServerAppConfig", bind_front(&TConfigInitializerServer::ApplyServerAppConfig, this)}}, options) , Options(std::move(options)) {} void TConfigInitializerServer::InitAppConfig() { if (Options->AppConfig) { ParseProtoTextFromFileRobust(Options->AppConfig, AppConfig); } auto& serverConfig = *AppConfig.MutableServerConfig(); if (Options->ServerPort) { serverConfig.SetPort(Options->ServerPort); } if (Options->SecureServerPort) { serverConfig.SetSecurePort(Options->SecureServerPort); } ServerConfig = std::make_shared<NServer::TServerConfig>(serverConfig); } void TConfigInitializerServer::ApplyServerAppConfig(const TString& text) { AppConfig.Clear(); ParseProtoTextFromStringRobust(text, AppConfig); ServerConfig = std::make_shared<NServer::TServerConfig>( AppConfig.GetServerConfig()); } } // namespace NCloud::NFileStore::NDaemon