reload.cpp 745 Bytes
Newer Older
1 2
#include <utils/reload.hpp>
#include <database/database.hpp>
3
#include <config/config.hpp>
4
#include <utils/xdg.hpp>
5 6
#include <logger/logger.hpp>

7 8 9 10 11 12 13 14
void open_database()
{
  const auto db_filename = Config::get("db_name", xdg_data_path("biboumi.sqlite"));
  log_info("Opening database: ", db_filename);
  Database::open(db_filename);
  log_info("database successfully opened.");
}

15 16
void reload_process()
{
17
  Config::read_conf();
18 19 20
  // Destroy the logger instance, to be recreated the next time a log
  // line needs to be written
  Logger::instance().reset();
21 22 23 24 25 26
  log_info("Configuration and logger reloaded.");
  try {
      open_database();
    } catch (const litesql::DatabaseError&) {
      log_warning("Re-using the previous database.");
    }
27
}
28