This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-logging.git
The following commit(s) were added to refs/heads/master by this push:
new c1e4fef Update from Logj 1 to the Log4j 2 API compatibility layer
(#231)
c1e4fef is described below
commit c1e4fefc569df0b027bb344783e100e8c65a231b
Author: Gary Gregory <[email protected]>
AuthorDate: Sat Mar 16 18:30:40 2024 -0400
Update from Logj 1 to the Log4j 2 API compatibility layer (#231)
* Update from Logj1 to the 2 API compatibility layer
* Update from Logj1 to the 2 API compatibility layer
---
pom.xml | 78 +++++++++++++++++-----
.../commons/logging/log4j/StandardTests.java | 4 +-
.../log4j12/ApiClasspathStandardTestCase.java | 2 +
.../log4j12/AppClasspathStandardTestCase.java | 2 +
.../log4j12/ChildClasspathStandardTestCase.java | 2 +
.../log4j12/ParentClasspathStandardTestCase.java | 2 +
6 files changed, 72 insertions(+), 18 deletions(-)
diff --git a/pom.xml b/pom.xml
index 07dad4b..3cb4c62 100644
--- a/pom.xml
+++ b/pom.xml
@@ -32,7 +32,7 @@ under the License.
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<name>Apache Commons Logging</name>
- <version>1.3.1-SNAPSHOT</version>
+ <version>1.4.0-SNAPSHOT</version>
<description>Apache Commons Logging is a thin adapter allowing configurable
bridging to other,
well-known logging systems.</description>
<url>https://commons.apache.org/proper/commons-logging/</url>
@@ -237,6 +237,7 @@ under the License.
<exclude>org.slf4j:*</exclude>
</classpathDependencyExcludes>
<excludes>
+ <exclude>org/apache/commons/logging/log4j/log4j12/**</exclude>
<exclude>org/apache/commons/logging/log4j2/**</exclude>
<exclude>org/apache/commons/logging/slf4j/**</exclude>
<exclude>org/apache/commons/logging/serviceloader/**</exclude>
@@ -248,13 +249,13 @@ under the License.
<!--
<org.apache.commons.logging.diagnostics.dest>STDOUT</org.apache.commons.logging.diagnostics.dest>
-->
- <log4j12>${log4j:log4j:jar}</log4j12>
- <logkit>${logkit:logkit:jar}</logkit>
- <servlet-api>${javax.servlet:servlet-api:jar}</servlet-api>
-
<commons-logging>target/${project.build.finalName}.jar</commons-logging>
-
<commons-logging-api>target/${project.build.finalName}-api.jar</commons-logging-api>
-
<commons-logging-adapters>target/${project.build.finalName}-adapters.jar</commons-logging-adapters>
-
<testclasses>target/${project.build.finalName}-tests.jar</testclasses>
+
<log4j12>${org.apache.logging.log4j:log4j-1.2-api:jar}</log4j12>
+ <logkit>${logkit:logkit:jar}</logkit>
+ <servlet-api>${javax.servlet:servlet-api:jar}</servlet-api>
+
<commons-logging>target/${project.build.finalName}.jar</commons-logging>
+
<commons-logging-api>target/${project.build.finalName}-api.jar</commons-logging-api>
+
<commons-logging-adapters>target/${project.build.finalName}-adapters.jar</commons-logging-adapters>
+
<testclasses>target/${project.build.finalName}-tests.jar</testclasses>
</systemPropertyVariables>
</configuration>
</execution>
@@ -277,7 +278,7 @@ under the License.
</configuration>
</execution>
<!--
- - Tests logging through the Log4j API.
+ - Tests logging through the Log4j 2 API.
-->
<execution>
<id>log4j-test</id>
@@ -305,6 +306,53 @@ under the License.
</systemPropertyVariables>
</configuration>
</execution>
+ <!--
+ - Tests logging through the Log4j 2 API for 1.2.
+ -->
+ <execution>
+ <id>log4j12-test</id>
+ <goals>
+ <goal>integration-test</goal>
+ </goals>
+ <configuration>
+ <additionalClasspathDependencies>
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-1.2-api</artifactId>
+ <version>${log4j2.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-api</artifactId>
+ <version>${log4j2.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-core</artifactId>
+ <version>${log4j2.version}</version>
+ </dependency>
+ </additionalClasspathDependencies>
+ <includes>
+
<include>org/apache/commons/logging/log4j/log4j12/*TestCase.java</include>
+ </includes>
+ <systemPropertyVariables>
+ <!-- Due to a bug in `log4j-core-test`,
+ ~ the default LogEventFactory loses the location info.
+ ~ We need to force the usage of the reusable version.
+
<log4j2.messageFactory>org.apache.logging.log4j.message.ParameterizedMessageFactory</log4j2.messageFactory>
+ -->
+
<log4j2.logEventFactory>org.apache.logging.log4j.core.impl.ReusableLogEventFactory</log4j2.logEventFactory>
+
<log4j12>${org.apache.logging.log4j:log4j-1.2-api:jar}</log4j12>
+
<log4j2-api>${org.apache.logging.log4j:log4j-api:jar}</log4j2-api>
+
<log4j2-core>${org.apache.logging.log4j:log4j-core:jar}</log4j2-core>
+
<commons-logging>target/${project.build.finalName}.jar</commons-logging>
+
<commons-logging-api>target/${project.build.finalName}-api.jar</commons-logging-api>
+
<testclasses>target/${project.build.finalName}-tests.jar</testclasses>
+ <!-- Use the Log4j 1.2 version of Log -->
+
<org.apache.commons.logging.LogFactory>org.apache.commons.logging.impl.LogFactoryImpl</org.apache.commons.logging.LogFactory>
+ </systemPropertyVariables>
+ </configuration>
+ </execution>
<!--
- Tests falling back to the SLF4J API, when the Log4j API is
absent.
-->
@@ -477,9 +525,9 @@ under the License.
<optional>true</optional>
</dependency>
<dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>1.2.17</version>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-1.2-api</artifactId>
+ <version>${log4j2.version}</version>
<optional>true</optional>
</dependency>
<dependency>
@@ -603,9 +651,9 @@ under the License.
<maven.compiler.target>${commons.logging.javaversion}</maven.compiler.target>
<commons.componentid>logging</commons.componentid>
<commons.module.name>org.apache.commons.logging</commons.module.name>
- <commons.release.version>1.3.0</commons.release.version>
- <commons.release.next>1.3.1</commons.release.next>
- <commons.bc.version>1.2</commons.bc.version>
+ <commons.release.version>1.4.0</commons.release.version>
+ <commons.release.next>1.4.1</commons.release.next>
+ <commons.bc.version>1.3.0</commons.bc.version>
<commons.release.isDistModule>true</commons.release.isDistModule>
<commons.jira.id>LOGGING</commons.jira.id>
<commons.jira.pid>12310484</commons.jira.pid>
diff --git a/src/test/java/org/apache/commons/logging/log4j/StandardTests.java
b/src/test/java/org/apache/commons/logging/log4j/StandardTests.java
index 4bb2f5c..7bb6922 100644
--- a/src/test/java/org/apache/commons/logging/log4j/StandardTests.java
+++ b/src/test/java/org/apache/commons/logging/log4j/StandardTests.java
@@ -147,9 +147,7 @@ public abstract class StandardTests extends TestCase {
public void testCreateFactory() {
final LogFactory factory = LogFactory.getFactory();
assertNotNull("LogFactory exists", factory);
- assertEquals("LogFactory class",
- "org.apache.commons.logging.impl.LogFactoryImpl",
- factory.getClass().getName());
+ assertEquals("LogFactory class",
"org.apache.commons.logging.impl.LogFactoryImpl", factory.getClass().getName());
final String[] names = factory.getAttributeNames();
assertNotNull("Names exists", names);
diff --git
a/src/test/java/org/apache/commons/logging/log4j/log4j12/ApiClasspathStandardTestCase.java
b/src/test/java/org/apache/commons/logging/log4j/log4j12/ApiClasspathStandardTestCase.java
index ae914bb..9d555a5 100644
---
a/src/test/java/org/apache/commons/logging/log4j/log4j12/ApiClasspathStandardTestCase.java
+++
b/src/test/java/org/apache/commons/logging/log4j/log4j12/ApiClasspathStandardTestCase.java
@@ -45,6 +45,8 @@ public class ApiClasspathStandardTestCase extends TestCase {
final PathableClassLoader child = new PathableClassLoader(parent);
child.addLogicalLib("log4j12");
+ child.addLogicalLib("log4j2-api");
+ child.addLogicalLib("log4j2-core");
child.addLogicalLib("commons-logging");
child.addLogicalLib("testclasses");
diff --git
a/src/test/java/org/apache/commons/logging/log4j/log4j12/AppClasspathStandardTestCase.java
b/src/test/java/org/apache/commons/logging/log4j/log4j12/AppClasspathStandardTestCase.java
index 2f348ab..cd9d402 100644
---
a/src/test/java/org/apache/commons/logging/log4j/log4j12/AppClasspathStandardTestCase.java
+++
b/src/test/java/org/apache/commons/logging/log4j/log4j12/AppClasspathStandardTestCase.java
@@ -42,6 +42,8 @@ public class AppClasspathStandardTestCase extends TestCase {
loader.useExplicitLoader("junit.", Test.class.getClassLoader());
loader.addLogicalLib("testclasses");
loader.addLogicalLib("log4j12");
+ loader.addLogicalLib("log4j2-api");
+ loader.addLogicalLib("log4j2-core");
loader.addLogicalLib("commons-logging");
final Class testClass = loader.loadClass(
diff --git
a/src/test/java/org/apache/commons/logging/log4j/log4j12/ChildClasspathStandardTestCase.java
b/src/test/java/org/apache/commons/logging/log4j/log4j12/ChildClasspathStandardTestCase.java
index b78b7ea..600e1ce 100644
---
a/src/test/java/org/apache/commons/logging/log4j/log4j12/ChildClasspathStandardTestCase.java
+++
b/src/test/java/org/apache/commons/logging/log4j/log4j12/ChildClasspathStandardTestCase.java
@@ -44,6 +44,8 @@ public class ChildClasspathStandardTestCase extends TestCase {
final PathableClassLoader child = new PathableClassLoader(parent);
child.addLogicalLib("testclasses");
child.addLogicalLib("log4j12");
+ child.addLogicalLib("log4j2-api");
+ child.addLogicalLib("log4j2-core");
child.addLogicalLib("commons-logging");
final Class testClass = child.loadClass(
diff --git
a/src/test/java/org/apache/commons/logging/log4j/log4j12/ParentClasspathStandardTestCase.java
b/src/test/java/org/apache/commons/logging/log4j/log4j12/ParentClasspathStandardTestCase.java
index 5c30cac..8343d10 100644
---
a/src/test/java/org/apache/commons/logging/log4j/log4j12/ParentClasspathStandardTestCase.java
+++
b/src/test/java/org/apache/commons/logging/log4j/log4j12/ParentClasspathStandardTestCase.java
@@ -42,6 +42,8 @@ public class ParentClasspathStandardTestCase extends TestCase
{
parent.useExplicitLoader("junit.", Test.class.getClassLoader());
parent.addLogicalLib("commons-logging");
parent.addLogicalLib("log4j12");
+ parent.addLogicalLib("log4j2-api");
+ parent.addLogicalLib("log4j2-core");
final PathableClassLoader child = new PathableClassLoader(parent);
child.addLogicalLib("testclasses");