summaryrefslogtreecommitdiff
path: root/louloulibs
diff options
context:
space:
mode:
Diffstat (limited to 'louloulibs')
-rw-r--r--louloulibs/utils/reload.cpp19
-rw-r--r--louloulibs/utils/reload.hpp8
2 files changed, 19 insertions, 8 deletions
diff --git a/louloulibs/utils/reload.cpp b/louloulibs/utils/reload.cpp
index bddfd86..7125a75 100644
--- a/louloulibs/utils/reload.cpp
+++ b/louloulibs/utils/reload.cpp
@@ -1,11 +1,28 @@
+#include <utils/reload.hpp>
+#include <database/database.hpp>
#include <config/config.hpp>
+#include <utils/xdg.hpp>
#include <logger/logger.hpp>
+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.");
+}
+
void reload_process()
{
Config::read_conf();
// Destroy the logger instance, to be recreated the next time a log
// line needs to be written
Logger::instance().reset();
- log_debug("Configuration and logger reloaded.");
+ log_info("Configuration and logger reloaded.");
+ try {
+ open_database();
+ } catch (const litesql::DatabaseError&) {
+ log_warning("Re-using the previous database.");
+ }
}
+
diff --git a/louloulibs/utils/reload.hpp b/louloulibs/utils/reload.hpp
index 6a56acd..408426a 100644
--- a/louloulibs/utils/reload.hpp
+++ b/louloulibs/utils/reload.hpp
@@ -1,10 +1,4 @@
#pragma once
-
-/**
- * Reload the server's configuration, and close the logger (so that it
- * closes its files etc, to take into account the new configuration)
- */
+void open_database();
void reload_process();
-
-