24 using PoolMap = std::unordered_map<std::string, storages::mongo::PoolPtr>;
54 std::shared_ptr<PoolMap> pool_map_ptr_;
60 storages::
secdist::Secdist& secdist,
61 storages::mongo::PoolConfig pool_config,
63 dynamic_config::Source config_source
70 storages::mongo::PoolPtr
GetPool(
const std::string& dbalias)
const;
91 const std::string& GetName()
const {
return name_; }
94 void OnConfigUpdate(
const dynamic_config::Snapshot& config);
96 void OnSecdistUpdate(
const storages::
secdist::SecdistConfig& secdist);
98 storages::mongo::PoolPtr FindPool(
const std::string& dbalias)
const;
100 const std::string name_;
101 const storages::
secdist::Secdist& secdist_;
102 dynamic_config::Source config_source_;
103 const storages::mongo::PoolConfig pool_config_;
105 rcu::Variable<PoolMap> pool_map_;
108 concurrent::AsyncEventSubscriberScope config_subscriber_;
109 concurrent::AsyncEventSubscriberScope secdist_subscriber_;