Author: lehmi
Date: Fri Oct 27 06:04:06 2023
New Revision: 1913376
URL: http://svn.apache.org/viewvc?rev=1913376&view=rev
Log:
PDFBOX-5695: switch to log4j as suggested by Axel Howind
Modified:
pdfbox/trunk/io/pom.xml
pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/IOUtils.java
pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/RandomAccessInputStream.java
pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/ScratchFile.java
Modified: pdfbox/trunk/io/pom.xml
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/io/pom.xml?rev=1913376&r1=1913375&r2=1913376&view=diff
==============================================================================
--- pdfbox/trunk/io/pom.xml (original)
+++ pdfbox/trunk/io/pom.xml Fri Oct 27 06:04:06 2023
@@ -39,10 +39,22 @@
<dependencies>
<dependency>
+ <!-- TODO remove when transition to Log4J is complete -->
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</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>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
</dependency>
Modified: pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/IOUtils.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/IOUtils.java?rev=1913376&r1=1913375&r2=1913376&view=diff
==============================================================================
--- pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/IOUtils.java (original)
+++ pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/IOUtils.java Fri Oct 27
06:04:06 2023
@@ -44,7 +44,8 @@ import java.util.Optional;
import java.util.function.Consumer;
import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
import org.apache.pdfbox.io.RandomAccessStreamCache.StreamCacheCreateFunction;
/**
@@ -66,7 +67,7 @@ public final class IOUtils
/**
* Log instance.
*/
- private static final Log LOG = LogFactory.getLog(IOUtils.class);
+ private static final Logger LOG = LogManager.getLogger(IOUtils.class);
private IOUtils()
{
@@ -148,7 +149,9 @@ public final class IOUtils
* @param initialException if set, this exception will be returned even
where there is another
* exception while closing the IO resource
* @return the IOException is there was any but only if initialException
is null
+ * @deprecated use {@link Logger} instead
*/
+ @Deprecated
public static IOException closeAndLogException(Closeable closeable, Log
logger, String resourceName, IOException initialException)
{
try
@@ -161,6 +164,35 @@ public final class IOUtils
if (initialException == null)
{
return ioe;
+ }
+ }
+ return initialException;
+ }
+
+ /**
+ * Try to close an IO resource and log and return if there was an
exception.
+ *
+ * <p>An exception is only returned if the IOException passed in is null.
+ *
+ * @param closeable to be closed
+ * @param logger the logger to be used so that logging appears under that
log instance
+ * @param resourceName the name to appear in the log output
+ * @param initialException if set, this exception will be returned even
where there is another
+ * exception while closing the IO resource
+ * @return the IOException is there was any but only if initialException
is null
+ */
+ public static IOException closeAndLogException(Closeable closeable, Logger
logger, String resourceName, IOException initialException)
+ {
+ try
+ {
+ closeable.close();
+ }
+ catch (IOException ioe)
+ {
+ logger.warn("Error closing {}", resourceName, ioe);
+ if (initialException == null)
+ {
+ return ioe;
}
}
return initialException;
Modified:
pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/RandomAccessInputStream.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/RandomAccessInputStream.java?rev=1913376&r1=1913375&r2=1913376&view=diff
==============================================================================
---
pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/RandomAccessInputStream.java
(original)
+++
pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/RandomAccessInputStream.java
Fri Oct 27 06:04:06 2023
@@ -19,8 +19,8 @@ package org.apache.pdfbox.io;
import java.io.InputStream;
import java.io.IOException;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
/**
* An InputStream which reads from a RandomAccessRead.
@@ -30,7 +30,7 @@ import org.apache.commons.logging.LogFac
*/
public class RandomAccessInputStream extends InputStream
{
- private static final Log LOG =
LogFactory.getLog(RandomAccessInputStream.class);
+ private static final Logger LOG =
LogManager.getLogger(RandomAccessInputStream.class);
private final RandomAccessRead input;
private long position;
@@ -75,8 +75,8 @@ public class RandomAccessInputStream ext
{
// should never happen due to prior isEOF() check
// unless there is an unsynchronized concurrent access
- LOG.error("read() returns -1, assumed position: " +
- position + ", actual position: " + input.getPosition());
+ LOG.error("read() returns -1, assumed position: {}, actual
position: {}", position,
+ input.getPosition());
}
return b;
}
@@ -98,8 +98,8 @@ public class RandomAccessInputStream ext
{
// should never happen due to prior isEOF() check
// unless there is an unsynchronized concurrent access
- LOG.error("read() returns -1, assumed position: " +
- position + ", actual position: " + input.getPosition());
+ LOG.error("read() returns -1, assumed position: {}, actual
position: {}", position,
+ input.getPosition());
}
return n;
}
Modified: pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/ScratchFile.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/ScratchFile.java?rev=1913376&r1=1913375&r2=1913376&view=diff
==============================================================================
--- pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/ScratchFile.java
(original)
+++ pdfbox/trunk/io/src/main/java/org/apache/pdfbox/io/ScratchFile.java Fri Oct
27 06:04:06 2023
@@ -22,8 +22,8 @@ import java.util.ArrayList;
import java.util.BitSet;
import java.util.List;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
/**
* Implements a memory page handling mechanism as base for creating (multiple)
@@ -50,7 +50,7 @@ import org.apache.commons.logging.LogFac
*/
public class ScratchFile implements RandomAccessStreamCache
{
- private static final Log LOG = LogFactory.getLog(ScratchFile.class);
+ private static final Logger LOG = LogManager.getLogger(ScratchFile.class);
/** number of pages by which we enlarge the scratch file (reduce
I/O-operations) */
private static final int ENLARGE_PAGE_COUNT = 16;
@@ -155,7 +155,9 @@ public class ScratchFile implements Rand
catch (IOException ioe)
{
// cannot happen for main memory setup
- LOG.error("Unexpected exception occurred creating main memory
scratch file instance: " + ioe.getMessage(), ioe);
+ LOG.error(
+ "Unexpected exception occurred creating main memory
scratch file instance: {}",
+ ioe.getMessage(), ioe);
return null;
}
}
@@ -178,7 +180,9 @@ public class ScratchFile implements Rand
catch (IOException ioe)
{
// cannot happen for main memory setup
- LOG.error("Unexpected exception occurred creating main memory
scratch file instance: " + ioe.getMessage(), ioe);
+ LOG.error(
+ "Unexpected exception occurred creating main memory
scratch file instance: {}",
+ ioe.getMessage(), ioe);
return null;
}
}
@@ -257,7 +261,7 @@ public class ScratchFile implements Rand
{
if (!file.delete())
{
- LOG.warn("Error deleting scratch file: " +
file.getAbsolutePath());
+ LOG.warn("Error deleting scratch file: {}",
file.getAbsolutePath());
}
throw e;
}