This is an automated email from the ASF dual-hosted git repository. orpiske pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push: new f855adcc7f5 CAMEL-19724: minor code cleanup and improvements (#11353) f855adcc7f5 is described below commit f855adcc7f5985df18c26f476234fbcf3a512376 Author: Otavio Rodolfo Piske <orpi...@users.noreply.github.com> AuthorDate: Fri Sep 8 16:30:45 2023 +0200 CAMEL-19724: minor code cleanup and improvements (#11353) Also ensure that loggers match their enclosing classes --- .../apache/camel/support/service/BaseService.java | 8 +++---- .../camel/impl/engine/BasePackageScanResolver.java | 8 +++---- .../impl/engine/DefaultCamelContextExtension.java | 8 +++---- .../java/org/apache/camel/util/ObjectHelper.java | 27 +++++++++++++++------- 4 files changed, 31 insertions(+), 20 deletions(-) diff --git a/core/camel-api/src/main/java/org/apache/camel/support/service/BaseService.java b/core/camel-api/src/main/java/org/apache/camel/support/service/BaseService.java index 35513e39741..e742cf5244e 100644 --- a/core/camel-api/src/main/java/org/apache/camel/support/service/BaseService.java +++ b/core/camel-api/src/main/java/org/apache/camel/support/service/BaseService.java @@ -419,11 +419,11 @@ public abstract class BaseService { * reduce the risk of dropping log messages due to slf4j log substitution behavior during its own * initialization. */ - private Logger logger() { - class Holder { - static final Logger LOG = LoggerFactory.getLogger(BaseService.class); - } + private static final class Holder { + static final Logger LOG = LoggerFactory.getLogger(Holder.class); + } + private static Logger logger() { return Holder.LOG; } diff --git a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/BasePackageScanResolver.java b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/BasePackageScanResolver.java index b15780b2b41..b8de017669c 100644 --- a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/BasePackageScanResolver.java +++ b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/BasePackageScanResolver.java @@ -201,11 +201,11 @@ public abstract class BasePackageScanResolver extends ServiceSupport implements * reduce the risk of dropping log messages due to slf4j log substitution behavior during its own * initialization. */ - private Logger logger() { - class Holder { - static final Logger LOG = LoggerFactory.getLogger(BasePackageScanResolver.class); - } + private static final class Holder { + static final Logger LOG = LoggerFactory.getLogger(Holder.class); + } + private static Logger logger() { return Holder.LOG; } diff --git a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultCamelContextExtension.java b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultCamelContextExtension.java index a32cf1c34a3..bec6379660a 100644 --- a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultCamelContextExtension.java +++ b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultCamelContextExtension.java @@ -617,11 +617,11 @@ class DefaultCamelContextExtension implements ExtendedCamelContext { * reduce the risk of dropping log messages due to slf4j log substitution behavior during its own * initialization. */ - private Logger logger() { - class Holder { - static final Logger LOG = LoggerFactory.getLogger(DefaultCamelContextExtension.class); - } + private static final class Holder { + static final Logger LOG = LoggerFactory.getLogger(DefaultCamelContextExtension.class); + } + private static Logger logger() { return Holder.LOG; } } diff --git a/core/camel-util/src/main/java/org/apache/camel/util/ObjectHelper.java b/core/camel-util/src/main/java/org/apache/camel/util/ObjectHelper.java index fadc1ea22aa..d0d0ab445bb 100644 --- a/core/camel-util/src/main/java/org/apache/camel/util/ObjectHelper.java +++ b/core/camel-util/src/main/java/org/apache/camel/util/ObjectHelper.java @@ -51,8 +51,6 @@ import org.slf4j.LoggerFactory; */ public final class ObjectHelper { - private static final Logger LOG = LoggerFactory.getLogger(ObjectHelper.class); - /** * Utility classes should not have a public constructor. */ @@ -358,7 +356,7 @@ public final class ObjectHelper { try { return System.getProperty(name, defaultValue); } catch (Exception e) { - LOG.debug("Caught security exception accessing system property: {}. Will use default value: {}", + logger().debug("Caught security exception accessing system property: {}. Will use default value: {}", name, defaultValue, e); return defaultValue; @@ -472,9 +470,9 @@ public final class ObjectHelper { if (clazz == null) { if (needToWarn) { - LOG.warn("Cannot find class: {}", name); + logger().warn("Cannot find class: {}", name); } else { - LOG.debug("Cannot find class: {}", name); + logger().debug("Cannot find class: {}", name); } } @@ -551,11 +549,10 @@ public final class ObjectHelper { } try { - LOG.trace("Loading class: {} using classloader: {}", name, loader); return loader.loadClass(name); } catch (ClassNotFoundException e) { - if (LOG.isTraceEnabled()) { - LOG.trace("Cannot load class: {} using classloader: {}", name, loader, e); + if (logger().isTraceEnabled()) { + logger().trace("Cannot load class: {} using classloader: {}", name, loader, e); } } @@ -1325,4 +1322,18 @@ public final class ObjectHelper { } } + + /* + * NOTE: see CAMEL-19724. We log like this instead of using a statically declared logger in order to + * reduce the risk of dropping log messages due to slf4j log substitution behavior during its own + * initialization. + */ + private static final class Holder { + static final Logger LOG = LoggerFactory.getLogger(Holder.class); + } + + private static Logger logger() { + return Holder.LOG; + } + }