From 807a6e90f883b633abb72ae48f9d2fb1572dc296 Mon Sep 17 00:00:00 2001 From: "Scott E. Graves" Date: Fri, 24 Jan 2025 09:38:43 -0600 Subject: [PATCH] refactor event system --- .../src/providers/base_provider.cpp | 48 +++++++++-------- .../providers/encrypt/encrypt_provider.cpp | 51 +++++++++++-------- 2 files changed, 55 insertions(+), 44 deletions(-) diff --git a/repertory/librepertory/src/providers/base_provider.cpp b/repertory/librepertory/src/providers/base_provider.cpp index de409c8b..2c7501c2 100644 --- a/repertory/librepertory/src/providers/base_provider.cpp +++ b/repertory/librepertory/src/providers/base_provider.cpp @@ -69,8 +69,8 @@ void base_provider::add_all_items(stop_type &stop_requested) { } auto base_provider::create_api_file(std::string path, std::string key, - std::uint64_t size, - std::uint64_t file_time) -> api_file { + std::uint64_t size, std::uint64_t file_time) + -> api_file { api_file file{}; file.api_path = utils::path::create_api_path(path); file.api_parent = utils::path::get_parent_api_path(file.api_path); @@ -102,8 +102,8 @@ auto base_provider::create_api_file(std::string path, std::uint64_t size, } auto base_provider::create_directory_clone_source_meta( - const std::string &source_api_path, - const std::string &api_path) -> api_error { + const std::string &source_api_path, const std::string &api_path) + -> api_error { REPERTORY_USES_FUNCTION_NAME(); bool exists{}; @@ -201,8 +201,8 @@ auto base_provider::create_directory(const std::string &api_path, return api_error::error; } -auto base_provider::create_file(const std::string &api_path, - api_meta_map &meta) -> api_error { +auto base_provider::create_file(const std::string &api_path, api_meta_map &meta) + -> api_error { REPERTORY_USES_FUNCTION_NAME(); try { @@ -259,8 +259,9 @@ auto base_provider::create_file(const std::string &api_path, return api_error::error; } -auto base_provider::get_api_path_from_source( - const std::string &source_path, std::string &api_path) const -> api_error { +auto base_provider::get_api_path_from_source(const std::string &source_path, + std::string &api_path) const + -> api_error { REPERTORY_USES_FUNCTION_NAME(); if (source_path.empty()) { @@ -273,8 +274,9 @@ auto base_provider::get_api_path_from_source( return db3_->get_api_path(source_path, api_path); } -auto base_provider::get_directory_items( - const std::string &api_path, directory_item_list &list) const -> api_error { +auto base_provider::get_directory_items(const std::string &api_path, + directory_item_list &list) const + -> api_error { REPERTORY_USES_FUNCTION_NAME(); try { @@ -338,9 +340,10 @@ auto base_provider::get_file_size(const std::string &api_path, return api_error::success; } -auto base_provider::get_filesystem_item( - const std::string &api_path, bool directory, - filesystem_item &fsi) const -> api_error { +auto base_provider::get_filesystem_item(const std::string &api_path, + bool directory, + filesystem_item &fsi) const + -> api_error { bool exists{}; auto res = is_directory(api_path, exists); if (res != api_error::success) { @@ -373,9 +376,10 @@ auto base_provider::get_filesystem_item( return api_error::success; } -auto base_provider::get_filesystem_item_and_file( - const std::string &api_path, api_file &file, - filesystem_item &fsi) const -> api_error { +auto base_provider::get_filesystem_item_and_file(const std::string &api_path, + api_file &file, + filesystem_item &fsi) const + -> api_error { auto res = get_file(api_path, file); if (res != api_error::success) { return res; @@ -510,7 +514,7 @@ void base_provider::process_removed_files(std::deque removed_list, '_' + parts[parts.size() - 1U]}); event_system::instance().raise(function_name, - item.source_path); + item.source_path); if (not utils::file::reset_modified_time(item.source_path)) { event_system::instance().raise( orphaned_file, @@ -536,8 +540,8 @@ void base_provider::process_removed_files(std::deque removed_list, } db3_->remove_api_path(item.api_path); - event_system::instance().raise(item.api_path, - item.source_path); + event_system::instance().raise( + item.api_path, function_name, item.source_path); } } @@ -630,7 +634,7 @@ auto base_provider::remove_file(const std::string &api_path) -> api_error { event_system::instance().raise(api_path, function_name); } else { event_system::instance().raise(api_path, error, - function_name); + function_name); } return error; @@ -677,10 +681,10 @@ auto base_provider::remove_directory(const std::string &api_path) -> api_error { const auto notify_end = [&api_path](api_error error) -> api_error { if (error == api_error::success) { event_system::instance().raise(api_path, - function_name); + function_name); } else { event_system::instance().raise(api_path, error, - function_name); + function_name); } return error; }; diff --git a/repertory/librepertory/src/providers/encrypt/encrypt_provider.cpp b/repertory/librepertory/src/providers/encrypt/encrypt_provider.cpp index 57d9b202..a33b9c3e 100644 --- a/repertory/librepertory/src/providers/encrypt/encrypt_provider.cpp +++ b/repertory/librepertory/src/providers/encrypt/encrypt_provider.cpp @@ -45,9 +45,10 @@ namespace repertory { encrypt_provider::encrypt_provider(app_config &config) : config_(config), encrypt_config_(config.get_encrypt_config()) {} -auto encrypt_provider::create_api_file( - const std::string &api_path, bool directory, - const std::string &source_path) -> api_file { +auto encrypt_provider::create_api_file(const std::string &api_path, + bool directory, + const std::string &source_path) + -> api_file { auto times{utils::file::get_times(source_path)}; if (not times.has_value()) { throw std::runtime_error("failed to get file times"); @@ -73,10 +74,10 @@ auto encrypt_provider::create_api_file( void encrypt_provider::create_item_meta(api_meta_map &meta, bool directory, const api_file &file) { #if defined(_WIN32) - struct _stat64 buf {}; + struct _stat64 buf{}; _stat64(file.source_path.c_str(), &buf); #else // !defined(_WIN32) - struct stat buf {}; + struct stat buf{}; stat(file.source_path.c_str(), &buf); #endif // defined(_WIN32) @@ -156,8 +157,9 @@ auto encrypt_provider::do_fs_operation( return callback(cfg, source_path); } -auto encrypt_provider::get_api_path_from_source( - const std::string &source_path, std::string &api_path) const -> api_error { +auto encrypt_provider::get_api_path_from_source(const std::string &source_path, + std::string &api_path) const + -> api_error { REPERTORY_USES_FUNCTION_NAME(); try { @@ -197,8 +199,9 @@ auto encrypt_provider::get_directory_item_count( return count; } -auto encrypt_provider::get_directory_items( - const std::string &api_path, directory_item_list &list) const -> api_error { +auto encrypt_provider::get_directory_items(const std::string &api_path, + directory_item_list &list) const + -> api_error { REPERTORY_USES_FUNCTION_NAME(); return do_fs_operation( @@ -331,8 +334,9 @@ auto encrypt_provider::get_file(const std::string &api_path, return api_error::error; } -auto encrypt_provider::get_file_list( - api_file_list &list, std::string & /* marker */) const -> api_error { +auto encrypt_provider::get_file_list(api_file_list &list, + std::string & /* marker */) const + -> api_error { REPERTORY_USES_FUNCTION_NAME(); const auto &cfg{get_encrypt_config()}; @@ -355,8 +359,9 @@ auto encrypt_provider::get_file_list( return api_error::error; } -auto encrypt_provider::get_file_size( - const std::string &api_path, std::uint64_t &file_size) const -> api_error { +auto encrypt_provider::get_file_size(const std::string &api_path, + std::uint64_t &file_size) const + -> api_error { REPERTORY_USES_FUNCTION_NAME(); try { @@ -377,9 +382,10 @@ auto encrypt_provider::get_file_size( return api_error::error; } -auto encrypt_provider::get_filesystem_item( - const std::string &api_path, bool directory, - filesystem_item &fsi) const -> api_error { +auto encrypt_provider::get_filesystem_item(const std::string &api_path, + bool directory, + filesystem_item &fsi) const + -> api_error { std::string source_path; if (directory) { auto result{db_->get_directory_source_path(api_path, source_path)}; @@ -430,9 +436,10 @@ auto encrypt_provider::get_filesystem_item_from_source_path( return get_filesystem_item(api_path, false, fsi); } -auto encrypt_provider::get_filesystem_item_and_file( - const std::string &api_path, api_file &file, - filesystem_item &fsi) const -> api_error { +auto encrypt_provider::get_filesystem_item_and_file(const std::string &api_path, + api_file &file, + filesystem_item &fsi) const + -> api_error { REPERTORY_USES_FUNCTION_NAME(); try { @@ -558,8 +565,8 @@ auto encrypt_provider::is_directory(const std::string &api_path, return api_error::error; } -auto encrypt_provider::is_file(const std::string &api_path, - bool &exists) const -> api_error { +auto encrypt_provider::is_file(const std::string &api_path, bool &exists) const + -> api_error { REPERTORY_USES_FUNCTION_NAME(); try { @@ -854,7 +861,7 @@ void encrypt_provider::remove_deleted_files(stop_type &stop_requested) { } event_system::instance().raise( - item.api_path, item.source_path); + item.api_path, function_name, item.source_path); } }, get_stop_requested);