You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ma...@apache.org on 2021/02/21 20:57:27 UTC

svn commit: r1886770 [2/10] - in /poi/trunk: ./ legal/ maven/ osgi/ sonar/ sonar/excelant/ sonar/integration-test/ sonar/main/ sonar/ooxml/ sonar/scratchpad/ src/examples/src/org/apache/poi/examples/hssf/usermodel/ src/integrationtest/ src/integrationt...

Modified: poi/trunk/src/java/org/apache/poi/hpsf/UnicodeString.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hpsf/UnicodeString.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hpsf/UnicodeString.java (original)
+++ poi/trunk/src/java/org/apache/poi/hpsf/UnicodeString.java Sun Feb 21 20:57:25 2021
@@ -20,19 +20,19 @@ import java.io.IOException;
 import java.io.OutputStream;
 import java.io.UnsupportedEncodingException;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.util.CodePageUtil;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.Internal;
 import org.apache.poi.util.LittleEndian;
 import org.apache.poi.util.LittleEndianByteArrayInputStream;
 import org.apache.poi.util.LittleEndianConsts;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.StringUtil;
 
 @Internal
 public class UnicodeString {
-    private static final POILogger LOG = POILogFactory.getLogger( UnicodeString.class );
+    private static final Logger LOG = LogManager.getLogger(UnicodeString.class);
     //arbitrarily selected; may need to increase
     private static final int MAX_RECORD_LENGTH = 100_000;
 
@@ -77,18 +77,14 @@ public class UnicodeString {
 
         final int terminator = result.indexOf( '\0' );
         if ( terminator == -1 ) {
-            String msg =
-                "String terminator (\\0) for UnicodeString property value not found. " +
-                "Continue without trimming and hope for the best.";
-            LOG.log(POILogger.WARN, msg);
+            LOG.atWarn().log("String terminator (\\0) for UnicodeString property value not found. " +
+                    "Continue without trimming and hope for the best.");
             return result;
         }
         
         if ( terminator != result.length() - 1 ) {
-            String msg =
-                "String terminator (\\0) for UnicodeString property value occured before the end of string. " +
-                "Trimming and hope for the best.";
-            LOG.log(POILogger.WARN, msg);
+            LOG.atWarn().log("String terminator (\\0) for UnicodeString property value occured before the end of " +
+                    "string. Trimming and hope for the best.");
         }
         return result.substring( 0, terminator );
     }

Modified: poi/trunk/src/java/org/apache/poi/hpsf/VariantBool.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hpsf/VariantBool.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hpsf/VariantBool.java (original)
+++ poi/trunk/src/java/org/apache/poi/hpsf/VariantBool.java Sun Feb 21 20:57:25 2021
@@ -16,14 +16,16 @@
 ==================================================================== */
 package org.apache.poi.hpsf;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.util.Internal;
 import org.apache.poi.util.LittleEndianByteArrayInputStream;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
+
+import static org.apache.logging.log4j.util.Unbox.box;
 
 @Internal
 public class VariantBool {
-    private static final POILogger LOG = POILogFactory.getLogger( VariantBool.class );
+    private static final Logger LOG = LogManager.getLogger(VariantBool.class);
 
     static final int SIZE = 2;
 
@@ -39,7 +41,7 @@ public class VariantBool {
                 _value = true;
                 break;
             default:
-                LOG.log( POILogger.WARN, "VARIANT_BOOL value '"+value+"' is incorrect" );
+                LOG.atWarn().log("VARIANT_BOOL value '{}' is incorrect", box(value));
                 _value = true;
                 break;
         }

Modified: poi/trunk/src/java/org/apache/poi/hpsf/VariantSupport.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hpsf/VariantSupport.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hpsf/VariantSupport.java (original)
+++ poi/trunk/src/java/org/apache/poi/hpsf/VariantSupport.java Sun Feb 21 20:57:25 2021
@@ -25,12 +25,12 @@ import java.util.Date;
 import java.util.LinkedList;
 import java.util.List;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.LittleEndian;
 import org.apache.poi.util.LittleEndianByteArrayInputStream;
 import org.apache.poi.util.LittleEndianConsts;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 
 /**
  * Supports reading and writing of variant data.<p>
@@ -58,7 +58,7 @@ public class VariantSupport extends Vari
             Variant.VT_CF, Variant.VT_BOOL };
 
 
-    private static final POILogger LOG = POILogFactory.getLogger(VariantSupport.class);
+    private static final Logger LOG = LogManager.getLogger(VariantSupport.class);
     //arbitrarily selected; may need to increase
     private static final int MAX_RECORD_LENGTH = 100_000;
 
@@ -114,7 +114,7 @@ public class VariantSupport extends Vari
             Long vt = Long.valueOf(ex.getVariantType());
             if (!unsupportedMessage.contains(vt))
             {
-            	LOG.log( POILogger.ERROR, ex.getMessage());
+            	LOG.atError().withThrowable(ex).log("Unsupported type");
                 unsupportedMessage.add(vt);
             }
         }

Modified: poi/trunk/src/java/org/apache/poi/hssf/dev/BiffViewer.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/dev/BiffViewer.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/dev/BiffViewer.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/dev/BiffViewer.java Sun Feb 21 20:57:25 2021
@@ -31,6 +31,8 @@ import java.nio.charset.Charset;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.hssf.record.*;
 import org.apache.poi.hssf.record.RecordInputStream.LeftoverDataException;
 import org.apache.poi.hssf.record.chart.*;
@@ -46,18 +48,19 @@ import org.apache.poi.poifs.filesystem.P
 import org.apache.poi.util.HexDump;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.LittleEndian;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
+import org.apache.poi.util.RecordFormatException;
 import org.apache.poi.util.StringUtil;
 import org.apache.poi.util.SuppressForbidden;
 
+import static org.apache.logging.log4j.util.Unbox.box;
+
 /**
  *  Utility for reading in BIFF8 records and displaying data from them.
  * @see        #main
  */
 public final class BiffViewer {
     private static final char[] NEW_LINE_CHARS = System.getProperty("line.separator").toCharArray();
-    private static final POILogger LOG = POILogFactory.getLogger(BiffViewer.class);
+    private static final Logger LOG = LogManager.getLogger(BiffViewer.class);
 
     private BiffViewer() {
         // no instances of this class
@@ -71,17 +74,17 @@ public final class BiffViewer {
      * @param recListener the record listener to notify about read records
      * @param dumpInterpretedRecords if {@code true}, the read records will be written to the PrintWriter
      *
-     * @exception  org.apache.poi.util.RecordFormatException  on error processing the InputStream
+     * @exception  RecordFormatException  on error processing the InputStream
      */
     private static void createRecords(InputStream is, PrintWriter ps, BiffRecordListener recListener, boolean dumpInterpretedRecords)
-            throws org.apache.poi.util.RecordFormatException {
+            throws RecordFormatException {
         RecordInputStream recStream = new RecordInputStream(is);
         while (true) {
             boolean hasNext;
             try {
                 hasNext = recStream.hasNextRecord();
             } catch (LeftoverDataException e) {
-                LOG.log(POILogger.ERROR, "Discarding ", recStream.remaining(), " bytes and continuing", e);
+                LOG.atError().withThrowable(e).log("Discarding {} bytes and continuing", box(recStream.remaining()));
                 recStream.readRemainder();
                 hasNext = recStream.hasNextRecord();
             }
@@ -92,7 +95,7 @@ public final class BiffViewer {
             if (recStream.getSid() == 0) {
                 continue;
             }
-            org.apache.poi.hssf.record.Record record;
+            Record record;
             if (dumpInterpretedRecords) {
                 record = createRecord (recStream);
                 if (record.getSid() == ContinueRecord.sid) {
@@ -116,7 +119,7 @@ public final class BiffViewer {
      *  up non-debug operations.
      *
      */
-    private static org.apache.poi.hssf.record.Record createRecord(RecordInputStream in) {
+    private static Record createRecord(RecordInputStream in) {
         switch (in.getSid()) {
             case AreaFormatRecord.sid:        return new AreaFormatRecord(in);
             case AreaRecord.sid:              return new AreaRecord(in);

Modified: poi/trunk/src/java/org/apache/poi/hssf/eventusermodel/FormatTrackingHSSFListener.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/eventusermodel/FormatTrackingHSSFListener.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/eventusermodel/FormatTrackingHSSFListener.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/eventusermodel/FormatTrackingHSSFListener.java Sun Feb 21 20:57:25 2021
@@ -23,16 +23,19 @@ import java.util.List;
 import java.util.Locale;
 import java.util.Map;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.hssf.record.CellValueRecordInterface;
 import org.apache.poi.hssf.record.ExtendedFormatRecord;
 import org.apache.poi.hssf.record.FormatRecord;
 import org.apache.poi.hssf.record.FormulaRecord;
 import org.apache.poi.hssf.record.NumberRecord;
+import org.apache.poi.hssf.record.Record;
 import org.apache.poi.hssf.usermodel.HSSFDataFormat;
 import org.apache.poi.hssf.usermodel.HSSFDataFormatter;
 import org.apache.poi.util.LocaleUtil;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
+
+import static org.apache.logging.log4j.util.Unbox.box;
 
 /**
  * A proxy HSSFListener that keeps track of the document formatting records, and
@@ -40,7 +43,7 @@ import org.apache.poi.util.POILogger;
  * ids.
  */
 public class FormatTrackingHSSFListener implements HSSFListener {
-	private static final POILogger LOG = POILogFactory.getLogger(FormatTrackingHSSFListener.class);
+	private static final Logger LOG = LogManager.getLogger(FormatTrackingHSSFListener.class);
 	private final HSSFListener _childListener;
 	private final HSSFDataFormatter _formatter;
 	private final NumberFormat _defaultFormat;
@@ -83,7 +86,7 @@ public class FormatTrackingHSSFListener
 	 * Process this record ourselves, and then pass it on to our child listener
 	 */
 	@Override
-    public void processRecord(org.apache.poi.hssf.record.Record record) {
+    public void processRecord(Record record) {
 		// Handle it ourselves
 		processRecordInternally(record);
 
@@ -97,7 +100,7 @@ public class FormatTrackingHSSFListener
 	 *
 	 * @param record the record to be processed
 	 */
-	public void processRecordInternally(org.apache.poi.hssf.record.Record record) {
+	public void processRecordInternally(Record record) {
 		if (record instanceof FormatRecord) {
 			FormatRecord fr = (FormatRecord) record;
 			_customFormatRecords.put(Integer.valueOf(fr.getIndexCode()), fr);
@@ -154,8 +157,7 @@ public class FormatTrackingHSSFListener
 		if (formatIndex >= HSSFDataFormat.getNumberOfBuiltinBuiltinFormats()) {
 			FormatRecord tfr = _customFormatRecords.get(Integer.valueOf(formatIndex));
 			if (tfr == null) {
-				LOG.log( POILogger.ERROR, "Requested format at index ", formatIndex,
-						", but it wasn't found");
+				LOG.atError().log("Requested format at index {}, but it wasn't found", box(formatIndex));
 			} else {
 				format = tfr.getFormatString();
 			}
@@ -191,8 +193,7 @@ public class FormatTrackingHSSFListener
 	public int getFormatIndex(CellValueRecordInterface cell) {
 		ExtendedFormatRecord xfr = _xfRecords.get(cell.getXFIndex());
 		if (xfr == null) {
-			LOG.log( POILogger.ERROR, "Cell ", cell.getRow(), ",", cell.getColumn(),
-					" uses XF with index ", cell.getXFIndex(), ", but we don't have that");
+			LOG.atError().log("Cell {},{} uses XF with index {}, but we don't have that", box(cell.getRow()),box(cell.getColumn()),box(cell.getXFIndex()));
 			return -1;
 		}
 		return xfr.getFormatIndex();

Modified: poi/trunk/src/java/org/apache/poi/hssf/model/InternalSheet.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/model/InternalSheet.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/model/InternalSheet.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/model/InternalSheet.java Sun Feb 21 20:57:25 2021
@@ -21,6 +21,9 @@ import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.message.SimpleMessage;
 import org.apache.poi.hssf.record.*;
 import org.apache.poi.hssf.record.aggregates.ChartSubstreamRecordAggregate;
 import org.apache.poi.hssf.record.aggregates.ColumnInfoRecordsAggregate;
@@ -34,14 +37,15 @@ import org.apache.poi.hssf.record.aggreg
 import org.apache.poi.hssf.record.aggregates.RecordAggregate.RecordVisitor;
 import org.apache.poi.hssf.record.aggregates.RowRecordsAggregate;
 import org.apache.poi.hssf.record.aggregates.WorksheetProtectionBlock;
+import org.apache.poi.hssf.usermodel.HSSFSheet;
 import org.apache.poi.ss.formula.FormulaShifter;
 import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.ss.util.PaneInformation;
 import org.apache.poi.util.Internal;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.RecordFormatException;
 
+import static org.apache.logging.log4j.util.Unbox.box;
+
 /**
  * Low level model implementation of a Sheet (one workbook contains many sheets)
  * This file contains the low level binary records starting at the sheets BOF and
@@ -53,8 +57,8 @@ import org.apache.poi.util.RecordFormatE
  * Kit (Microsoft Press) and the documentation at http://sc.openoffice.org/excelfileformat.pdf
  * before even attempting to use this.
  *
- * @see org.apache.poi.hssf.model.InternalWorkbook
- * @see org.apache.poi.hssf.usermodel.HSSFSheet
+ * @see InternalWorkbook
+ * @see HSSFSheet
  */
 @Internal
 public final class InternalSheet {
@@ -63,7 +67,7 @@ public final class InternalSheet {
     public static final short   TopMargin = 2;
     public static final short   BottomMargin = 3;
 
-    private static POILogger            log              = POILogFactory.getLogger(InternalSheet.class);
+    private static final Logger LOGGER = LogManager.getLogger(InternalSheet.class);
 
     private List<RecordBase>             _records;
     protected PrintGridlinesRecord       printGridlines;
@@ -115,8 +119,8 @@ public final class InternalSheet {
      *
      * @return Sheet object with all values set to those read from the file
      *
-     * @see org.apache.poi.hssf.model.InternalWorkbook
-     * @see org.apache.poi.hssf.record.Record
+     * @see InternalWorkbook
+     * @see Record
      */
     public static InternalSheet createSheet(RecordStream rs) {
         return new InternalSheet(rs);
@@ -144,7 +148,7 @@ public final class InternalSheet {
             // Not a supported type
             // Skip onto the EOF, then complain
             while (rs.hasNext()) {
-                org.apache.poi.hssf.record.Record rec = rs.getNext();
+                Record rec = rs.getNext();
                 if (rec instanceof EOFRecord) {
                     break;
                 }
@@ -229,7 +233,7 @@ public final class InternalSheet {
                 continue;
             }
 
-            org.apache.poi.hssf.record.Record rec = rs.getNext();
+            Record rec = rs.getNext();
             if ( recSid == IndexRecord.sid ) {
                 // ignore INDEX record because it is only needed by Excel,
                 // and POI always re-calculates its contents
@@ -313,9 +317,7 @@ public final class InternalSheet {
                 // Not clear which application wrote these files.
                 rra = new RowRecordsAggregate();
             } else {
-                if (log.check(POILogger.WARN)) {
-                    log.log(POILogger.WARN, "DIMENSION record not found even though row/cells present");
-                }
+                LOGGER.atWarn().log("DIMENSION record not found even though row/cells present");
                 // Not sure if any tools write files like this, but Excel reads them OK
             }
             dimsloc = findFirstRecordLocBySid(WindowTwoRecord.sid);
@@ -330,8 +332,7 @@ public final class InternalSheet {
         // put merged cells table in the right place (regardless of where the first MergedCellsRecord was found */
         RecordOrderer.addNewSheetRecord(records, _mergedCellsTable);
         RecordOrderer.addNewSheetRecord(records, _protectionBlock);
-        if (log.check( POILogger.DEBUG ))
-            log.log(POILogger.DEBUG, "sheet createSheet (existing file) exited");
+        LOGGER.atDebug().log("sheet createSheet (existing file) exited");
     }
     private static void spillAggregate(RecordAggregate ra, final List<RecordBase> recs) {
         ra.visitContainedRecords(r -> recs.add(r));
@@ -351,12 +352,12 @@ public final class InternalSheet {
 
     private static final class RecordCloner implements RecordVisitor {
 
-        private final List<org.apache.poi.hssf.record.Record> _destList;
+        private final List<Record> _destList;
 
-        public RecordCloner(List<org.apache.poi.hssf.record.Record> destList) {
+        public RecordCloner(List<Record> destList) {
             _destList = destList;
         }
-        public void visitRecord(org.apache.poi.hssf.record.Record r) {
+        public void visitRecord(Record r) {
             _destList.add(r.copy());
         }
     }
@@ -371,7 +372,7 @@ public final class InternalSheet {
      * @return the cloned sheet
      */
     public InternalSheet cloneSheet() {
-        List<org.apache.poi.hssf.record.Record> clonedRecords = new ArrayList<>(_records.size());
+        List<Record> clonedRecords = new ArrayList<>(_records.size());
         for (int i = 0; i < _records.size(); i++) {
             RecordBase rb = _records.get(i);
             if (rb instanceof RecordAggregate) {
@@ -384,7 +385,7 @@ public final class InternalSheet {
                  */
                 rb = new DrawingRecord();
             }
-            org.apache.poi.hssf.record.Record rec = ((org.apache.poi.hssf.record.Record) rb).copy();
+            Record rec = ((Record) rb).copy();
             clonedRecords.add(rec);
         }
         return createSheet(new RecordStream(clonedRecords, 0));
@@ -405,7 +406,7 @@ public final class InternalSheet {
         _mergedCellsTable = new MergedCellsTable();
         List<RecordBase> records = new ArrayList<>(32);
 
-        log.log(POILogger.DEBUG, "Sheet createsheet from scratch called");
+        LOGGER.atDebug().log("Sheet createsheet from scratch called");
 
         records.add(createBOF());
 
@@ -452,7 +453,7 @@ public final class InternalSheet {
         records.add(EOFRecord.instance);
 
         _records = records;
-        log.log(POILogger.DEBUG, "Sheet createsheet from scratch exit");
+        LOGGER.atDebug().log("Sheet createsheet from scratch exit");
     }
 
     public RowRecordsAggregate getRowsAggregate() {
@@ -533,24 +534,22 @@ public final class InternalSheet {
      * @param lastrow the last row index
      * @param lastcol the last column index
      *
-     * @see org.apache.poi.hssf.record.DimensionsRecord
+     * @see DimensionsRecord
      */
     public void setDimensions(int firstrow, short firstcol, int lastrow, short lastcol)
     {
-        if (log.check( POILogger.DEBUG ))
-        {
-            log.log(POILogger.DEBUG, "Sheet.setDimensions");
-            log.log(POILogger.DEBUG,
-                    (new StringBuilder("firstrow")).append(firstrow)
-                        .append("firstcol").append(firstcol).append("lastrow")
-                        .append(lastrow).append("lastcol").append(lastcol)
-                        .toString());
-        }
+        LOGGER.atDebug().log("Sheet.setDimensions");
+        LOGGER.atDebug().log(() -> new SimpleMessage(
+                "firstrow" + firstrow +
+                        "firstcol" + firstcol +
+                        "lastrow" + lastrow +
+                        "lastcol" + lastcol
+        ));
         _dimensions.setFirstCol(firstcol);
         _dimensions.setFirstRow(firstrow);
         _dimensions.setLastCol(lastcol);
         _dimensions.setLastRow(lastrow);
-        log.log(POILogger.DEBUG, "Sheet.setDimensions exiting");
+        LOGGER.atDebug().log("Sheet.setDimensions exiting");
     }
 
     public void visitContainedRecords(RecordVisitor rv, int offset) {
@@ -566,7 +565,7 @@ public final class InternalSheet {
                 RecordAggregate agg = (RecordAggregate) record;
                 agg.visitContainedRecords(ptv);
             } else {
-                ptv.visitRecord((org.apache.poi.hssf.record.Record) record);
+                ptv.visitRecord((Record) record);
             }
 
             // If the BOF record was just serialized then add the IndexRecord
@@ -628,9 +627,7 @@ public final class InternalSheet {
      */
     public void addValueRecord(int row, CellValueRecordInterface col) {
 
-        if(log.check(POILogger.DEBUG)) {
-          log.log(POILogger.DEBUG, "add value record  row" + row);
-        }
+        LOGGER.atDebug().log("add value record row{}", box(row));
         DimensionsRecord d = _dimensions;
 
         if (col.getColumn() >= d.getLastCol()) {
@@ -649,11 +646,11 @@ public final class InternalSheet {
      *
      * @param row - the row of the value record you wish to remove
      * @param col - a record supporting the CellValueRecordInterface.
-     * @see org.apache.poi.hssf.record.CellValueRecordInterface
+     * @see CellValueRecordInterface
      */
     public void removeValueRecord(int row, CellValueRecordInterface col) {
 
-        log.log(POILogger.DEBUG, "remove value record row "+row);
+        LOGGER.atDebug().log("remove value record row {}", box(row));
         _rowsAggregate.removeCell(col);
     }
 
@@ -669,8 +666,7 @@ public final class InternalSheet {
 
     public void replaceValueRecord(CellValueRecordInterface newval) {
 
-        if (log.check( POILogger.DEBUG ))
-            log.log(POILogger.DEBUG, "replaceValueRecord ");
+        LOGGER.atDebug().log("replaceValueRecord ");
         //The ValueRecordsAggregate use a tree map underneath.
         //The tree Map uses the CellValueRecordInterface as both the
         //key and the value, if we dont do a remove, then
@@ -693,8 +689,7 @@ public final class InternalSheet {
      */
 
     public void addRow(RowRecord row) {
-        if (log.check( POILogger.DEBUG ))
-            log.log(POILogger.DEBUG, "addRow ");
+        LOGGER.atDebug().log("addRow ");
         DimensionsRecord d = _dimensions;
 
         if (row.getRowNumber() >= d.getLastRow()) {
@@ -712,8 +707,7 @@ public final class InternalSheet {
 
         _rowsAggregate.insertRow(row);
 
-        if (log.check( POILogger.DEBUG ))
-            log.log(POILogger.DEBUG, "exit addRow");
+        LOGGER.atDebug().log("exit addRow");
     }
 
     /**
@@ -1002,8 +996,8 @@ public final class InternalSheet {
     /**
      * get the width of a given column in units of 1/256th of a character width
      * @param columnIndex index
-     * @see org.apache.poi.hssf.record.DefaultColWidthRecord
-     * @see org.apache.poi.hssf.record.ColumnInfoRecord
+     * @see DefaultColWidthRecord
+     * @see ColumnInfoRecord
      * @see #setColumnWidth(int, int)
      * @return column width in units of 1/256th of a character width
      */
@@ -1057,8 +1051,8 @@ public final class InternalSheet {
     /**
      * Get the hidden property for a given column.
      * @param columnIndex column index
-     * @see org.apache.poi.hssf.record.DefaultColWidthRecord
-     * @see org.apache.poi.hssf.record.ColumnInfoRecord
+     * @see DefaultColWidthRecord
+     * @see ColumnInfoRecord
      * @see #setColumnHidden(int, boolean)
      * @return whether the column is hidden or not.
      */
@@ -1180,7 +1174,7 @@ public final class InternalSheet {
     /**
      * Returns the active row
      *
-     * @see org.apache.poi.hssf.record.SelectionRecord
+     * @see SelectionRecord
      * @return row the active row index
      */
     public int getActiveCellRow() {
@@ -1194,7 +1188,7 @@ public final class InternalSheet {
      * Sets the active row
      *
      * @param row the row index
-     * @see org.apache.poi.hssf.record.SelectionRecord
+     * @see SelectionRecord
      */
     public void setActiveCellRow(int row) {
         //shouldn't have a sheet w/o a SelectionRecord, but best to guard anyway
@@ -1204,7 +1198,7 @@ public final class InternalSheet {
     }
 
     /**
-     * @see org.apache.poi.hssf.record.SelectionRecord
+     * @see SelectionRecord
      * @return column of the active cell
      */
     public short getActiveCellCol() {
@@ -1218,7 +1212,7 @@ public final class InternalSheet {
      * Sets the active column
      *
      * @param col the column index
-     * @see org.apache.poi.hssf.record.SelectionRecord
+     * @see SelectionRecord
      */
     public void setActiveCellCol(short col) {
         //shouldn't have a sheet w/o a SelectionRecord, but best to guard anyway
@@ -1249,12 +1243,12 @@ public final class InternalSheet {
      *
      * @return the matching record or {@code null} if it wasn't found
      */
-    public org.apache.poi.hssf.record.Record findFirstRecordBySid(short sid) {
+    public Record findFirstRecordBySid(short sid) {
         int ix = findFirstRecordLocBySid(sid);
         if (ix < 0) {
             return null;
         }
-        return (org.apache.poi.hssf.record.Record) _records.get(ix);
+        return (Record) _records.get(ix);
     }
 
     /**
@@ -1285,10 +1279,10 @@ public final class InternalSheet {
         int max = _records.size();
         for (int i=0; i< max; i++) {
             Object rb = _records.get(i);
-            if (!(rb instanceof org.apache.poi.hssf.record.Record)) {
+            if (!(rb instanceof Record)) {
                 continue;
             }
-            org.apache.poi.hssf.record.Record record = (org.apache.poi.hssf.record.Record) rb;
+            Record record = (Record) rb;
             if (record.getSid() == sid) {
                 return i;
             }

Modified: poi/trunk/src/java/org/apache/poi/hssf/model/InternalWorkbook.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/model/InternalWorkbook.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/model/InternalWorkbook.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/model/InternalWorkbook.java Sun Feb 21 20:57:25 2021
@@ -17,7 +17,7 @@
 
 package org.apache.poi.hssf.model;
 
-import static org.apache.poi.util.POILogger.DEBUG;
+import static org.apache.logging.log4j.util.Unbox.box;
 
 import java.security.AccessControlException;
 import java.util.ArrayList;
@@ -26,6 +26,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.ddf.EscherBSERecord;
 import org.apache.poi.ddf.EscherBoolProperty;
 import org.apache.poi.ddf.EscherContainerRecord;
@@ -41,6 +43,7 @@ import org.apache.poi.ddf.EscherSplitMen
 import org.apache.poi.hssf.extractor.OldExcelExtractor;
 import org.apache.poi.hssf.record.*;
 import org.apache.poi.hssf.record.common.UnicodeString;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.hssf.util.HSSFColor.HSSFColorPredefined;
 import org.apache.poi.poifs.crypt.CryptoFunctions;
 import org.apache.poi.ss.formula.EvaluationWorkbook.ExternalName;
@@ -58,8 +61,6 @@ import org.apache.poi.ss.usermodel.Sheet
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.util.Internal;
 import org.apache.poi.util.LocaleUtil;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.RecordFormatException;
 
 /**
@@ -75,7 +76,7 @@ import org.apache.poi.util.RecordFormatE
  * Kit (Microsoft Press) and the documentation at http://sc.openoffice.org/excelfileformat.pdf
  * before even attempting to use this.
  *
- * @see org.apache.poi.hssf.usermodel.HSSFWorkbook
+ * @see HSSFWorkbook
  */
 @Internal
 public final class InternalWorkbook {
@@ -103,7 +104,7 @@ public final class InternalWorkbook {
      */
     public static final String OLD_WORKBOOK_DIR_ENTRY_NAME = "Book";
 
-    private static final POILogger LOG = POILogFactory.getLogger(InternalWorkbook.class);
+    private static final Logger LOG = LogManager.getLogger(InternalWorkbook.class);
 
     /**
      * constant used to set the "codepage" wherever "codepage" is set in records
@@ -179,15 +180,15 @@ public final class InternalWorkbook {
      * @param recs an array of Record objects
      * @return Workbook object
      */
-    public static InternalWorkbook createWorkbook(List<org.apache.poi.hssf.record.Record> recs) {
-        LOG.log(DEBUG, "Workbook (readfile) created with reclen=", recs.size());
+    public static InternalWorkbook createWorkbook(List<Record> recs) {
+        LOG.atDebug().log("Workbook (readfile) created with reclen={}", box(recs.size()));
         InternalWorkbook retval = new InternalWorkbook();
-        List<org.apache.poi.hssf.record.Record> records = new ArrayList<>(recs.size() / 3);
+        List<Record> records = new ArrayList<>(recs.size() / 3);
         retval.records.setRecords(records);
 
         boolean eofPassed = false;
         for (int k = 0; k < recs.size(); k++) {
-            org.apache.poi.hssf.record.Record rec = recs.get(k);
+            Record rec = recs.get(k);
             String logObj;
             switch (rec.getSid()) {
 
@@ -239,7 +240,7 @@ public final class InternalWorkbook {
                 case NameRecord.sid :
                 case SupBookRecord.sid :
                     // LinkTable can start with either of these
-                    LOG.log(DEBUG, "found SupBook record at " + k);
+                    LOG.atDebug().log("found SupBook record at {}", box(k));
                     retval.linkTable = new LinkTable(recs, k, retval.records, retval.commentRecords);
                     k+=retval.linkTable.getRecordCount() - 1;
                     continue;
@@ -300,7 +301,7 @@ public final class InternalWorkbook {
             if (!eofPassed) {
                 records.add(rec);
             }
-            LOG.log(DEBUG, "found "+logObj+" record at " + k);
+            LOG.atTrace().log("found {} record at {}", logObj, box(k));
             if (rec.getSid() == EOFRecord.sid) {
                 eofPassed = true;
             }
@@ -314,7 +315,7 @@ public final class InternalWorkbook {
         if (retval.windowOne == null) {
             retval.windowOne = createWindowOne();
         }
-        LOG.log(DEBUG, "exit create workbook from existing file function");
+        LOG.atDebug().log("exit create workbook from existing file function");
         return retval;
     }
 
@@ -325,10 +326,10 @@ public final class InternalWorkbook {
      * @return an empty workbook object
      */
     public static InternalWorkbook createWorkbook() {
-        LOG.log( DEBUG, "creating new workbook from scratch" );
+        LOG.atDebug().log("creating new workbook from scratch");
 
         InternalWorkbook retval = new InternalWorkbook();
-        List<org.apache.poi.hssf.record.Record> records = new ArrayList<>(30);
+        List<Record> records = new ArrayList<>(30);
         retval.records.setRecords(records);
         List<FormatRecord> formats = retval.formats;
 
@@ -400,7 +401,7 @@ public final class InternalWorkbook {
         records.add(InternalWorkbook.createExtendedSST());
 
         records.add(EOFRecord.instance);
-        LOG.log( DEBUG, "exit create new workbook from scratch" );
+        LOG.atDebug().log("exit create new workbook from scratch");
 
         return retval;
     }
@@ -523,7 +524,7 @@ public final class InternalWorkbook {
      */
 
     public void setSheetBof(int sheetIndex, int pos) {
-        LOG.log(DEBUG, "setting bof for sheetnum =", sheetIndex, " at pos=", pos);
+        LOG.atDebug().log("setting bof for sheetnum ={} at pos={}", box(sheetIndex),box(pos));
 
         checkSheets(sheetIndex);
         getBoundSheetRec(sheetIndex)
@@ -605,7 +606,7 @@ public final class InternalWorkbook {
         // also adjust order of Records, calculate the position of the Boundsheets via getBspos()...
         int initialBspos = records.getBspos();
         int pos0 = initialBspos - (boundsheets.size() - 1);
-        org.apache.poi.hssf.record.Record removed = records.get(pos0 + sheetNumber);
+        Record removed = records.get(pos0 + sheetNumber);
         records.remove(pos0 + sheetNumber);
 		records.add(pos0 + pos, removed);
         records.setBspos(initialBspos);
@@ -775,7 +776,7 @@ public final class InternalWorkbook {
      * make the tabid record look like the current situation.
      */
     private void fixTabIdRecord() {
-        org.apache.poi.hssf.record.Record rec = records.get(records.getTabpos());
+        Record rec = records.get(records.getTabpos());
 
         // see bug 55982, quite a number of documents do not have a TabIdRecord and
         // thus there is no way to do the fixup here,
@@ -800,7 +801,7 @@ public final class InternalWorkbook {
      */
 
     public int getNumSheets() {
-        LOG.log(DEBUG, "getNumSheets=", boundsheets.size());
+        LOG.atDebug().log("getNumSheets={}", box(boundsheets.size()));
         return boundsheets.size();
     }
 
@@ -811,7 +812,7 @@ public final class InternalWorkbook {
      */
 
     public int getNumExFormats() {
-        LOG.log(DEBUG, "getXF=", numxfs);
+        LOG.atDebug().log("getXF={}", box(numxfs));
         return numxfs;
     }
 
@@ -886,7 +887,7 @@ public final class InternalWorkbook {
         // Style records always follow after
         //  the ExtendedFormat records
         for(int i=records.getXfpos(); i<records.size(); i++) {
-            org.apache.poi.hssf.record.Record r = records.get(i);
+            Record r = records.get(i);
             if (r instanceof StyleRecord) {
                 StyleRecord sr = (StyleRecord)r;
                 if (sr.getXFIndex() == xfIndex) {
@@ -908,7 +909,7 @@ public final class InternalWorkbook {
         // Style records always follow after
         //  the ExtendedFormat records
         for(int i=records.getXfpos(); i<records.size(); i++) {
-            org.apache.poi.hssf.record.Record r = records.get(i);
+            Record r = records.get(i);
             if (r instanceof StyleRecord) {
                 StyleRecord sr = (StyleRecord)r;
                 if (sr.getXFIndex() == oldXf) {
@@ -937,7 +938,7 @@ public final class InternalWorkbook {
         int addAt = -1;
         for(int i=records.getXfpos(); i<records.size() &&
                 addAt == -1; i++) {
-            org.apache.poi.hssf.record.Record r = records.get(i);
+            Record r = records.get(i);
             if(r instanceof ExtendedFormatRecord ||
                     r instanceof StyleRecord) {
                 // Keep going
@@ -964,7 +965,7 @@ public final class InternalWorkbook {
      */
 
     public int addSSTString(UnicodeString string) {
-        LOG.log(DEBUG, "insert to sst string='", string);
+        LOG.atDebug().log("insert to sst string='{}'", string);
         if (sst == null) {
             insertSST();
         }
@@ -982,7 +983,7 @@ public final class InternalWorkbook {
         }
         UnicodeString retval = sst.getString(str);
 
-        LOG.log(DEBUG, "Returning SST for index=", str, " String= ", retval);
+        LOG.atTrace().log("Returning SST for index={} String= {}", box(str), retval);
         return retval;
     }
 
@@ -990,11 +991,11 @@ public final class InternalWorkbook {
      * use this function to add a Shared String Table to an existing sheet (say
      * generated by a different java api) without an sst....
      * @see #createExtendedSST()
-     * @see org.apache.poi.hssf.record.SSTRecord
+     * @see SSTRecord
      */
 
     public void insertSST() {
-        LOG.log(DEBUG, "creating new SST via insertSST!");
+        LOG.atDebug().log("creating new SST via insertSST!");
 
         sst = new SSTRecord();
         records.add(records.size() - 1, createExtendedSST());
@@ -1009,14 +1010,14 @@ public final class InternalWorkbook {
      * @return the length of serialized bytes
      */
     public int serialize( int offset, byte[] data ) {
-        LOG.log( DEBUG, "Serializing Workbook with offsets" );
+        LOG.atDebug().log("Serializing Workbook with offsets");
 
         int pos = 0;
 
         SSTRecord lSST = null;
         int sstPos = 0;
         boolean wroteBoundSheets = false;
-        for ( org.apache.poi.hssf.record.Record record : records.getRecords() ) {
+        for ( Record record : records.getRecords() ) {
             int len = 0;
             if (record instanceof SSTRecord) {
                 lSST = (SSTRecord)record;
@@ -1038,7 +1039,7 @@ public final class InternalWorkbook {
             pos += len;
         }
 
-        LOG.log( DEBUG, "Exiting serialize workbook" );
+        LOG.atDebug().log("Exiting serialize workbook");
         return pos;
     }
 
@@ -1062,7 +1063,7 @@ public final class InternalWorkbook {
         int retval = 0;
 
         SSTRecord lSST = null;
-        for ( org.apache.poi.hssf.record.Record record : records.getRecords() ) {
+        for ( Record record : records.getRecords() ) {
             if (record instanceof SSTRecord) {
                 lSST = (SSTRecord)record;
             }
@@ -1115,7 +1116,7 @@ public final class InternalWorkbook {
 
             retval.setUsername(username);
         } catch (AccessControlException e) {
-            LOG.log(POILogger.WARN, "can't determine user.name", e);
+            LOG.atWarn().withThrowable(e).log("can't determine user.name");
             // AccessControlException can occur in a restricted context
             // (client applet/jws application or restricted security server)
             retval.setUsername(defaultUserName);
@@ -1426,8 +1427,8 @@ public final class InternalWorkbook {
      * Always sets the sheet's bof to 0.  You'll need to set that yourself.
      * @param id either sheet 0,1 or 2.
      * @return record containing a BoundSheetRecord
-     * @see org.apache.poi.hssf.record.BoundSheetRecord
-     * @see org.apache.poi.hssf.record.Record
+     * @see BoundSheetRecord
+     * @see Record
      */
     private static BoundSheetRecord createBoundSheet(int id) {
         return new BoundSheetRecord("Sheet" + (id+1));
@@ -1707,8 +1708,8 @@ public final class InternalWorkbook {
      * Creates a FormatRecord, inserts it, and returns the index code.
      * @param formatString the format string
      * @return the index code of the format record.
-     * @see org.apache.poi.hssf.record.FormatRecord
-     * @see org.apache.poi.hssf.record.Record
+     * @see FormatRecord
+     * @see Record
      */
     public int createFormat(String formatString) {
 
@@ -1734,8 +1735,8 @@ public final class InternalWorkbook {
      *
      * @return the matching record or {@code null} if it wasn't found
      */
-    public org.apache.poi.hssf.record.Record findFirstRecordBySid(short sid) {
-        for (org.apache.poi.hssf.record.Record record : records.getRecords() ) {
+    public Record findFirstRecordBySid(short sid) {
+        for (Record record : records.getRecords() ) {
             if (record.getSid() == sid) {
                 return record;
             }
@@ -1750,7 +1751,7 @@ public final class InternalWorkbook {
      */
     public int findFirstRecordLocBySid(short sid) {
         int index = 0;
-        for (org.apache.poi.hssf.record.Record record : records.getRecords() ) {
+        for (Record record : records.getRecords() ) {
             if (record.getSid() == sid) {
                 return index;
             }
@@ -1767,9 +1768,9 @@ public final class InternalWorkbook {
      *
      * @return the matching record or {@code null} if it wasn't found
      */
-    public org.apache.poi.hssf.record.Record findNextRecordBySid(short sid, int pos) {
+    public Record findNextRecordBySid(short sid, int pos) {
         int matches = 0;
-        for (org.apache.poi.hssf.record.Record record : records.getRecords() ) {
+        for (Record record : records.getRecords() ) {
             if (record.getSid() == sid && matches++ == pos) {
                 return record;
             }
@@ -1782,7 +1783,7 @@ public final class InternalWorkbook {
         return hyperlinks;
     }
 
-    public List<org.apache.poi.hssf.record.Record> getRecords() {
+    public List<Record> getRecords() {
         return records.getRecords();
     }
 
@@ -1806,7 +1807,7 @@ public final class InternalWorkbook {
         PaletteRecord palette;
         int palettePos = records.getPalettepos();
         if (palettePos != -1) {
-            org.apache.poi.hssf.record.Record rec = records.get(palettePos);
+            Record rec = records.get(palettePos);
             if (rec instanceof PaletteRecord) {
                 palette = (PaletteRecord) rec;
             } else {
@@ -1833,7 +1834,7 @@ public final class InternalWorkbook {
         }
 
         // Need to find a DrawingGroupRecord that contains a EscherDggRecord
-        for(org.apache.poi.hssf.record.Record r : records.getRecords() ) {
+        for(Record r : records.getRecords() ) {
             if (!(r instanceof DrawingGroupRecord)) {
                 continue;
             }
@@ -2207,7 +2208,7 @@ public final class InternalWorkbook {
      *
      * @return a new RecalcIdRecord
      *
-     * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#setForceFormulaRecalculation(boolean)
+     * @see HSSFWorkbook#setForceFormulaRecalculation(boolean)
      */
     public RecalcIdRecord getRecalcId(){
         RecalcIdRecord record = (RecalcIdRecord)findFirstRecordBySid(RecalcIdRecord.sid);

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/CFRule12Record.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/CFRule12Record.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/CFRule12Record.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/CFRule12Record.java Sun Feb 21 20:57:25 2021
@@ -40,7 +40,8 @@ import org.apache.poi.ss.usermodel.IconM
 import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogger;
+
+import static org.apache.logging.log4j.util.Unbox.box;
 
 /**
  * Conditional Formatting v12 Rule Record (0x087A).
@@ -285,7 +286,7 @@ public final class CFRule12Record extend
             template_params = IOUtils.safelyAllocate(template_param_length, MAX_RECORD_LENGTH);
             in.readFully(template_params);
         } else {
-            LOG.log(POILogger.WARN, "CF Rule v12 template params length should be 0 or 16, found " + template_param_length);
+            LOG.atWarn().log("CF Rule v12 template params length should be 0 or 16, found {}", box(template_param_length));
             in.readRemainder();
         }
 

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/CFRuleBase.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/CFRuleBase.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/CFRuleBase.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/CFRuleBase.java Sun Feb 21 20:57:25 2021
@@ -20,6 +20,8 @@ package org.apache.poi.hssf.record;
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.hssf.model.HSSFFormulaParser;
 import org.apache.poi.hssf.record.cf.BorderFormatting;
 import org.apache.poi.hssf.record.cf.FontFormatting;
@@ -32,8 +34,6 @@ import org.apache.poi.util.BitField;
 import org.apache.poi.util.BitFieldFactory;
 import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 
 /**
  * Conditional Formatting Rules. This can hold old-style rules
@@ -95,7 +95,7 @@ public abstract class CFRuleBase extends
     public static final int TEMPLATE_ABOVE_OR_EQUAL_TO_AVERAGE = 0x001D;
     public static final int TEMPLATE_BELOW_OR_EQUAL_TO_AVERAGE = 0x001E;
 
-    protected static final POILogger LOG = POILogFactory.getLogger(CFRuleBase.class);
+    protected static final Logger LOG = LogManager.getLogger(CFRuleBase.class);
 
     static final BitField modificationBits = bf(0x003FFFFF); // Bits: font,align,bord,patt,prot
     static final BitField alignHor         = bf(0x00000001); // 0 = Horizontal alignment modified

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/DimensionsRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/DimensionsRecord.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/DimensionsRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/DimensionsRecord.java Sun Feb 21 20:57:25 2021
@@ -22,10 +22,10 @@ package org.apache.poi.hssf.record;
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 
 /**
  * Provides the minumum and maximum bounds of a sheet.
@@ -35,7 +35,7 @@ import org.apache.poi.util.POILogger;
 
 public final class DimensionsRecord extends StandardRecord {
 
-    private static final POILogger LOG = POILogFactory.getLogger(DimensionsRecord.class);
+    private static final Logger LOG = LogManager.getLogger(DimensionsRecord.class);
 
     public static final short sid = 0x200;
     private int               field_1_first_row;
@@ -63,7 +63,7 @@ public final class DimensionsRecord exte
         field_5_zero      = in.readShort();
         //POI-61045 -- in practice, there can be an extra 2 bytes
         if (in.available() == 2) {
-            LOG.log(POILogger.INFO, "DimensionsRecord has extra 2 bytes.");
+            LOG.atInfo().log("DimensionsRecord has extra 2 bytes.");
             in.readShort();
         }
     }

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java Sun Feb 21 20:57:25 2021
@@ -21,6 +21,8 @@ import java.io.ByteArrayInputStream;
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.ss.formula.ptg.Area3DPtg;
 import org.apache.poi.ss.formula.ptg.AreaPtg;
 import org.apache.poi.ss.formula.ptg.Ptg;
@@ -32,18 +34,18 @@ import org.apache.poi.util.LittleEndianC
 import org.apache.poi.util.LittleEndianInput;
 import org.apache.poi.util.LittleEndianInputStream;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.RecordFormatException;
 import org.apache.poi.util.StringUtil;
 
+import static org.apache.logging.log4j.util.Unbox.box;
+
 /**
  * ftPictFmla (0x0009)<p>
  * A sub-record within the OBJ record which stores a reference to an object
  * stored in a separate entry within the OLE2 compound file.
  */
 public final class EmbeddedObjectRefSubRecord extends SubRecord {
-	private static final POILogger LOG = POILogFactory.getLogger(EmbeddedObjectRefSubRecord.class);
+	private static final Logger LOG = LogManager.getLogger(EmbeddedObjectRefSubRecord.class);
 	//arbitrarily selected; may need to increase
 	private static final int MAX_RECORD_LENGTH = 100_000;
 
@@ -157,7 +159,7 @@ public final class EmbeddedObjectRefSubR
 		int nUnexpectedPadding = remaining - dataLenAfterFormula;
 
 		if (nUnexpectedPadding > 0) {
-			LOG.log( POILogger.ERROR, "Discarding ", nUnexpectedPadding, " unexpected padding bytes");
+			LOG.atError().log("Discarding {} unexpected padding bytes", box(nUnexpectedPadding));
 			readRawData(in, nUnexpectedPadding);
 			remaining-=nUnexpectedPadding;
 		}

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/FeatRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/FeatRecord.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/FeatRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/FeatRecord.java Sun Feb 21 20:57:25 2021
@@ -21,6 +21,8 @@ import java.util.Map;
 import java.util.function.Supplier;
 import java.util.stream.Stream;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.hssf.record.common.FeatFormulaErr2;
 import org.apache.poi.hssf.record.common.FeatProtection;
 import org.apache.poi.hssf.record.common.FeatSmartTag;
@@ -29,8 +31,8 @@ import org.apache.poi.hssf.record.common
 import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
+
+import static org.apache.logging.log4j.util.Unbox.box;
 
 /**
  * Title: Feat (Feature) Record
@@ -39,8 +41,8 @@ import org.apache.poi.util.POILogger;
  *  up with a {@link FeatHdrRecord}.
  */
 public final class FeatRecord extends StandardRecord {
-    private static final POILogger LOG = POILogFactory.getLogger(FeatRecord.class);
-    public static final short sid = 0x0868;
+    private static final Logger LOG = LogManager.getLogger(FeatRecord.class);
+	public static final short sid = 0x0868;
     // SIDs from newer versions
     public static final short v11_sid = 0x0872;
     public static final short v12_sid = 0x0878;
@@ -108,7 +110,7 @@ public final class FeatRecord extends St
 			sharedFeature = new FeatSmartTag(in);
 			break;
 		default:
-			LOG.log( POILogger.ERROR, "Unknown Shared Feature ", isf_sharedFeatureType, " found!");
+			LOG.atError().log("Unknown Shared Feature {} found!", box(isf_sharedFeatureType));
 		}
 	}
 

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/FormatRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/FormatRecord.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/FormatRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/FormatRecord.java Sun Feb 21 20:57:25 2021
@@ -21,19 +21,22 @@ import java.util.Arrays;
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.poi.hssf.model.InternalWorkbook;
 import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianConsts;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.StringUtil;
 
+import static org.apache.logging.log4j.util.Unbox.box;
+
 /**
  * Describes a number format -- those goofy strings like $(#,###)
  */
 public final class FormatRecord extends StandardRecord {
 
-    private static final POILogger LOG = POILogFactory.getLogger(FormatRecord.class);
+    private static final Logger LOG = LogManager.getLogger(FormatRecord.class);
 
     public static final short sid = 0x041E;
 
@@ -70,7 +73,7 @@ public final class FormatRecord extends
      * get the format index code (for built in formats)
      *
      * @return the format index code
-     * @see org.apache.poi.hssf.model.InternalWorkbook
+     * @see InternalWorkbook
      */
     public int getIndexCode() {
         return field_1_index_code;
@@ -149,7 +152,7 @@ public final class FormatRecord extends
         }
 
         if (ris.available() > 0) {
-            LOG.log(POILogger.INFO, "FormatRecord has ", ris.available(), " unexplained bytes. Silently skipping");
+            LOG.atInfo().log("FormatRecord has {} unexplained bytes. Silently skipping", box(ris.available()));
             //swallow what's left
             while (ris.available() > 0) {
                 ris.readByte();

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/HyperlinkRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/HyperlinkRecord.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/HyperlinkRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/HyperlinkRecord.java Sun Feb 21 20:57:25 2021
@@ -17,24 +17,26 @@
 
 package org.apache.poi.hssf.record;
 
+import static org.apache.logging.log4j.util.Unbox.box;
 import static org.apache.poi.hpsf.ClassIDPredefined.FILE_MONIKER;
 import static org.apache.poi.hpsf.ClassIDPredefined.STD_MONIKER;
 import static org.apache.poi.hpsf.ClassIDPredefined.URL_MONIKER;
 import static org.apache.poi.util.GenericRecordUtil.getBitsAsString;
+import static org.apache.poi.util.HexDump.toHex;
 
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.hpsf.ClassID;
+import org.apache.poi.hpsf.ClassIDPredefined;
 import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.util.GenericRecordUtil;
-import org.apache.poi.util.HexDump;
 import org.apache.poi.util.HexRead;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.LittleEndianInput;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.RecordFormatException;
 import org.apache.poi.util.StringUtil;
 
@@ -45,7 +47,7 @@ import org.apache.poi.util.StringUtil;
  */
 public final class HyperlinkRecord extends StandardRecord {
     public static final short sid = 0x01B8;
-    private static final POILogger LOG = POILogFactory.getLogger(HyperlinkRecord.class);
+    private static final Logger LOG = LogManager.getLogger(HyperlinkRecord.class);
     //arbitrarily selected; may need to increase
     private static final int MAX_RECORD_LENGTH = 100_000;
 
@@ -184,7 +186,7 @@ public final class HyperlinkRecord exten
     }
 
     /**
-     * @return 16-byte guid identifier Seems to always equal {@link org.apache.poi.hpsf.ClassIDPredefined#STD_MONIKER}
+     * @return 16-byte guid identifier Seems to always equal {@link ClassIDPredefined#STD_MONIKER}
      */
     ClassID getGuid() {
         return _guid;
@@ -403,10 +405,7 @@ public final class HyperlinkRecord exten
         }
 
         if (in.remaining() > 0) {
-           LOG.log(POILogger.WARN,
-                 "Hyperlink data remains: " + in.remaining() +
-                 " : " +HexDump.toHex(in.readRemainder())
-           );
+            LOG.atWarn().log("Hyperlink data remains: {} : {}", box(in.remaining()), toHex(in.readRemainder()));
         }
     }
 

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/LabelRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/LabelRecord.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/LabelRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/LabelRecord.java Sun Feb 21 20:57:25 2021
@@ -20,20 +20,22 @@ package org.apache.poi.hssf.record;
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.util.GenericRecordUtil;
-import org.apache.poi.util.HexDump;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.RecordFormatException;
 
+import static org.apache.logging.log4j.util.Unbox.box;
+import static org.apache.poi.util.HexDump.toHex;
+
 /**
  * Label Record (0x0204) - read only support for strings stored directly in the cell...
  * Don't use this (except to read), use LabelSST instead
  *
- * @see org.apache.poi.hssf.record.LabelSSTRecord
+ * @see LabelSSTRecord
  */
 public final class LabelRecord extends Record implements CellValueRecordInterface {
-    private static final POILogger LOG = POILogFactory.getLogger(LabelRecord.class);
+    private static final Logger LOG = LogManager.getLogger(LabelRecord.class);
 
     public static final short sid = 0x0204;
 
@@ -77,10 +79,7 @@ public final class LabelRecord extends R
         }
 
         if (in.remaining() > 0) {
-           LOG.log(POILogger.INFO,
-                   "LabelRecord data remains: ", in.remaining(),
-                           " : ", HexDump.toHex(in.readRemainder())
-           );
+            LOG.atInfo().log("LabelRecord data remains: {} : {}", box(in.remaining()), toHex(in.readRemainder()));
         }
     }
 

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/OldLabelRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/OldLabelRecord.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/OldLabelRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/OldLabelRecord.java Sun Feb 21 20:57:25 2021
@@ -20,20 +20,22 @@ package org.apache.poi.hssf.record;
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.util.GenericRecordUtil;
-import org.apache.poi.util.HexDump;
 import org.apache.poi.util.IOUtils;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.RecordFormatException;
 
+import static org.apache.logging.log4j.util.Unbox.box;
+import static org.apache.poi.util.HexDump.toHex;
+
 /**
  * Biff2 - Biff 4 Label Record (0x0004 / 0x0204) - read only support for
  *  strings stored directly in the cell, from the older file formats that
  *  didn't use {@link LabelSSTRecord}
  */
 public final class OldLabelRecord extends OldCellRecord {
-    private static final POILogger LOG = POILogFactory.getLogger(OldLabelRecord.class);
+    private static final Logger LOG = LogManager.getLogger(OldLabelRecord.class);
     //arbitrarily set, may need to increase
     private static final int MAX_RECORD_LENGTH = 100_000;
 
@@ -62,10 +64,7 @@ public final class OldLabelRecord extend
         in.read(field_5_bytes, 0, field_4_string_len);
 
         if (in.remaining() > 0) {
-            LOG.log(POILogger.INFO,
-                    "LabelRecord data remains: ", in.remaining(),
-                    " : ", HexDump.toHex(in.readRemainder())
-                    );
+            LOG.atInfo().log("LabelRecord data remains: {} : {}", box(in.remaining()), toHex(in.readRemainder()));
         }
     }
 

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/SSTDeserializer.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/SSTDeserializer.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/SSTDeserializer.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/SSTDeserializer.java Sun Feb 21 20:57:25 2021
@@ -19,10 +19,12 @@
 
 package org.apache.poi.hssf.record;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.hssf.record.common.UnicodeString;
 import org.apache.poi.util.IntMapper;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
+
+import static org.apache.logging.log4j.util.Unbox.box;
 
 /**
  * Handles the task of deserializing a SST string.  The two main entry points are
@@ -32,7 +34,7 @@ import org.apache.poi.util.POILogger;
  */
 class SSTDeserializer
 {
-	private static final POILogger LOG = POILogFactory.getLogger(SSTDeserializer.class);
+	private static final Logger LOG = LogManager.getLogger(SSTDeserializer.class);
     private IntMapper<UnicodeString> strings;
 
     public SSTDeserializer( IntMapper<UnicodeString> strings )
@@ -51,7 +53,7 @@ class SSTDeserializer
          // Extract exactly the count of strings from the SST record.
          UnicodeString str;
           if (in.available() == 0 && !in.hasNextRecord()) {
-              LOG.log(POILogger.ERROR, "Ran out of data before creating all the strings! String at index ", i);
+              LOG.atError().log("Ran out of data before creating all the strings! String at index {}", box(i));
               str = new UnicodeString("");
           } else {
               str = new UnicodeString(in);

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/SupBookRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/SupBookRecord.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/SupBookRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/SupBookRecord.java Sun Feb 21 20:57:25 2021
@@ -20,10 +20,10 @@ package org.apache.poi.hssf.record;
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.StringUtil;
 
 /**
@@ -32,7 +32,7 @@ import org.apache.poi.util.StringUtil;
  */
 public final class SupBookRecord extends StandardRecord {
 
-    private static final POILogger LOG = POILogFactory.getLogger(SupBookRecord.class);
+    private static final Logger LOG = LogManager.getLogger(SupBookRecord.class);
 
     public static final short sid = 0x01AE;
 
@@ -222,12 +222,12 @@ public final class SupBookRecord extends
         		break;
         	case CH_LONG_VOLUME:
         		//Don't known to handle...
-        		LOG.log(POILogger.WARN, "Found unexpected key: ChLongVolume - IGNORING");
+        		LOG.atWarn().log("Found unexpected key: ChLongVolume - IGNORING");
         		break;
         	case CH_STARTUP_DIR:
         	case CH_ALT_STARTUP_DIR:
         	case CH_LIB_DIR:
-        		LOG.log(POILogger.WARN, "EXCEL.EXE path unkown - using this directoy instead: .");
+        		LOG.atWarn().log("EXCEL.EXE path unknown - using this directory instead: .");
         		sb.append(".").append(PATH_SEPERATOR);
         		break;
         	default:

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/aggregates/CFRecordsAggregate.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/aggregates/CFRecordsAggregate.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/aggregates/CFRecordsAggregate.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/aggregates/CFRecordsAggregate.java Sun Feb 21 20:57:25 2021
@@ -22,6 +22,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.common.usermodel.GenericRecord;
 import org.apache.poi.hssf.model.RecordStream;
 import org.apache.poi.hssf.record.CFHeader12Record;
@@ -37,10 +39,10 @@ import org.apache.poi.ss.usermodel.helpe
 import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.util.GenericRecordJsonWriter;
 import org.apache.poi.util.GenericRecordUtil;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.RecordFormatException;
 
+import static org.apache.logging.log4j.util.Unbox.box;
+
 /**
  * <p>CFRecordsAggregate - aggregates Conditional Formatting records CFHeaderRecord
  * and number of up CFRuleRecord records together to simplify access to them.</p>
@@ -52,7 +54,7 @@ import org.apache.poi.util.RecordFormatE
 public final class CFRecordsAggregate extends RecordAggregate implements GenericRecord {
     /** Excel 97-2003 allows up to 3 conditional formating rules */
     private static final int MAX_97_2003_CONDTIONAL_FORMAT_RULES = 3;
-    private static final POILogger LOG = POILogFactory.getLogger(CFRecordsAggregate.class);
+    private static final Logger LOG = LogManager.getLogger(CFRecordsAggregate.class);
 
     private final CFHeaderBase header;
 
@@ -72,10 +74,9 @@ public final class CFRecordsAggregate ex
             throw new IllegalArgumentException("rules must not be null");
         }
         if(pRules.length > MAX_97_2003_CONDTIONAL_FORMAT_RULES) {
-            LOG.log(POILogger.WARN, "Excel versions before 2007 require that "
-                    + "No more than " + MAX_97_2003_CONDTIONAL_FORMAT_RULES
-                    + " rules may be specified, " + pRules.length + " were found,"
-                    + " this file will cause problems with old Excel versions");
+            LOG.atWarn().log("Excel versions before 2007 require that No more than " +
+                    MAX_97_2003_CONDTIONAL_FORMAT_RULES + " rules may be specified, {} were found, this file will " +
+                    "cause problems with old Excel versions", box(pRules.length));
         }
         if (pRules.length != pHeader.getNumberOfConditionalFormats()) {
             throw new RecordFormatException("Mismatch number of rules");
@@ -181,7 +182,7 @@ public final class CFRecordsAggregate ex
             throw new IllegalArgumentException("r must not be null");
         }
         if(rules.size() >= MAX_97_2003_CONDTIONAL_FORMAT_RULES) {
-            LOG.log(POILogger.WARN, "Excel versions before 2007 cannot cope with"
+            LOG.atWarn().log("Excel versions before 2007 cannot cope with"
                     + " any more than " + MAX_97_2003_CONDTIONAL_FORMAT_RULES
                     + " - this file will cause problems with old Excel versions");
         }

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/cf/ColorGradientFormatting.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/cf/ColorGradientFormatting.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/cf/ColorGradientFormatting.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/cf/ColorGradientFormatting.java Sun Feb 21 20:57:25 2021
@@ -21,6 +21,8 @@ import java.util.Map;
 import java.util.function.Supplier;
 import java.util.stream.Stream;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.common.Duplicatable;
 import org.apache.poi.common.usermodel.GenericRecord;
 import org.apache.poi.hssf.record.common.ExtendedColor;
@@ -30,8 +32,8 @@ import org.apache.poi.util.GenericRecord
 import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianInput;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
+
+import static org.apache.logging.log4j.util.Unbox.box;
 
 /**
  * Color Gradient / Color Scale Conditional Formatting Rule Record.
@@ -39,7 +41,7 @@ import org.apache.poi.util.POILogger;
  *  Color Scale in the UI)
  */
 public final class ColorGradientFormatting implements Duplicatable, GenericRecord {
-    private static final POILogger log = POILogFactory.getLogger(ColorGradientFormatting.class);
+    private static final Logger LOGGER = LogManager.getLogger(ColorGradientFormatting.class);
 
     private static final BitField clamp = BitFieldFactory.getInstance(0x01);
     private static final BitField background = BitFieldFactory.getInstance(0x02);
@@ -70,7 +72,7 @@ public final class ColorGradientFormatti
         int numI = in.readByte();
         int numG = in.readByte();
         if (numI != numG) {
-            log.log(POILogger.WARN, "Inconsistent Color Gradient defintion, found " + numI + " vs " + numG + " entries");
+            LOGGER.atWarn().log("Inconsistent Color Gradient definition, found {} vs {} entries", box(numI),box(numG));
         }
         options = in.readByte();
 

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/cf/DataBarFormatting.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/cf/DataBarFormatting.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/cf/DataBarFormatting.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/cf/DataBarFormatting.java Sun Feb 21 20:57:25 2021
@@ -17,11 +17,14 @@
 
 package org.apache.poi.hssf.record.cf;
 
+import static org.apache.logging.log4j.util.Unbox.box;
 import static org.apache.poi.util.GenericRecordUtil.getBitsAsString;
 
 import java.util.Map;
 import java.util.function.Supplier;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.common.Duplicatable;
 import org.apache.poi.common.usermodel.GenericRecord;
 import org.apache.poi.hssf.record.common.ExtendedColor;
@@ -31,14 +34,12 @@ import org.apache.poi.util.GenericRecord
 import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianInput;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 
 /**
  * Data Bar Conditional Formatting Rule Record.
  */
 public final class DataBarFormatting implements Duplicatable, GenericRecord {
-    private static final POILogger LOG = POILogFactory.getLogger(DataBarFormatting.class);
+    private static final Logger LOG = LogManager.getLogger(DataBarFormatting.class);
 
     private static final BitField ICON_ONLY = BitFieldFactory.getInstance(0x01);
     private static final BitField REVERSED = BitFieldFactory.getInstance(0x04);
@@ -71,9 +72,9 @@ public final class DataBarFormatting imp
         percentMin = in.readByte();
         percentMax = in.readByte();
         if (percentMin < 0 || percentMin > 100)
-            LOG.log(POILogger.WARN, "Inconsistent Minimum Percentage found " + percentMin);
+            LOG.atWarn().log("Inconsistent Minimum Percentage found {}", box(percentMin));
         if (percentMax < 0 || percentMax > 100)
-            LOG.log(POILogger.WARN, "Inconsistent Maximum Percentage found " + percentMax);
+            LOG.atWarn().log("Inconsistent Maximum Percentage found {}", box(percentMax));
 
         color = new ExtendedColor(in);
         thresholdMin = new DataBarThreshold(in);

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/cf/IconMultiStateFormatting.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/cf/IconMultiStateFormatting.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/cf/IconMultiStateFormatting.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/cf/IconMultiStateFormatting.java Sun Feb 21 20:57:25 2021
@@ -21,6 +21,8 @@ import java.util.Map;
 import java.util.function.Supplier;
 import java.util.stream.Stream;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.common.Duplicatable;
 import org.apache.poi.common.usermodel.GenericRecord;
 import org.apache.poi.ss.usermodel.IconMultiStateFormatting.IconSet;
@@ -30,14 +32,14 @@ import org.apache.poi.util.GenericRecord
 import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianInput;
 import org.apache.poi.util.LittleEndianOutput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
+
+import static org.apache.logging.log4j.util.Unbox.box;
 
 /**
  * Icon / Multi-State Conditional Formatting Rule Record.
  */
 public final class IconMultiStateFormatting implements Duplicatable, GenericRecord {
-    private static final POILogger LOG = POILogFactory.getLogger(IconMultiStateFormatting.class);
+    private static final Logger LOG = LogManager.getLogger(IconMultiStateFormatting.class);
 
     private static BitField ICON_ONLY = BitFieldFactory.getInstance(0x01);
     private static BitField REVERSED = BitFieldFactory.getInstance(0x04);
@@ -67,7 +69,7 @@ public final class IconMultiStateFormatt
         int set = in.readByte();
         iconSet = IconSet.byId(set);
         if (iconSet.num != num) {
-            LOG.log(POILogger.WARN, "Inconsistent Icon Set defintion, found " + iconSet + " but defined as " + num + " entries");
+            LOG.atWarn().log("Inconsistent Icon Set definition, found {} but defined as {} entries", iconSet, box(num));
         }
         options = in.readByte();
 

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/common/ExtRst.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/common/ExtRst.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/common/ExtRst.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/common/ExtRst.java Sun Feb 21 20:57:25 2021
@@ -22,19 +22,21 @@ import java.util.Map;
 import java.util.function.Supplier;
 import java.util.stream.Stream;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.common.usermodel.GenericRecord;
 import org.apache.poi.hssf.record.cont.ContinuableRecordOutput;
 import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.Internal;
 import org.apache.poi.util.LittleEndianInput;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.StringUtil;
 
+import static org.apache.logging.log4j.util.Unbox.box;
+
 @Internal
 public class ExtRst implements Comparable<ExtRst>, GenericRecord {
-    private static final POILogger LOG = POILogFactory.getLogger(ExtRst.class);
+    private static final Logger LOG = LogManager.getLogger(ExtRst.class);
     //arbitrarily selected; may need to increase
     private static final int MAX_RECORD_LENGTH = 100_000;
 
@@ -78,7 +80,7 @@ public class ExtRst implements Comparabl
 
         // Spot corrupt records
         if(reserved != 1) {
-            LOG.log(POILogger.WARN, "Warning - ExtRst has wrong magic marker, expecting 1 but found ", reserved, " - ignoring");
+            LOG.atWarn().log("ExtRst has wrong magic marker, expecting 1 but found {} - ignoring", box(reserved));
             // Grab all the remaining data, and ignore it
             for(int i=0; i<expectedLength-2; i++) {
                 in.readByte();
@@ -121,7 +123,7 @@ public class ExtRst implements Comparabl
 
         int extraDataLength = runData - (numRuns*6);
         if(extraDataLength < 0) {
-            LOG.log( POILogger.WARN, "Warning - ExtRst overran by ",  (0-extraDataLength), " bytes");
+            LOG.atWarn().log("ExtRst overran by {} bytes", box(-extraDataLength));
             extraDataLength = 0;
         }
         extraData = IOUtils.safelyAllocate(extraDataLength, MAX_RECORD_LENGTH);

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/common/UnicodeString.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/common/UnicodeString.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/common/UnicodeString.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/common/UnicodeString.java Sun Feb 21 20:57:25 2021
@@ -26,6 +26,8 @@ import java.util.Objects;
 import java.util.function.Supplier;
 import java.util.stream.Collectors;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.common.Duplicatable;
 import org.apache.poi.common.usermodel.GenericRecord;
 import org.apache.poi.hssf.record.RecordInputStream;
@@ -34,8 +36,8 @@ import org.apache.poi.hssf.record.cont.C
 import org.apache.poi.util.BitField;
 import org.apache.poi.util.BitFieldFactory;
 import org.apache.poi.util.GenericRecordUtil;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
+
+import static org.apache.logging.log4j.util.Unbox.box;
 
 /**
  * Unicode String - just standard fields that are in several records.
@@ -43,7 +45,7 @@ import org.apache.poi.util.POILogger;
  * This is often called a XLUnicodeRichExtendedString in MS documentation.<p>
  */
 public class UnicodeString implements Comparable<UnicodeString>, Duplicatable, GenericRecord {
-    private static final POILogger LOG = POILogFactory.getLogger(UnicodeString.class);
+    private static final Logger LOG = LogManager.getLogger(UnicodeString.class);
 
     private static final BitField highByte  = BitFieldFactory.getInstance(0x1);
     // 0x2 is reserved
@@ -102,7 +104,7 @@ public class UnicodeString implements Co
         if (isExtendedText() && (extensionLength > 0)) {
           field_5_ext_rst = new ExtRst(new ContinuableRecordInput(in), extensionLength);
           if(field_5_ext_rst.getDataSize()+4 != extensionLength) {
-             LOG.log(POILogger.WARN, "ExtRst was supposed to be " + extensionLength + " bytes long, but seems to actually be " + (field_5_ext_rst.getDataSize() + 4));
+              LOG.atWarn().log("ExtRst was supposed to be {} bytes long, but seems to actually be {}", box(extensionLength),box(field_5_ext_rst.getDataSize() + 4));
           }
         }
     }

Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/EscherGraphics.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/EscherGraphics.java?rev=1886770&r1=1886769&r2=1886770&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/EscherGraphics.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/EscherGraphics.java Sun Feb 21 20:57:25 2021
@@ -17,10 +17,10 @@
 
 package org.apache.poi.hssf.usermodel;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.apache.poi.hssf.util.HSSFColor;
 import org.apache.poi.util.NotImplemented;
-import org.apache.poi.util.POILogFactory;
-import org.apache.poi.util.POILogger;
 import org.apache.poi.util.SuppressForbidden;
 
 import java.awt.*;
@@ -60,7 +60,7 @@ import java.text.AttributedCharacterIter
  * </blockquote>
  */
 public class EscherGraphics extends Graphics {
-    private static final POILogger LOG = POILogFactory.getLogger(EscherGraphics.class);
+    private static final Logger LOG = LogManager.getLogger(EscherGraphics.class);
 
     private final HSSFShapeGroup escherGroup;
     private final HSSFWorkbook workbook;
@@ -135,14 +135,14 @@ public class EscherGraphics extends Grap
     @NotImplemented
     public void clipRect(int x, int y, int width, int height)
     {
-        LOG.log(POILogger.WARN,"clipRect not supported");
+        LOG.atWarn().log("clipRect not supported");
     }
 
     @Override
     @NotImplemented
     public void copyArea(int x, int y, int width, int height, int dx, int dy)
     {
-        LOG.log(POILogger.WARN,"copyArea not supported");
+        LOG.atWarn().log("copyArea not supported");
     }
 
     @Override
@@ -162,7 +162,7 @@ public class EscherGraphics extends Grap
     public void drawArc(int x, int y, int width, int height,
 				 int startAngle, int arcAngle)
     {
-        LOG.log(POILogger.WARN,"drawArc not supported");
+        LOG.atWarn().log("drawArc not supported");
     }
 
     @Override
@@ -173,7 +173,7 @@ public class EscherGraphics extends Grap
 				      Color bgcolor,
 				      ImageObserver observer)
     {
-        LOG.log(POILogger.WARN,"drawImage not supported");
+        LOG.atWarn().log("drawImage not supported");
 
         return true;
     }
@@ -185,7 +185,7 @@ public class EscherGraphics extends Grap
 				      int sx1, int sy1, int sx2, int sy2,
 				      ImageObserver observer)
     {
-        LOG.log(POILogger.WARN,"drawImage not supported");
+        LOG.atWarn().log("drawImage not supported");
         return true;
     }
 
@@ -266,14 +266,14 @@ public class EscherGraphics extends Grap
     public void drawPolyline(int[] xPoints, int[] yPoints,
                              int nPoints)
     {
-        LOG.log(POILogger.WARN,"drawPolyline not supported");
+        LOG.atWarn().log("drawPolyline not supported");
     }
 
     @Override
     @NotImplemented
     public void drawRect(int x, int y, int width, int height)
     {
-        LOG.log(POILogger.WARN,"drawRect not supported");
+        LOG.atWarn().log("drawRect not supported");
     }
 
     @Override
@@ -281,7 +281,7 @@ public class EscherGraphics extends Grap
     public void drawRoundRect(int x, int y, int width, int height,
 				       int arcWidth, int arcHeight)
     {
-        LOG.log(POILogger.WARN,"drawRoundRect not supported");
+        LOG.atWarn().log("drawRoundRect not supported");
     }
 
     @Override
@@ -349,16 +349,14 @@ public class EscherGraphics extends Grap
     public void drawString(AttributedCharacterIterator iterator,
                                     int x, int y)
     {
-        if (LOG.check( POILogger.WARN ))
-            LOG.log(POILogger.WARN,"drawString not supported");
+        LOG.atWarn().log("drawString not supported");
     }
 
     @Override
     public void fillArc(int x, int y, int width, int height,
 				 int startAngle, int arcAngle)
     {
-        if (LOG.check( POILogger.WARN ))
-            LOG.log(POILogger.WARN,"fillArc not supported");
+        LOG.atWarn().log("fillArc not supported");
     }
 
     @Override
@@ -389,7 +387,7 @@ public class EscherGraphics extends Grap
      * @param xPoints array of the <code>x</code> coordinates.
      * @param yPoints array of the <code>y</code> coordinates.
      * @param nPoints the total number of points in the polygon.
-     * @see   java.awt.Graphics#drawPolygon(int[], int[], int)
+     * @see   Graphics#drawPolygon(int[], int[], int)
      */
     @Override
     public void fillPolygon(int[] xPoints, int[] yPoints,
@@ -442,8 +440,7 @@ public class EscherGraphics extends Grap
     public void fillRoundRect(int x, int y, int width, int height,
 				       int arcWidth, int arcHeight)
     {
-        if (LOG.check( POILogger.WARN ))
-            LOG.log(POILogger.WARN,"fillRoundRect not supported");
+        LOG.atWarn().log("fillRoundRect not supported");
     }
 
     @Override
@@ -488,7 +485,7 @@ public class EscherGraphics extends Grap
     @NotImplemented
     public void setClip(Shape shape)
     {
-        LOG.log(POILogger.WARN,"setClip not supported");
+        LOG.atWarn().log("setClip not supported");
     }
 
     @Override
@@ -507,21 +504,21 @@ public class EscherGraphics extends Grap
     @NotImplemented
     public void setPaintMode()
     {
-        LOG.log(POILogger.WARN,"setPaintMode not supported");
+        LOG.atWarn().log("setPaintMode not supported");
     }
 
     @Override
     @NotImplemented
     public void setXORMode(Color color)
     {
-        LOG.log(POILogger.WARN,"setXORMode not supported");
+        LOG.atWarn().log("setXORMode not supported");
     }
 
     @Override
     @NotImplemented
     public void translate(int x, int y)
     {
-        LOG.log(POILogger.WARN,"translate not supported");
+        LOG.atWarn().log("translate not supported");
     }
 
     public Color getBackground()



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org