std::unique_ptr <Database> make_Database (std::string const& name, Scheduler& scheduler, Journal journal, Parameters const& backendParameters, Parameters fastBackendParameters) { std::unique_ptr <Backend> backend (make_Backend ( backendParameters, scheduler, journal)); std::unique_ptr <Backend> fastBackend ( (fastBackendParameters.size () > 0) ? make_Backend (fastBackendParameters, scheduler, journal) : nullptr); return std::make_unique <DatabaseImp> (name, scheduler, std::move (backend), std::move (fastBackend), journal); }
std::unique_ptr <Database> ManagerImp::make_Database ( std::string const& name, Scheduler& scheduler, beast::Journal journal, int readThreads, Section const& backendParameters, Section fastBackendParameters) { std::unique_ptr <Backend> backend (make_Backend ( backendParameters, scheduler, journal)); std::unique_ptr <Backend> fastBackend ( (fastBackendParameters.size () > 0) ? make_Backend (fastBackendParameters, scheduler, journal) : nullptr); return std::make_unique <DatabaseImp> (name, scheduler, readThreads, std::move (backend), std::move (fastBackend), journal); }