From 7b940a39dfef6f19846fe357d4a5167c66c79e85 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Sat, 8 Dec 2018 11:54:28 +0100 Subject: wanda: extract logging --- src/wandad.cpp | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) (limited to 'src/wandad.cpp') diff --git a/src/wandad.cpp b/src/wandad.cpp index e955beb..7321f04 100644 --- a/src/wandad.cpp +++ b/src/wandad.cpp @@ -2,15 +2,14 @@ #include "control_interface.hpp" #include "environment.hpp" #include "filesystem.hpp" +#include "logging.hpp" #include "optional.hpp" #include "setting.hpp" #include "wallpaper.hpp" #include "xdg.hpp" #include - #include -#include #include #include @@ -34,9 +33,8 @@ namespace struct listener : wanda::control_interface::listener { - listener(std::vector const & wallpapers, std::shared_ptr logger) + listener(std::vector const & wallpapers) : m_wallpapers{wallpapers} - , m_logger{logger} { } @@ -47,18 +45,17 @@ namespace case wanda::command_id::change: { auto wallpaper = wanda::random_pick(m_wallpapers); - m_logger->info("changing wallpaper to '{}'", wallpaper.native()); - wanda::set_wallpaper(wallpaper, m_logger); + wanda::get_logger()->info("changing wallpaper to '{}'", wallpaper.native()); + wanda::set_wallpaper(wallpaper); break; } default: - m_logger->error("received unknown command '{}'", static_cast(command.id)); + wanda::get_logger()->error("received unknown command '{}'", static_cast(command.id)); } } private: std::vector const & m_wallpapers; - std::shared_ptr m_logger; }; } // namespace @@ -67,20 +64,20 @@ int main() { using namespace wanda::std_ext; - auto log = spdlog::stdout_color_mt("wandad"); - log->info("wanda is starting up"); + wanda::initialize_logger(std::make_shared()); + wanda::get_logger()->info("wanda is starting up"); with(wanda::scan({"/usr/share/backgrounds"}, image_filter), [&](auto const & list) { auto service = asio::io_service{}; auto socket_path = wanda::xdg_path_for(wanda::xdg_directory::runtime_dir, wanda::environment{}) / ".wanda_interface"; - log->info("starting control interface on '{}'", socket_path.native()); - auto listener = ::listener{list, log}; - auto interface = wanda::make_interface(service, socket_path, listener, log); + wanda::get_logger()->info("starting control interface on '{}'", socket_path.native()); + auto listener = ::listener{list}; + auto interface = wanda::make_interface(service, socket_path, listener); if (!interface) { - log->error("failed to start control interface"); + wanda::get_logger()->error("failed to start control interface"); return; } @@ -99,9 +96,8 @@ int main() }); auto wallpaper = wanda::random_pick(list); - wanda::set_wallpaper(wallpaper, log); + wanda::set_wallpaper(wallpaper); service.run(); - }) || - [&] { log->error("wallpaper directory does not exist"); }; + }) || [&] { wanda::get_logger()->error("wallpaper directory does not exist"); }; } -- cgit v1.2.3