This is an automated email from the ASF dual-hosted git repository.

swebb2066 pushed a commit to branch reduce_apr_influence
in repository https://gitbox.apache.org/repos/asf/logging-log4cxx.git

commit 80bbd0758101980916a7317a3b1976585a53ad00
Author: Stephen Webb <[email protected]>
AuthorDate: Sun Nov 19 16:21:00 2023 +1100

    The FileWatchDog thread no longer uses APR threads
---
 src/main/cpp/class.cpp                |  2 --
 src/main/cpp/domconfigurator.cpp      | 22 ----------------------
 src/main/cpp/optionconverter.cpp      |  6 +-----
 src/main/cpp/propertyconfigurator.cpp |  2 --
 4 files changed, 1 insertion(+), 31 deletions(-)

diff --git a/src/main/cpp/class.cpp b/src/main/cpp/class.cpp
index 18a5c4b2..ced24e34 100644
--- a/src/main/cpp/class.cpp
+++ b/src/main/cpp/class.cpp
@@ -171,9 +171,7 @@ bool Class::registerClass(const Class& newClass)
 
 void Class::registerClasses()
 {
-#if APR_HAS_THREADS
        AsyncAppender::registerClass();
-#endif
        ConsoleAppender::registerClass();
        FileAppender::registerClass();
        LOG4CXX_NS::db::ODBCAppender::registerClass();
diff --git a/src/main/cpp/domconfigurator.cpp b/src/main/cpp/domconfigurator.cpp
index f7bc5067..186100c9 100644
--- a/src/main/cpp/domconfigurator.cpp
+++ b/src/main/cpp/domconfigurator.cpp
@@ -65,7 +65,6 @@ struct DOMConfigurator::DOMConfiguratorPrivate
        spi::LoggerFactoryPtr loggerFactory;
 };
 
-#if APR_HAS_THREADS
 namespace LOG4CXX_NS
 {
 namespace xml
@@ -90,7 +89,6 @@ class XMLWatchdog  : public FileWatchdog
 }
 }
 XMLWatchdog* DOMConfigurator::xdog = NULL;
-#endif
 
 
 IMPLEMENT_LOG4CXX_OBJECT(DOMConfigurator)
@@ -911,8 +909,6 @@ spi::ConfigurationStatus 
DOMConfigurator::configureAndWatch(const CFStringRef& f
 spi::ConfigurationStatus DOMConfigurator::configureAndWatch(const std::string& 
filename, long delay)
 {
        File file(filename);
-#if APR_HAS_THREADS
-
        if ( xdog )
        {
                APRInitializer::unregisterCleanup(xdog);
@@ -927,17 +923,12 @@ spi::ConfigurationStatus 
DOMConfigurator::configureAndWatch(const std::string& f
        xdog->start();
 
        return status;
-#else
-       return DOMConfigurator().doConfigure(file, 
LogManager::getLoggerRepository());
-#endif
 }
 
 #if LOG4CXX_WCHAR_T_API
 spi::ConfigurationStatus DOMConfigurator::configureAndWatch(const 
std::wstring& filename, long delay)
 {
        File file(filename);
-#if APR_HAS_THREADS
-
        if ( xdog )
        {
                APRInitializer::unregisterCleanup(xdog);
@@ -952,9 +943,6 @@ spi::ConfigurationStatus 
DOMConfigurator::configureAndWatch(const std::wstring&
        xdog->start();
 
        return status;
-#else
-       return DOMConfigurator().doConfigure(file, 
LogManager::getLoggerRepository());
-#endif
 }
 #endif
 
@@ -962,8 +950,6 @@ spi::ConfigurationStatus 
DOMConfigurator::configureAndWatch(const std::wstring&
 spi::ConfigurationStatus DOMConfigurator::configureAndWatch(const 
std::basic_string<UniChar>& filename, long delay)
 {
        File file(filename);
-#if APR_HAS_THREADS
-
        if ( xdog )
        {
                APRInitializer::unregisterCleanup(xdog);
@@ -978,9 +964,6 @@ spi::ConfigurationStatus 
DOMConfigurator::configureAndWatch(const std::basic_str
        xdog->start();
 
        return status;
-#else
-       return DOMConfigurator().doConfigure(file, 
LogManager::getLoggerRepository());
-#endif
 }
 #endif
 
@@ -988,8 +971,6 @@ spi::ConfigurationStatus 
DOMConfigurator::configureAndWatch(const std::basic_str
 spi::ConfigurationStatus DOMConfigurator::configureAndWatch(const CFStringRef& 
filename, long delay)
 {
        File file(filename);
-#if APR_HAS_THREADS
-
        if ( xdog )
        {
                APRInitializer::unregisterCleanup(xdog);
@@ -1004,9 +985,6 @@ spi::ConfigurationStatus 
DOMConfigurator::configureAndWatch(const CFStringRef& f
        xdog->start();
 
        return status;
-#else
-       return DOMConfigurator().doConfigure(file, 
LogManager::getLoggerRepository());
-#endif
 }
 #endif
 
diff --git a/src/main/cpp/optionconverter.cpp b/src/main/cpp/optionconverter.cpp
index 7adda4f6..54290730 100644
--- a/src/main/cpp/optionconverter.cpp
+++ b/src/main/cpp/optionconverter.cpp
@@ -42,9 +42,8 @@
        #define LOG4CXX 1
 #endif
 #include <log4cxx/helpers/aprinitializer.h>
-
-#if APR_HAS_THREADS
 #include <log4cxx/helpers/filewatchdog.h>
+
 namespace LOG4CXX_NS
 {
 
@@ -70,7 +69,6 @@ class ConfiguratorWatchdog  : public helpers::FileWatchdog
 };
 
 }
-#endif
 
 using namespace LOG4CXX_NS;
 using namespace LOG4CXX_NS::helpers;
@@ -445,7 +443,6 @@ void OptionConverter::selectAndConfigure(const File& 
configFileName,
                configurator = std::make_shared<PropertyConfigurator>();
        }
 
-#if APR_HAS_THREADS
        if (0 < delay)
        {
                auto dog = new ConfiguratorWatchdog(configurator, 
configFileName);
@@ -454,6 +451,5 @@ void OptionConverter::selectAndConfigure(const File& 
configFileName,
                dog->start();
        }
        else
-#endif
                configurator->doConfigure(configFileName, hierarchy);
 }
diff --git a/src/main/cpp/propertyconfigurator.cpp 
b/src/main/cpp/propertyconfigurator.cpp
index 7a873a92..3f037a35 100644
--- a/src/main/cpp/propertyconfigurator.cpp
+++ b/src/main/cpp/propertyconfigurator.cpp
@@ -135,7 +135,6 @@ spi::ConfigurationStatus 
PropertyConfigurator::configure(helpers::Properties& pr
        return PropertyConfigurator().doConfigure(properties, 
LogManager::getLoggerRepository());
 }
 
-#if APR_HAS_THREADS
 spi::ConfigurationStatus PropertyConfigurator::configureAndWatch(const File& 
configFilename)
 {
        return configureAndWatch(configFilename, FileWatchdog::DEFAULT_DELAY);
@@ -161,7 +160,6 @@ spi::ConfigurationStatus 
PropertyConfigurator::configureAndWatch(
 
        return stat;
 }
-#endif
 
 spi::ConfigurationStatus 
PropertyConfigurator::doConfigure(helpers::Properties& properties,
        spi::LoggerRepositoryPtr hierarchy)

Reply via email to