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

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

commit 9763841b925c4e4f278689f1bdaadd8db3099e18
Author: Stephen Webb <[email protected]>
AuthorDate: Thu Feb 15 13:37:44 2024 +1100

    Remove unnessessary indirection
---
 src/main/cpp/asyncappender.cpp | 25 ++++++++++++-------------
 1 file changed, 12 insertions(+), 13 deletions(-)

diff --git a/src/main/cpp/asyncappender.cpp b/src/main/cpp/asyncappender.cpp
index 08b09889..8ba187c1 100644
--- a/src/main/cpp/asyncappender.cpp
+++ b/src/main/cpp/asyncappender.cpp
@@ -100,9 +100,8 @@ struct AsyncAppender::AsyncAppenderPriv : public 
AppenderSkeleton::AppenderSkele
 {
        AsyncAppenderPriv() :
                AppenderSkeletonPrivate(),
-               buffer(),
                bufferSize(DEFAULT_BUFFER_SIZE),
-               appenders(std::make_shared<AppenderAttachableImpl>(pool)),
+               appenders(pool),
                dispatcher(),
                locationInfo(false),
                blocking(true)
@@ -148,7 +147,7 @@ struct AsyncAppender::AsyncAppenderPriv : public 
AppenderSkeleton::AppenderSkele
        /**
         * Nested appenders.
        */
-       helpers::AppenderAttachableImplPtr appenders;
+       helpers::AppenderAttachableImpl appenders;
 
        /**
         *  Dispatcher.
@@ -187,7 +186,7 @@ AsyncAppender::~AsyncAppender()
 
 void AsyncAppender::addAppender(const AppenderPtr newAppender)
 {
-       priv->appenders->addAppender(newAppender);
+       priv->appenders.addAppender(newAppender);
 }
 
 
@@ -224,7 +223,7 @@ void AsyncAppender::append(const spi::LoggingEventPtr& 
event, Pool& p)
 {
        if (priv->bufferSize <= 0)
        {
-               priv->appenders->appendLoopOnAppenders(event, p);
+               priv->appenders.appendLoopOnAppenders(event, p);
        }
 
        // Set the NDC and MDC for the calling thread as these
@@ -313,7 +312,7 @@ void AsyncAppender::close()
                priv->dispatcher.join();
        }
 
-       for (auto item : priv->appenders->getAllAppenders())
+       for (auto item : priv->appenders.getAllAppenders())
        {
                item->close();
        }
@@ -321,17 +320,17 @@ void AsyncAppender::close()
 
 AppenderList AsyncAppender::getAllAppenders() const
 {
-       return priv->appenders->getAllAppenders();
+       return priv->appenders.getAllAppenders();
 }
 
 AppenderPtr AsyncAppender::getAppender(const LogString& n) const
 {
-       return priv->appenders->getAppender(n);
+       return priv->appenders.getAppender(n);
 }
 
 bool AsyncAppender::isAttached(const AppenderPtr appender) const
 {
-       return priv->appenders->isAttached(appender);
+       return priv->appenders.isAttached(appender);
 }
 
 bool AsyncAppender::requiresLayout() const
@@ -341,17 +340,17 @@ bool AsyncAppender::requiresLayout() const
 
 void AsyncAppender::removeAllAppenders()
 {
-       priv->appenders->removeAllAppenders();
+       priv->appenders.removeAllAppenders();
 }
 
 void AsyncAppender::removeAppender(const AppenderPtr appender)
 {
-       priv->appenders->removeAppender(appender);
+       priv->appenders.removeAppender(appender);
 }
 
 void AsyncAppender::removeAppender(const LogString& n)
 {
-       priv->appenders->removeAppender(n);
+       priv->appenders.removeAppender(n);
 }
 
 bool AsyncAppender::getLocationInfo() const
@@ -486,7 +485,7 @@ void AsyncAppender::dispatch()
                {
                        try
                        {
-                               priv->appenders->appendLoopOnAppenders(item, p);
+                               priv->appenders.appendLoopOnAppenders(item, p);
                        }
                        catch (std::exception& ex)
                        {

Reply via email to