You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
jboss-logging/SOURCES/0001-Drop-log4j-dependency....

505 lines
18 KiB

From db9a311cb2bf17f9febdf5e31d28ca83af399cf9 Mon Sep 17 00:00:00 2001
From: "Endi S. Dewata" <edewata@redhat.com>
Date: Fri, 4 Jun 2021 12:20:45 -0500
Subject: [PATCH] Drop log4j dependency
---
pom.xml | 25 -----
.../java/org/jboss/logging/Log4j2Logger.java | 92 ------------------
.../jboss/logging/Log4j2LoggerProvider.java | 96 -------------------
.../java/org/jboss/logging/Log4jLogger.java | 74 --------------
.../jboss/logging/Log4jLoggerProvider.java | 86 -----------------
.../org/jboss/logging/LoggerProviders.java | 36 -------
6 files changed, 409 deletions(-)
delete mode 100644 src/main/java/org/jboss/logging/Log4j2Logger.java
delete mode 100644 src/main/java/org/jboss/logging/Log4j2LoggerProvider.java
delete mode 100644 src/main/java/org/jboss/logging/Log4jLogger.java
delete mode 100644 src/main/java/org/jboss/logging/Log4jLoggerProvider.java
diff --git a/pom.xml b/pom.xml
index 60a9de3..88af23f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -31,8 +31,6 @@
<properties>
<!-- Dependency versions -->
- <version.org.apache.log4j>1.2.16</version.org.apache.log4j>
- <version.org.apache.logging.log4j>2.11.2</version.org.apache.logging.log4j>
<version.org.jboss.logmanager>2.1.9.Final</version.org.jboss.logmanager>
<version.org.sfl4j>1.7.25</version.org.sfl4j>
</properties>
@@ -44,28 +42,6 @@
<version>${version.org.jboss.logmanager}</version>
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>${version.org.apache.log4j}</version>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
- <groupId>com.sun.jdmk</groupId>
- <artifactId>jmxtools</artifactId>
- </exclusion>
- <exclusion>
- <groupId>com.sun.jmx</groupId>
- <artifactId>jmxri</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.apache.logging.log4j</groupId>
- <artifactId>log4j-api</artifactId>
- <version>${version.org.apache.logging.log4j}</version>
- <scope>provided</scope>
- </dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
@@ -109,7 +85,6 @@
${project.groupId}.*;version=${project.version};-split-package:=error
</Export-Package>
<Import-Package>
- org.apache.log4j.config;resolution:=optional,
*;resolution:=optional
</Import-Package>
</instructions>
diff --git a/src/main/java/org/jboss/logging/Log4j2Logger.java b/src/main/java/org/jboss/logging/Log4j2Logger.java
deleted file mode 100644
index 3603499..0000000
--- a/src/main/java/org/jboss/logging/Log4j2Logger.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- *
- * Copyright 2013 Red Hat, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.jboss.logging;
-
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.LoggingException;
-import org.apache.logging.log4j.message.MessageFormatMessageFactory;
-import org.apache.logging.log4j.message.StringFormattedMessage;
-import org.apache.logging.log4j.spi.AbstractLogger;
-
-final class Log4j2Logger extends Logger {
-
- private static final long serialVersionUID = -2507841068232627725L;
-
- private final AbstractLogger logger;
- private final MessageFormatMessageFactory messageFactory;
-
- Log4j2Logger(final String name) {
- super(name);
- org.apache.logging.log4j.Logger logger = LogManager.getLogger(name);
- if (!(logger instanceof AbstractLogger)) {
- throw new LoggingException("The logger for [" + name + "] does not extend AbstractLogger. Actual logger: " + logger.getClass().getName());
- }
- this.logger = (AbstractLogger)logger;
- this.messageFactory = new MessageFormatMessageFactory();
- }
-
- @Override
- public boolean isEnabled(final Level level) {
- return this.logger.isEnabled(Log4j2Logger.translate(level));
- }
-
- @Override
- protected void doLog(final Level level, final String loggerClassName, final Object message, final Object[] parameters, final Throwable thrown) {
- final org.apache.logging.log4j.Level translatedLevel = Log4j2Logger.translate(level);
- if (this.logger.isEnabled(translatedLevel)) {
- try {
- this.logger.logMessage(loggerClassName, translatedLevel, null,
- (parameters == null || parameters.length == 0) ? this.messageFactory.newMessage(message) : this.messageFactory.newMessage(String.valueOf(message), parameters),
- thrown);
- } catch (Throwable ignored) { }
- }
- }
-
- @Override
- protected void doLogf(final Level level, final String loggerClassName, final String format, final Object[] parameters, final Throwable thrown) {
- final org.apache.logging.log4j.Level translatedLevel = Log4j2Logger.translate(level);
- if (this.logger.isEnabled(translatedLevel)) {
- try {
- this.logger.logMessage(loggerClassName, translatedLevel, null, new StringFormattedMessage(format, parameters), thrown);
- } catch (Throwable ignored) { }
- }
- }
-
- private static org.apache.logging.log4j.Level translate(final Level level) {
- if (level == Level.TRACE) {
- return org.apache.logging.log4j.Level.TRACE;
- } else if (level == Level.DEBUG) {
- return org.apache.logging.log4j.Level.DEBUG;
- }
- return infoOrHigher(level);
- }
-
- private static org.apache.logging.log4j.Level infoOrHigher(final Level level) {
- if (level == Level.INFO) {
- return org.apache.logging.log4j.Level.INFO;
- } else if (level == Level.WARN) {
- return org.apache.logging.log4j.Level.WARN;
- } else if (level == Level.ERROR) {
- return org.apache.logging.log4j.Level.ERROR;
- } else if (level == Level.FATAL) {
- return org.apache.logging.log4j.Level.FATAL;
- }
- return org.apache.logging.log4j.Level.ALL;
- }
-}
diff --git a/src/main/java/org/jboss/logging/Log4j2LoggerProvider.java b/src/main/java/org/jboss/logging/Log4j2LoggerProvider.java
deleted file mode 100644
index 84417d2..0000000
--- a/src/main/java/org/jboss/logging/Log4j2LoggerProvider.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- *
- * Copyright 2013 Red Hat, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.jboss.logging;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.logging.log4j.ThreadContext;
-
-final class Log4j2LoggerProvider implements LoggerProvider {
-
- @Override
- public Log4j2Logger getLogger(String name) {
- return new Log4j2Logger(name);
- }
-
- @Override
- public void clearMdc() {
- ThreadContext.clearMap();
- }
-
- @Override
- public Object putMdc(String key, Object value) {
- try {
- return ThreadContext.get(key);
- } finally {
- ThreadContext.put(key, String.valueOf(value));
- }
- }
-
- @Override
- public Object getMdc(String key) {
- return ThreadContext.get(key);
- }
-
- @Override
- public void removeMdc(String key) {
- ThreadContext.remove(key);
- }
-
- @Override
- public Map<String, Object> getMdcMap() {
- return new HashMap<String, Object>(ThreadContext.getImmutableContext());
- }
-
- @Override
- public void clearNdc() {
- ThreadContext.clearStack();
- }
-
- @Override
- public String getNdc() {
- return ThreadContext.peek();
- }
-
- @Override
- public int getNdcDepth() {
- return ThreadContext.getDepth();
- }
-
- @Override
- public String popNdc() {
- return ThreadContext.pop();
- }
-
- @Override
- public String peekNdc() {
- return ThreadContext.peek();
- }
-
- @Override
- public void pushNdc(String message) {
- ThreadContext.push(message);
- }
-
- @Override
- public void setNdcMaxDepth(int maxDepth) {
- ThreadContext.trim(maxDepth);
- }
-}
diff --git a/src/main/java/org/jboss/logging/Log4jLogger.java b/src/main/java/org/jboss/logging/Log4jLogger.java
deleted file mode 100644
index 3f7a3f2..0000000
--- a/src/main/java/org/jboss/logging/Log4jLogger.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- *
- * Copyright 2010 Red Hat, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.jboss.logging;
-
-import java.text.MessageFormat;
-
-final class Log4jLogger extends Logger {
-
- private static final long serialVersionUID = -5446154366955151335L;
-
- private final org.apache.log4j.Logger logger;
-
- Log4jLogger(final String name) {
- super(name);
- logger = org.apache.log4j.Logger.getLogger(name);
- }
-
- public boolean isEnabled(final Level level) {
- final org.apache.log4j.Level l = translate(level);
- return logger.isEnabledFor(l) && l.isGreaterOrEqual(logger.getEffectiveLevel());
- }
-
- protected void doLog(final Level level, final String loggerClassName, final Object message, final Object[] parameters, final Throwable thrown) {
- final org.apache.log4j.Level translatedLevel = translate(level);
- if (logger.isEnabledFor(translatedLevel)) try {
- logger.log(loggerClassName, translatedLevel, parameters == null || parameters.length == 0 ? message : MessageFormat.format(String.valueOf(message), parameters), thrown);
- } catch (Throwable ignored) {}
- }
-
- protected void doLogf(final Level level, final String loggerClassName, final String format, final Object[] parameters, final Throwable thrown) {
- final org.apache.log4j.Level translatedLevel = translate(level);
- if (logger.isEnabledFor(translatedLevel)) try {
- logger.log(loggerClassName, translatedLevel, parameters == null ? String.format(format) : String.format(format, parameters), thrown);
- } catch (Throwable ignored) {}
- }
-
- private static org.apache.log4j.Level translate(final Level level) {
- if (level == Level.TRACE) {
- return org.apache.log4j.Level.TRACE;
- } else if (level == Level.DEBUG) {
- return org.apache.log4j.Level.DEBUG;
- }
- return infoOrHigher(level);
- }
-
- private static org.apache.log4j.Level infoOrHigher(final Level level) {
- if (level == Level.INFO) {
- return org.apache.log4j.Level.INFO;
- } else if (level == Level.WARN) {
- return org.apache.log4j.Level.WARN;
- } else if (level == Level.ERROR) {
- return org.apache.log4j.Level.ERROR;
- } else if (level == Level.FATAL) {
- return org.apache.log4j.Level.FATAL;
- }
- return org.apache.log4j.Level.ALL;
- }
-}
diff --git a/src/main/java/org/jboss/logging/Log4jLoggerProvider.java b/src/main/java/org/jboss/logging/Log4jLoggerProvider.java
deleted file mode 100644
index 69bdd5f..0000000
--- a/src/main/java/org/jboss/logging/Log4jLoggerProvider.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- *
- * Copyright 2010 Red Hat, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.jboss.logging;
-
-import java.util.Collections;
-import java.util.Map;
-
-import org.apache.log4j.MDC;
-import org.apache.log4j.NDC;
-
-final class Log4jLoggerProvider implements LoggerProvider {
-
- public Logger getLogger(final String name) {
- return new Log4jLogger("".equals(name) ? "ROOT" : name);
- }
-
- public void clearMdc() {
- MDC.clear();
- }
-
- public Object getMdc(String key) {
- return MDC.get(key);
- }
-
- public Map<String, Object> getMdcMap() {
- @SuppressWarnings("unchecked")
- final Map<String, Object> map = MDC.getContext();
- return map == null ? Collections.<String, Object>emptyMap() : map;
- }
-
- public Object putMdc(String key, Object val) {
- try {
- return MDC.get(key);
- } finally {
- MDC.put(key, val);
- }
- }
-
- public void removeMdc(String key) {
- MDC.remove(key);
- }
-
- public void clearNdc() {
- NDC.remove();
- }
-
- public String getNdc() {
- return NDC.get();
- }
-
- public int getNdcDepth() {
- return NDC.getDepth();
- }
-
- public String peekNdc() {
- return NDC.peek();
- }
-
- public String popNdc() {
- return NDC.pop();
- }
-
- public void pushNdc(String message) {
- NDC.push(message);
- }
-
- public void setNdcMaxDepth(int maxDepth) {
- NDC.setMaxDepth(maxDepth);
- }
-}
diff --git a/src/main/java/org/jboss/logging/LoggerProviders.java b/src/main/java/org/jboss/logging/LoggerProviders.java
index 0608283..8e393d1 100644
--- a/src/main/java/org/jboss/logging/LoggerProviders.java
+++ b/src/main/java/org/jboss/logging/LoggerProviders.java
@@ -45,10 +45,6 @@ final class LoggerProviders {
return tryJBossLogManager(cl, "system property");
} else if ("jdk".equalsIgnoreCase(loggerProvider)) {
return tryJDK("system property");
- } else if ("log4j2".equalsIgnoreCase(loggerProvider)) {
- return tryLog4j2(cl, "system property");
- } else if ("log4j".equalsIgnoreCase(loggerProvider)) {
- return tryLog4j(cl, "system property");
} else if ("slf4j".equalsIgnoreCase(loggerProvider)) {
return trySlf4j("system property");
}
@@ -80,17 +76,6 @@ final class LoggerProviders {
} catch (Throwable t) {
// nope...
}
- try {
- // MUST try Log4j 2.x BEFORE Log4j 1.x because Log4j 2.x also passes Log4j 1.x test in some circumstances
- return tryLog4j2(cl, null);
- } catch (Throwable t) {
- // nope...
- }
- try {
- return tryLog4j(cl, null);
- } catch (Throwable t) {
- // nope...
- }
try {
// only use slf4j if Logback is in use
Class.forName("ch.qos.logback.classic.Logger", false, cl);
@@ -113,27 +98,6 @@ final class LoggerProviders {
return provider;
}
- // JBLOGGING-95 - Add support for Log4j 2.x
- private static LoggerProvider tryLog4j2(final ClassLoader cl, final String via) throws ClassNotFoundException {
- Class.forName("org.apache.logging.log4j.Logger", true, cl);
- Class.forName("org.apache.logging.log4j.LogManager", true, cl);
- Class.forName("org.apache.logging.log4j.spi.AbstractLogger", true, cl);
- LoggerProvider provider = new Log4j2LoggerProvider();
- // if Log4j 2 has a bad implementation that doesn't extend AbstractLogger, we won't know until getting the first logger throws an exception
- logProvider(provider, via);
- return provider;
- }
-
- private static LoggerProvider tryLog4j(final ClassLoader cl, final String via) throws ClassNotFoundException {
- Class.forName("org.apache.log4j.LogManager", true, cl);
- // JBLOGGING-65 - slf4j can disguise itself as log4j. Test for a class that slf4j doesn't provide.
- // JBLOGGING-94 - JBoss Logging does not detect org.apache.logging.log4j:log4j-1.2-api:2.0
- Class.forName("org.apache.log4j.config.PropertySetter", true, cl);
- final LoggerProvider provider = new Log4jLoggerProvider();
- logProvider(provider, via);
- return provider;
- }
-
private static LoggerProvider tryJBossLogManager(final ClassLoader cl, final String via) throws ClassNotFoundException {
final Class<? extends LogManager> logManagerClass = LogManager.getLogManager().getClass();
if (logManagerClass == Class.forName("org.jboss.logmanager.LogManager", false, cl)
--
2.31.1