X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fasyncstorageimpl.cpp;h=59d7b220557a719ea52224f0bcd02e2911fae4e3;hb=refs%2Fchanges%2F64%2F964%2F1;hp=b17fcbd0ee7c60c86c145c35b05673d853421232;hpb=ef2bf51d04aaf01fa0cabdcaf905b23423067662;p=ric-plt%2Fsdl.git diff --git a/src/asyncstorageimpl.cpp b/src/asyncstorageimpl.cpp index b17fcbd..59d7b22 100644 --- a/src/asyncstorageimpl.cpp +++ b/src/asyncstorageimpl.cpp @@ -23,11 +23,24 @@ #include "private/engine.hpp" #include "private/logger.hpp" #if HAVE_REDIS -#include "private/redis/asyncdatabasediscovery.hpp" #include "private/redis/asyncredisstorage.hpp" #endif using namespace shareddatalayer; +using namespace shareddatalayer::redis; + +namespace +{ + std::shared_ptr asyncDatabaseDiscoveryCreator(std::shared_ptr engine, + const DatabaseConfiguration& databaseConfiguration, + std::shared_ptr logger) + { + return AsyncDatabaseDiscovery::create(engine, + boost::none, + databaseConfiguration, + logger); + } +} AsyncStorageImpl::AsyncStorageImpl(std::shared_ptr engine, const boost::optional& pId, @@ -36,7 +49,8 @@ AsyncStorageImpl::AsyncStorageImpl(std::shared_ptr engine, databaseConfiguration(std::make_shared()), namespaceConfigurations(std::make_shared()), publisherId(pId), - logger(logger) + logger(logger), + asyncDatabaseDiscoveryCreator(::asyncDatabaseDiscoveryCreator) { ConfigurationReader configurationReader(logger); configurationReader.readDatabaseConfiguration(std::ref(*databaseConfiguration)); @@ -48,12 +62,14 @@ AsyncStorageImpl::AsyncStorageImpl(std::shared_ptr engine, const boost::optional& pId, std::shared_ptr databaseConfiguration, std::shared_ptr namespaceConfigurations, - std::shared_ptr logger): + std::shared_ptr logger, + const AsyncDatabaseDiscoveryCreator& asyncDatabaseDiscoveryCreator): engine(engine), databaseConfiguration(databaseConfiguration), namespaceConfigurations(namespaceConfigurations), publisherId(pId), - logger(logger) + logger(logger), + asyncDatabaseDiscoveryCreator(asyncDatabaseDiscoveryCreator) { } @@ -61,9 +77,8 @@ AsyncStorage& AsyncStorageImpl::getRedisHandler() { #if HAVE_REDIS static AsyncRedisStorage redisHandler{engine, - redis::AsyncDatabaseDiscovery::create( + asyncDatabaseDiscoveryCreator( engine, - boost::none, std::ref(*databaseConfiguration), logger), publisherId,