From: Arvin Schnell Date: Wed, 16 Mar 2022 14:21:21 +0000 (+0100) Subject: - coding style X-Git-Tag: v0.10.0~11^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F696%2Fhead;p=thirdparty%2Fsnapper.git - coding style --- diff --git a/server/Makefile.am b/server/Makefile.am index 009fe414..3b07eaa6 100644 --- a/server/Makefile.am +++ b/server/Makefile.am @@ -11,7 +11,8 @@ snapperd_SOURCES = \ Client.cc Client.h \ MetaSnapper.cc MetaSnapper.h \ Background.cc Background.h \ - Types.cc Types.h + Types.cc Types.h \ + RefCounter.cc RefCounter.h snapperd_LDADD = ../snapper/libsnapper.la ../dbus/libdbus.la -lrt snapperd_LDFLAGS = -lboost_system -lboost_thread -lpthread diff --git a/server/MetaSnapper.cc b/server/MetaSnapper.cc index 8068845f..fcf0027e 100644 --- a/server/MetaSnapper.cc +++ b/server/MetaSnapper.cc @@ -35,65 +35,6 @@ MetaSnappers meta_snappers; -RefCounter::RefCounter() - : last_used(steady_clock::now()) -{ -} - - -int -RefCounter::inc_use_count() -{ - boost::lock_guard lock(mutex); - - return ++counter; -} - - -int -RefCounter::dec_use_count() -{ - boost::lock_guard lock(mutex); - - assert(counter > 0); - - if (--counter == 0) - last_used = steady_clock::now(); - - return counter; -} - - -void -RefCounter::update_use_time() -{ - boost::lock_guard lock(mutex); - - last_used = steady_clock::now(); -} - - -int -RefCounter::use_count() const -{ - boost::lock_guard lock(mutex); - - return counter; -} - - -milliseconds -RefCounter::unused_for() const -{ - boost::lock_guard lock(mutex); - - if (counter != 0) - return milliseconds(0); - - return duration_cast(steady_clock::now() - last_used); -} - - MetaSnapper::MetaSnapper(ConfigInfo& config_info) : config_info(config_info) { diff --git a/server/MetaSnapper.h b/server/MetaSnapper.h index ef5d4073..4e47fd7f 100644 --- a/server/MetaSnapper.h +++ b/server/MetaSnapper.h @@ -25,57 +25,17 @@ #define SNAPPER_META_SNAPPER_H -#include #include #include +#include "RefCounter.h" + using namespace std; -using namespace std::chrono; using namespace snapper; -class RefCounter : private boost::noncopyable -{ -public: - - RefCounter(); - - int inc_use_count(); - int dec_use_count(); - void update_use_time(); - - int use_count() const; - milliseconds unused_for() const; - -private: - - mutable boost::mutex mutex; - - int counter = 0; - - steady_clock::time_point last_used; - -}; - - -class RefHolder -{ -public: - - RefHolder(RefCounter& ref) : ref(ref) - { ref.inc_use_count(); } - ~RefHolder() - { ref.dec_use_count(); } - -private: - - RefCounter& ref; - -}; - - struct UnknownConfig : public Exception { explicit UnknownConfig() : Exception("unknown config") {} diff --git a/server/RefCounter.cc b/server/RefCounter.cc new file mode 100644 index 00000000..5af0083c --- /dev/null +++ b/server/RefCounter.cc @@ -0,0 +1,82 @@ +/* + * Copyright (c) [2012-2015] Novell, Inc. + * + * All Rights Reserved. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, contact Novell, Inc. + * + * To contact Novell about this file by physical or electronic mail, you may + * find current contact information at www.novell.com. + */ + + +#include "RefCounter.h" + + +RefCounter::RefCounter() + : last_used(steady_clock::now()) +{ +} + + +int +RefCounter::inc_use_count() +{ + boost::lock_guard lock(mutex); + + return ++counter; +} + + +int +RefCounter::dec_use_count() +{ + boost::lock_guard lock(mutex); + + assert(counter > 0); + + if (--counter == 0) + last_used = steady_clock::now(); + + return counter; +} + + +void +RefCounter::update_use_time() +{ + boost::lock_guard lock(mutex); + + last_used = steady_clock::now(); +} + + +int +RefCounter::use_count() const +{ + boost::lock_guard lock(mutex); + + return counter; +} + + +milliseconds +RefCounter::unused_for() const +{ + boost::lock_guard lock(mutex); + + if (counter != 0) + return milliseconds(0); + + return duration_cast(steady_clock::now() - last_used); +} diff --git a/server/RefCounter.h b/server/RefCounter.h new file mode 100644 index 00000000..6e7e3dc5 --- /dev/null +++ b/server/RefCounter.h @@ -0,0 +1,75 @@ +/* + * Copyright (c) [2012-2015] Novell, Inc. + * + * All Rights Reserved. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, contact Novell, Inc. + * + * To contact Novell about this file by physical or electronic mail, you may + * find current contact information at www.novell.com. + */ + +#ifndef SNAPPER_REF_COUNTER_H +#define SNAPPER_REF_COUNTER_H + + +#include +#include +#include + + +using namespace std::chrono; + + +class RefCounter : private boost::noncopyable +{ +public: + + RefCounter(); + + int inc_use_count(); + int dec_use_count(); + void update_use_time(); + + int use_count() const; + milliseconds unused_for() const; + +private: + + mutable boost::mutex mutex; + + int counter = 0; + + steady_clock::time_point last_used; + +}; + + +class RefHolder +{ +public: + + RefHolder(RefCounter& ref) : ref(ref) + { ref.inc_use_count(); } + + ~RefHolder() + { ref.dec_use_count(); } + +private: + + RefCounter& ref; + +}; + + +#endif diff --git a/server/Types.h b/server/Types.h index 0f8bad93..114ff2d6 100644 --- a/server/Types.h +++ b/server/Types.h @@ -27,7 +27,6 @@ #include #include -#include #include #include @@ -36,7 +35,6 @@ using std::string; -using std::list; using namespace snapper; diff --git a/zypp-plugin/Makefile.am b/zypp-plugin/Makefile.am index cdfc38c2..c37f0491 100644 --- a/zypp-plugin/Makefile.am +++ b/zypp-plugin/Makefile.am @@ -12,36 +12,37 @@ plugin_PROGRAMS = snapper-zypp-plugin AM_CPPFLAGS = $(DBUS_CFLAGS) $(XML2_CFLAGS) $(JSONC_CFLAGS) snapper_zypp_plugin_SOURCES = \ - snapper_zypp_plugin.cc \ - solvable_matcher.cc solvable_matcher.h \ - zypp_commit_plugin.cc zypp_commit_plugin.h \ - zypp_plugin.cc zypp_plugin.h + snapper_zypp_plugin.cc \ + solvable_matcher.cc solvable_matcher.h \ + zypp_commit_plugin.cc zypp_commit_plugin.h \ + zypp_plugin.cc zypp_plugin.h snapper_zypp_plugin_LDADD = \ - ../client/libclient.la \ - ../snapper/libsnapper.la \ - ../dbus/libdbus.la \ - $(JSONC_LIBS) + ../client/libclient.la \ + ../snapper/libsnapper.la \ + ../dbus/libdbus.la \ + $(JSONC_LIBS) check_PROGRAMS = solvable_matcher.test forwarding-zypp-plugin forwarding_zypp_plugin_SOURCES = \ - forwarding_zypp_plugin.cc \ - zypp_plugin.cc zypp_plugin.h + forwarding_zypp_plugin.cc \ + zypp_plugin.cc zypp_plugin.h forwarding_zypp_plugin_LDADD = \ - ../snapper/libsnapper.la \ - -lboost_system \ - -lpthread + ../snapper/libsnapper.la \ + -lboost_system \ + -lpthread TESTS = solvable_matcher.test -solvable_matcher_test_SOURCES = solvable_matcher_test.cc \ - solvable_matcher.cc solvable_matcher.h +solvable_matcher_test_SOURCES = \ + solvable_matcher_test.cc \ + solvable_matcher.cc solvable_matcher.h solvable_matcher_test_LDADD = \ - ../snapper/libsnapper.la \ - $(XML2_LIBS) \ - -lboost_unit_test_framework + ../snapper/libsnapper.la \ + $(XML2_LIBS) \ + -lboost_unit_test_framework endif