Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/EscherGraphics2d.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/EscherGraphics2d.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/usermodel/EscherGraphics2d.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/EscherGraphics2d.java Sun Feb 21 20:57:25 2021 @@ -17,17 +17,19 @@ package org.apache.poi.hssf.usermodel; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import java.awt.*; import java.awt.font.FontRenderContext; import java.awt.font.GlyphVector; import java.awt.font.TextLayout; import java.awt.geom.AffineTransform; +import java.awt.geom.Arc2D; import java.awt.geom.Area; import java.awt.geom.GeneralPath; import java.awt.geom.Line2D; +import java.awt.geom.RoundRectangle2D; import java.awt.image.BufferedImage; import java.awt.image.BufferedImageOp; import java.awt.image.ImageObserver; @@ -69,7 +71,7 @@ import java.util.Map; * </blockquote> */ public final class EscherGraphics2d extends Graphics2D { - private static final POILogger LOG = POILogFactory.getLogger(EscherGraphics2d.class); + private static final Logger LOG = LogManager.getLogger(EscherGraphics2d.class); private EscherGraphics _escherGraphics; private BufferedImage _img; @@ -153,15 +155,14 @@ public final class EscherGraphics2d exte } else { - if (LOG.check(POILogger.WARN)) - LOG.log(POILogger.WARN, "draw not fully supported"); + LOG.atWarn().log("draw not fully supported"); } } public void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle) { - draw(new java.awt.geom.Arc2D.Float(x, y, width, height, startAngle, arcAngle, 0)); + draw(new Arc2D.Float(x, y, width, height, startAngle, arcAngle, 0)); } public void drawGlyphVector(GlyphVector g, float x, float y) @@ -172,22 +173,19 @@ public final class EscherGraphics2d exte public boolean drawImage(Image image, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgColor, ImageObserver imageobserver) { - if (LOG.check( POILogger.WARN )) - LOG.log(POILogger.WARN,"drawImage() not supported"); + LOG.atWarn().log("drawImage() not supported"); return true; } public boolean drawImage(Image image, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver imageobserver) { - if (LOG.check( POILogger.WARN )) - LOG.log(POILogger.WARN,"drawImage() not supported"); + LOG.atWarn().log("drawImage() not supported"); return drawImage(image, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, null, imageobserver); } public boolean drawImage(Image image, int dx1, int dy1, int dx2, int dy2, Color bgColor, ImageObserver imageobserver) { - if (LOG.check( POILogger.WARN )) - LOG.log(POILogger.WARN,"drawImage() not supported"); + LOG.atWarn().log("drawImage() not supported"); return true; } @@ -282,7 +280,7 @@ public final class EscherGraphics2d exte public void drawRoundRect(int i, int j, int k, int l, int i1, int j1) { - draw(new java.awt.geom.RoundRectangle2D.Float(i, j, k, l, i1, j1)); + draw(new RoundRectangle2D.Float(i, j, k, l, i1, j1)); } public void drawString(String string, float x, float y) @@ -311,13 +309,12 @@ public final class EscherGraphics2d exte public void fill(Shape shape) { - if (LOG.check( POILogger.WARN )) - LOG.log(POILogger.WARN,"fill(Shape) not supported"); + LOG.atWarn().log("fill(Shape) not supported"); } public void fillArc(int i, int j, int k, int l, int i1, int j1) { - fill(new java.awt.geom.Arc2D.Float(i, j, k, l, i1, j1, 2)); + fill(new Arc2D.Float(i, j, k, l, i1, j1, 2)); } public void fillOval(int x, int y, int width, int height) @@ -342,7 +339,7 @@ public final class EscherGraphics2d exte * @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) */ public void fillPolygon(int[] xPoints, int[] yPoints, int nPoints) { @@ -357,7 +354,7 @@ public final class EscherGraphics2d exte public void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) { - fill(new java.awt.geom.RoundRectangle2D.Float(x, y, width, height, arcWidth, arcHeight)); + fill(new RoundRectangle2D.Float(x, y, width, height, arcWidth, arcHeight)); } public Color getBackground() @@ -422,7 +419,7 @@ public final class EscherGraphics2d exte return _paint; } - public Object getRenderingHint(java.awt.RenderingHints.Key key) + public Object getRenderingHint(RenderingHints.Key key) { return getG2D().getRenderingHint(key); } @@ -510,7 +507,7 @@ public final class EscherGraphics2d exte getEscherGraphics().setPaintMode(); } - public void setRenderingHint(java.awt.RenderingHints.Key key, Object obj) + public void setRenderingHint(RenderingHints.Key key, Object obj) { getG2D().setRenderingHint(key, obj); } @@ -545,18 +542,6 @@ public final class EscherGraphics2d exte getTrans().concatenate(affinetransform); } -// Image transformImage(Image image, Rectangle rectangle, Rectangle rectangle1, ImageObserver imageobserver, Color color1) -// { -// logger.log(POILogger.WARN,"transformImage() not supported"); -// return null; -// } -// -// Image transformImage(Image image, int ai[], Rectangle rectangle, ImageObserver imageobserver, Color color1) -// { -// logger.log(POILogger.WARN,"transformImage() not supported"); -// return null; -// } - public void translate(double d, double d1) { getTrans().translate(d, d1);
Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPatriarch.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPatriarch.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPatriarch.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPatriarch.java Sun Feb 21 20:57:25 2021 @@ -57,7 +57,6 @@ import org.apache.poi.util.StringUtil; * little other than act as a container for other shapes and groups. */ public final class HSSFPatriarch implements HSSFShapeContainer, Drawing<HSSFShape> { - // private static POILogger log = POILogFactory.getLogger(HSSFPatriarch.class); private final List<HSSFShape> _shapes = new ArrayList<>(); private final EscherSpgrRecord _spgrRecord; Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java Sun Feb 21 20:57:25 2021 @@ -17,6 +17,8 @@ package org.apache.poi.hssf.usermodel; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.ddf.EscherArrayProperty; import org.apache.poi.ddf.EscherBoolProperty; import org.apache.poi.ddf.EscherClientDataRecord; @@ -34,8 +36,6 @@ import org.apache.poi.hssf.record.Escher import org.apache.poi.hssf.record.ObjRecord; import org.apache.poi.hssf.record.TextObjectRecord; import org.apache.poi.util.LittleEndian; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; /** * @@ -43,7 +43,7 @@ import org.apache.poi.util.POILogger; public class HSSFPolygon extends HSSFSimpleShape { public static final short OBJECT_TYPE_MICROSOFT_OFFICE_DRAWING = 0x1E; - private static final POILogger LOG = POILogFactory.getLogger(HSSFPolygon.class); + private static final Logger LOG = LogManager.getLogger(HSSFPolygon.class); public HSSFPolygon(EscherContainerRecord spContainer, ObjRecord objRecord, TextObjectRecord _textObjectRecord) { super(spContainer, objRecord, _textObjectRecord); @@ -174,11 +174,11 @@ public class HSSFPolygon extends HSSFSi */ public void setPoints(int[] xPoints, int[] yPoints) { if (xPoints.length != yPoints.length){ - LOG.log( POILogger.ERROR, "xPoint.length must be equal to yPoints.length"); + LOG.atError().log("xPoint.length must be equal to yPoints.length"); return; } if (xPoints.length == 0){ - LOG.log( POILogger.ERROR, "HSSFPolygon must have at least one point"); + LOG.atError().log("HSSFPolygon must have at least one point"); } EscherArrayProperty verticesProp = new EscherArrayProperty(EscherPropertyTypes.GEOMETRY__VERTICES, false, 0); verticesProp.setNumberOfElementsInArray(xPoints.length+1); Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShape.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShape.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShape.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFShape.java Sun Feb 21 20:57:25 2021 @@ -20,6 +20,8 @@ package org.apache.poi.hssf.usermodel; import java.io.ByteArrayOutputStream; import java.io.IOException; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.ddf.EscherBoolProperty; import org.apache.poi.ddf.EscherChildAnchorRecord; import org.apache.poi.ddf.EscherClientAnchorRecord; @@ -35,8 +37,6 @@ import org.apache.poi.hssf.record.Common import org.apache.poi.hssf.record.ObjRecord; import org.apache.poi.ss.usermodel.Shape; import org.apache.poi.util.LittleEndian; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; import org.apache.poi.util.StringUtil; /** @@ -48,7 +48,7 @@ import org.apache.poi.util.StringUtil; * setFlipVertical() or setFlipHorizontally(). */ public abstract class HSSFShape implements Shape { - private static final POILogger LOG = POILogFactory.getLogger(HSSFShape.class); + private static final Logger LOG = LogManager.getLogger(HSSFShape.class); public static final int LINEWIDTH_ONE_PT = 12700; public static final int LINEWIDTH_DEFAULT = 9525; @@ -374,7 +374,7 @@ public abstract class HSSFShape implemen LittleEndian.putInt(property.getPropertyValue(), bos); return LittleEndian.getShort(bos.toByteArray(), 2); } catch (IOException e) { - LOG.log(POILogger.ERROR, "can't determine rotation degree", e); + LOG.atError().withThrowable(e).log("can't determine rotation degree"); return 0; } } Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java Sun Feb 21 20:57:25 2021 @@ -26,6 +26,9 @@ import java.util.Map; import java.util.TreeMap; import java.util.TreeSet; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.message.SimpleMessage; import org.apache.poi.ddf.EscherRecord; import org.apache.poi.hssf.model.DrawingManager2; import org.apache.poi.hssf.model.HSSFFormulaParser; @@ -64,7 +67,10 @@ import org.apache.poi.ss.usermodel.CellR import org.apache.poi.ss.usermodel.CellStyle; import org.apache.poi.ss.usermodel.DataValidation; import org.apache.poi.ss.usermodel.DataValidationHelper; +import org.apache.poi.ss.usermodel.FormulaEvaluator; import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.Sheet; +import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.helpers.RowShifter; import org.apache.poi.ss.util.CellAddress; import org.apache.poi.ss.util.CellRangeAddress; @@ -76,15 +82,15 @@ import org.apache.poi.ss.util.SheetUtil; import org.apache.poi.util.Beta; import org.apache.poi.util.Configurator; import org.apache.poi.util.Internal; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; + +import static java.lang.System.currentTimeMillis; +import static org.apache.logging.log4j.util.Unbox.box; /** * High level representation of a worksheet. */ -public final class HSSFSheet implements org.apache.poi.ss.usermodel.Sheet { - private static final POILogger log = POILogFactory.getLogger(HSSFSheet.class); - private static final int DEBUG = POILogger.DEBUG; +public final class HSSFSheet implements Sheet { + private static final Logger LOGGER = LogManager.getLogger(HSSFSheet.class); /** * width of 1px in columns with default width in units of 1/256 of a character width @@ -122,7 +128,7 @@ public final class HSSFSheet implements * scratch. You should not be calling this from application code (its protected anyhow). * * @param workbook - The HSSF Workbook object associated with the sheet. - * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#createSheet() + * @see HSSFWorkbook#createSheet() */ protected HSSFSheet(HSSFWorkbook workbook) { _sheet = InternalSheet.createSheet(); @@ -137,7 +143,7 @@ public final class HSSFSheet implements * * @param workbook - The HSSF Workbook object associated with the sheet. * @param sheet - lowlevel Sheet object this sheet will represent - * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#createSheet() + * @see HSSFWorkbook#createSheet() */ protected HSSFSheet(HSSFWorkbook workbook, InternalSheet sheet) { this._sheet = sheet; @@ -196,19 +202,16 @@ public final class HSSFSheet implements } Iterator<CellValueRecordInterface> iter = sheet.getCellValueIterator(); - long timestart = System.currentTimeMillis(); + long timestart = currentTimeMillis(); - if (log.check( POILogger.DEBUG )) { - log.log(DEBUG, "Time at start of cell creating in HSSF sheet = ", - Long.valueOf(timestart)); - } + LOGGER.atDebug().log("Time at start of cell creating in HSSF sheet = {}", box(timestart)); HSSFRow lastrow = null; // Add every cell to its row while (iter.hasNext()) { CellValueRecordInterface cval = iter.next(); - long cellstart = System.currentTimeMillis(); + long cellstart = currentTimeMillis(); HSSFRow hrow = lastrow; if (hrow == null || hrow.getRowNum() != cval.getRow()) { @@ -229,24 +232,18 @@ public final class HSSFSheet implements hrow = createRowFromRecord(rowRec); } } - if (log.check( POILogger.DEBUG )) { + LOGGER.atTrace().log(() -> { if (cval instanceof Record) { - log.log( DEBUG, "record id = ", Integer.toHexString( ( (org.apache.poi.hssf.record.Record) cval ).getSid() ) ); + return new SimpleMessage("record id = " + Integer.toHexString(((Record) cval).getSid())); } else { - log.log( DEBUG, "record = ", cval ); + return new SimpleMessage("record = " + cval); } - } + }); hrow.createCellFromRecord( cval ); - if (log.check( POILogger.DEBUG )) { - log.log( DEBUG, "record took ", - Long.valueOf( System.currentTimeMillis() - cellstart ) ); - } + LOGGER.atTrace().log("record took {}ms", box(currentTimeMillis() - cellstart)); } - if (log.check( POILogger.DEBUG )) { - log.log(DEBUG, "total sheet cell creation took ", - Long.valueOf(System.currentTimeMillis() - timestart)); - } + LOGGER.atDebug().log("total sheet cell creation took {}ms", box(currentTimeMillis() - timestart)); } /** @@ -254,8 +251,8 @@ public final class HSSFSheet implements * * @param rownum row number * @return High level HSSFRow object representing a row in the sheet - * @see org.apache.poi.hssf.usermodel.HSSFRow - * @see #removeRow(org.apache.poi.ss.usermodel.Row) + * @see HSSFRow + * @see #removeRow(Row) */ @Override public HSSFRow createRow(int rownum) { @@ -438,7 +435,7 @@ public final class HSSFSheet implements private HSSFEvaluationWorkbook book = HSSFEvaluationWorkbook.create(getWorkbook()); @Override - public void visitRecord(org.apache.poi.hssf.record.Record r) { + public void visitRecord(Record r) { if (!(r instanceof DVRecord)) { return; } @@ -815,17 +812,17 @@ public final class HSSFSheet implements * Control if Excel should be asked to recalculate all formulas on this sheet * when the workbook is opened.<p> * - * Calculating the formula values with {@link org.apache.poi.ss.usermodel.FormulaEvaluator} is the + * Calculating the formula values with {@link FormulaEvaluator} is the * recommended solution, but this may be used for certain cases where * evaluation in POI is not possible.<p> * * It is recommended to force recalcuation of formulas on workbook level using - * {@link org.apache.poi.ss.usermodel.Workbook#setForceFormulaRecalculation(boolean)} + * {@link Workbook#setForceFormulaRecalculation(boolean)} * to ensure that all cross-worksheet formuals and external dependencies are updated. * * @param value true if the application will perform a full recalculation of * this worksheet values when the workbook is opened - * @see org.apache.poi.ss.usermodel.Workbook#setForceFormulaRecalculation(boolean) + * @see Workbook#setForceFormulaRecalculation(boolean) */ @Override public void setForceFormulaRecalculation(boolean value) { @@ -1773,7 +1770,7 @@ public final class HSSFSheet implements // add logic for hyperlinks etc, like in shiftRows() } - protected void insertChartRecords(List<org.apache.poi.hssf.record.Record> records) { + protected void insertChartRecords(List<Record> records) { int window2Loc = _sheet.findFirstRecordLocBySid(WindowTwoRecord.sid); _sheet.getRecords().addAll(window2Loc, records); } Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java Sun Feb 21 20:57:25 2021 @@ -17,12 +17,15 @@ package org.apache.poi.hssf.usermodel; +import static org.apache.logging.log4j.util.Unbox.box; import static org.apache.poi.hssf.model.InternalWorkbook.OLD_WORKBOOK_DIR_ENTRY_NAME; import static org.apache.poi.hssf.model.InternalWorkbook.WORKBOOK_DIR_ENTRY_NAMES; +import java.io.BufferedOutputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; +import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; @@ -44,6 +47,8 @@ import java.util.Set; import java.util.regex.Pattern; import org.apache.commons.codec.digest.DigestUtils; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.EncryptedDocumentException; import org.apache.poi.POIDocument; import org.apache.poi.ddf.EscherBSERecord; @@ -70,6 +75,7 @@ import org.apache.poi.hssf.record.Drawin import org.apache.poi.hssf.record.ExtendedFormatRecord; import org.apache.poi.hssf.record.FilePassRecord; import org.apache.poi.hssf.record.FontRecord; +import org.apache.poi.hssf.record.FormatRecord; import org.apache.poi.hssf.record.LabelRecord; import org.apache.poi.hssf.record.LabelSSTRecord; import org.apache.poi.hssf.record.NameRecord; @@ -110,6 +116,7 @@ import org.apache.poi.ss.usermodel.Sheet import org.apache.poi.ss.usermodel.SheetVisibility; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.util.CellReference; +import org.apache.poi.ss.util.WorkbookUtil; import org.apache.poi.util.Configurator; import org.apache.poi.util.HexDump; import org.apache.poi.util.IOUtils; @@ -117,8 +124,6 @@ import org.apache.poi.util.Internal; import org.apache.poi.util.LittleEndian; import org.apache.poi.util.LittleEndianByteArrayInputStream; import org.apache.poi.util.LittleEndianByteArrayOutputStream; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; import org.apache.poi.util.Removal; /** @@ -126,11 +131,11 @@ import org.apache.poi.util.Removal; * will construct whether they are reading or writing a workbook. It is also the * top level object for creating new sheets/etc. * - * @see org.apache.poi.hssf.model.InternalWorkbook - * @see org.apache.poi.hssf.usermodel.HSSFSheet + * @see InternalWorkbook + * @see HSSFSheet */ @SuppressWarnings("WeakerAccess") -public final class HSSFWorkbook extends POIDocument implements org.apache.poi.ss.usermodel.Workbook { +public final class HSSFWorkbook extends POIDocument implements Workbook { //arbitrarily selected; may need to increase private static final int MAX_RECORD_LENGTH = 100_000; @@ -147,8 +152,6 @@ public final class HSSFWorkbook extends */ private static final int MAX_STYLES = 4030; - private static final int DEBUG = POILogger.DEBUG; - /** * used for compile-time performance/memory optimization. This determines the * initial capacity for the sheet collection. Its currently set to 3. @@ -203,7 +206,7 @@ public final class HSSFWorkbook extends */ private MissingCellPolicy missingCellPolicy = MissingCellPolicy.RETURN_NULL_AND_BLANK; - private static final POILogger log = POILogFactory.getLogger(HSSFWorkbook.class); + private static final Logger LOGGER = LogManager.getLogger(HSSFWorkbook.class); /** * The locator of user-defined functions. @@ -237,7 +240,7 @@ public final class HSSFWorkbook extends * * @throws IOException if the stream cannot be read * @see #HSSFWorkbook(POIFSFileSystem, boolean) - * @see org.apache.poi.poifs.filesystem.POIFSFileSystem + * @see POIFSFileSystem */ public HSSFWorkbook(POIFSFileSystem fs) throws IOException { this(fs, true); @@ -253,7 +256,7 @@ public final class HSSFWorkbook extends * need to. If set, will store all of the POIFSFileSystem * in memory * @throws IOException if the stream cannot be read - * @see org.apache.poi.poifs.filesystem.POIFSFileSystem + * @see POIFSFileSystem */ public HSSFWorkbook(POIFSFileSystem fs, boolean preserveNodes) throws IOException { @@ -300,7 +303,7 @@ public final class HSSFWorkbook extends * need to. If set, will store all of the POIFSFileSystem * in memory * @throws IOException if the stream cannot be read - * @see org.apache.poi.poifs.filesystem.POIFSFileSystem + * @see POIFSFileSystem */ public HSSFWorkbook(DirectoryNode directory, POIFSFileSystem fs, boolean preserveNodes) throws IOException { @@ -318,7 +321,7 @@ public final class HSSFWorkbook extends * need to. If set, will store all of the POIFSFileSystem * in memory * @throws IOException if the stream cannot be read - * @see org.apache.poi.poifs.filesystem.POIFSFileSystem + * @see POIFSFileSystem */ public HSSFWorkbook(DirectoryNode directory, boolean preserveNodes) throws IOException { @@ -340,7 +343,7 @@ public final class HSSFWorkbook extends // it happens to be spelled. InputStream stream = directory.createDocumentInputStream(workbookName); - List<org.apache.poi.hssf.record.Record> records = RecordFactory.createRecords(stream); + List<Record> records = RecordFactory.createRecords(stream); workbook = InternalWorkbook.createWorkbook(records); setPropertiesFromWorkbook(workbook); @@ -355,7 +358,7 @@ public final class HSSFWorkbook extends _sheets.add(new HSSFSheet(this, sheet)); } catch (UnsupportedBOFType eb) { // Hopefully there's a supported one after this! - log.log(POILogger.WARN, "Unsupported BOF found of type " + eb.getType()); + LOGGER.atWarn().log("Unsupported BOF found of type {}", box(eb.getType())); } } @@ -375,7 +378,7 @@ public final class HSSFWorkbook extends * @throws IOException if the stream cannot be read * @see #HSSFWorkbook(InputStream, boolean) * @see #HSSFWorkbook(POIFSFileSystem) - * @see org.apache.poi.poifs.filesystem.POIFSFileSystem + * @see POIFSFileSystem */ public HSSFWorkbook(InputStream s) throws IOException { this(s, true); @@ -390,7 +393,7 @@ public final class HSSFWorkbook extends * macros. This takes more memory, so only say yes if you * need to. * @throws IOException if the stream cannot be read - * @see org.apache.poi.poifs.filesystem.POIFSFileSystem + * @see POIFSFileSystem * @see #HSSFWorkbook(POIFSFileSystem) */ @SuppressWarnings("resource") // POIFSFileSystem always closes the stream @@ -421,13 +424,13 @@ public final class HSSFWorkbook extends * * @param records a collection of sheet's records. * @param offset the offset to search at - * @see org.apache.poi.hssf.record.LabelRecord - * @see org.apache.poi.hssf.record.LabelSSTRecord - * @see org.apache.poi.hssf.record.SSTRecord + * @see LabelRecord + * @see LabelSSTRecord + * @see SSTRecord */ - private void convertLabelRecords(List<org.apache.poi.hssf.record.Record> records, int offset) { - log.log(POILogger.DEBUG, "convertLabelRecords called"); + private void convertLabelRecords(List<Record> records, int offset) { + LOGGER.atDebug().log("convertLabelRecords called"); for (int k = offset; k < records.size(); k++) { Record rec = records.get(k); @@ -446,7 +449,7 @@ public final class HSSFWorkbook extends records.add(k, newrec); } } - log.log(POILogger.DEBUG, "convertLabelRecords exit"); + LOGGER.atDebug().log("convertLabelRecords exit"); } /** @@ -655,7 +658,7 @@ public final class HSSFWorkbook extends * allow you to show the data of one sheet when another is seen "selected" * in the tabs (at the bottom). * - * @see org.apache.poi.hssf.usermodel.HSSFSheet#setSelected(boolean) + * @see HSSFSheet#setSelected(boolean) */ @Override public int getActiveSheetIndex() { @@ -690,7 +693,7 @@ public final class HSSFWorkbook extends * @throws IllegalArgumentException if the name is null or invalid * or workbook already contains a sheet with this name * @see #createSheet(String) - * @see org.apache.poi.ss.util.WorkbookUtil#createSafeSheetName(String nameProposal) + * @see WorkbookUtil#createSafeSheetName(String nameProposal) */ @Override public void setSheetName(int sheetIx, String name) { @@ -770,7 +773,7 @@ public final class HSSFWorkbook extends * @return index of the sheet (0 based). <tt>-1</tt> if not found */ @Override - public int getSheetIndex(org.apache.poi.ss.usermodel.Sheet sheet) { + public int getSheetIndex(Sheet sheet) { return _sheets.indexOf(sheet); } @@ -898,7 +901,7 @@ public final class HSSFWorkbook extends * @return Sheet representing the new sheet. * @throws IllegalArgumentException if the name is null or invalid * or workbook already contains a sheet with this name - * @see org.apache.poi.ss.util.WorkbookUtil#createSafeSheetName(String nameProposal) + * @see WorkbookUtil#createSafeSheetName(String nameProposal) */ @Override public HSSFSheet createSheet(String sheetname) { @@ -1328,7 +1331,7 @@ public final class HSSFWorkbook extends * * @param newFile The new File you wish to write the XLS to * @throws IOException if anything can't be written. - * @see org.apache.poi.poifs.filesystem.POIFSFileSystem + * @see POIFSFileSystem */ @Override public void write(File newFile) throws IOException { @@ -1343,14 +1346,14 @@ public final class HSSFWorkbook extends * a new POI POIFSFileSystem, passes in the workbook binary representation and * writes it out. * <p> - * If {@code stream} is a {@link java.io.FileOutputStream} on a networked drive + * If {@code stream} is a {@link FileOutputStream} on a networked drive * or has a high cost/latency associated with each written byte, - * consider wrapping the OutputStream in a {@link java.io.BufferedOutputStream} + * consider wrapping the OutputStream in a {@link BufferedOutputStream} * to improve write performance. * * @param stream - the java OutputStream you wish to write the XLS to * @throws IOException if anything can't be written. - * @see org.apache.poi.poifs.filesystem.POIFSFileSystem + * @see POIFSFileSystem */ @Override public void write(OutputStream stream) throws IOException { @@ -1405,7 +1408,7 @@ public final class HSSFWorkbook extends */ private static final class SheetRecordCollector implements RecordVisitor { - private List<org.apache.poi.hssf.record.Record> _list; + private List<Record> _list; private int _totalSize; public SheetRecordCollector() { @@ -1418,7 +1421,7 @@ public final class HSSFWorkbook extends } @Override - public void visitRecord(org.apache.poi.hssf.record.Record r) { + public void visitRecord(Record r) { _list.add(r); _totalSize += r.getRecordSize(); @@ -1426,7 +1429,7 @@ public final class HSSFWorkbook extends public int serialize(int offset, byte[] data) { int result = 0; - for (org.apache.poi.hssf.record.Record rec : _list) { + for (Record rec : _list) { result += rec.serialize(offset + result, data); } return result; @@ -1442,9 +1445,7 @@ public final class HSSFWorkbook extends * sheets, rows, cells, etc. */ public byte[] getBytes() { - if (log.check(POILogger.DEBUG)) { - log.log(DEBUG, "HSSFWorkbook.getBytes()"); - } + LOGGER.atDebug().log("HSSFWorkbook.getBytes()"); HSSFSheet[] sheets = getSheets(); int nSheets = sheets.length; @@ -1744,8 +1745,8 @@ public final class HSSFWorkbook extends * Returns the instance of HSSFDataFormat for this workbook. * * @return the HSSFDataFormat object - * @see org.apache.poi.hssf.record.FormatRecord - * @see org.apache.poi.hssf.record.Record + * @see FormatRecord + * @see Record */ @Override public HSSFDataFormat createDataFormat() { @@ -1929,7 +1930,7 @@ public final class HSSFWorkbook extends public List<HSSFPictureData> getAllPictures() { // The drawing group record always exists at the top level, so we won't need to do this recursively. List<HSSFPictureData> pictures = new ArrayList<>(); - for (org.apache.poi.hssf.record.Record r : workbook.getRecords()) { + for (Record r : workbook.getRecords()) { if (r instanceof AbstractEscherHolderRecord) { ((AbstractEscherHolderRecord) r).decode(); List<EscherRecord> escherRecords = ((AbstractEscherHolderRecord) r).getEscherRecords(); Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/StaticFontMetrics.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/StaticFontMetrics.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/usermodel/StaticFontMetrics.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/StaticFontMetrics.java Sun Feb 21 20:57:25 2021 @@ -26,8 +26,8 @@ import java.util.HashMap; import java.util.Map; import java.util.Properties; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; /** * Allows the user to lookup the font metrics for a particular font without @@ -37,7 +37,7 @@ import org.apache.poi.util.POILogger; * font. Use a multiplier for other sizes. */ final class StaticFontMetrics { - private static final POILogger LOGGER = POILogFactory.getLogger(StaticFontMetrics.class); + private static final Logger LOGGER = LogManager.getLogger(StaticFontMetrics.class); /** The font metrics property file we're using */ private static Properties fontMetricsProps; /** Our cache of font details we've already looked up */ @@ -109,12 +109,12 @@ final class StaticFontMetrics { if (propFileName != null) { propFile = new File(propFileName); if (!propFile.exists()) { - LOGGER.log(POILogger.WARN, "font_metrics.properties not found at path "+propFile.getAbsolutePath()); + LOGGER.atWarn().log("font_metrics.properties not found at path {}", propFile.getAbsolutePath()); propFile = null; } } } catch (SecurityException e) { - LOGGER.log(POILogger.WARN, "Can't access font.metrics.filename system property", e); + LOGGER.atWarn().withThrowable(e).log("Can't access font.metrics.filename system property"); } try (InputStream metricsIn = (propFile != null) Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/helpers/HSSFColumnShifter.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/helpers/HSSFColumnShifter.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/usermodel/helpers/HSSFColumnShifter.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/helpers/HSSFColumnShifter.java Sun Feb 21 20:57:25 2021 @@ -17,14 +17,14 @@ package org.apache.poi.hssf.usermodel.helpers; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.ss.formula.FormulaShifter; import org.apache.poi.ss.formula.eval.NotImplementedException; import org.apache.poi.ss.usermodel.helpers.ColumnShifter; import org.apache.poi.util.Beta; import org.apache.poi.util.NotImplemented; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; /** * Helper for shifting columns up or down @@ -35,7 +35,7 @@ import org.apache.poi.util.POILogger; // {@link org.apache.poi.xssf.usermodel.helpers.XSSFColumnShifter} @Beta public final class HSSFColumnShifter extends ColumnShifter { - private static final POILogger LOG = POILogFactory.getLogger(HSSFColumnShifter.class); + private static final Logger LOG = LogManager.getLogger(HSSFColumnShifter.class); public HSSFColumnShifter(HSSFSheet sh) { super(sh); Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/helpers/HSSFRowShifter.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/helpers/HSSFRowShifter.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/usermodel/helpers/HSSFRowShifter.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/helpers/HSSFRowShifter.java Sun Feb 21 20:57:25 2021 @@ -17,15 +17,13 @@ package org.apache.poi.hssf.usermodel.helpers; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.ss.formula.FormulaShifter; import org.apache.poi.ss.formula.eval.NotImplementedException; -import org.apache.poi.ss.usermodel.Row; -import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.helpers.RowShifter; import org.apache.poi.util.NotImplemented; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; /** * Helper for shifting rows up or down @@ -33,7 +31,7 @@ import org.apache.poi.util.POILogger; // non-Javadoc: When possible, code should be implemented in the RowShifter abstract class to avoid duplication with // {@link org.apache.poi.xssf.usermodel.helpers.XSSFRowShifter} public final class HSSFRowShifter extends RowShifter { - private static final POILogger LOG = POILogFactory.getLogger(HSSFRowShifter.class); + private static final Logger LOG = LogManager.getLogger(HSSFRowShifter.class); public HSSFRowShifter(HSSFSheet sh) { super(sh); Modified: poi/trunk/src/java/org/apache/poi/poifs/crypt/ChunkedCipherOutputStream.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/crypt/ChunkedCipherOutputStream.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/poifs/crypt/ChunkedCipherOutputStream.java (original) +++ poi/trunk/src/java/org/apache/poi/poifs/crypt/ChunkedCipherOutputStream.java Sun Feb 21 20:57:25 2021 @@ -32,6 +32,8 @@ import javax.crypto.IllegalBlockSizeExce import javax.crypto.ShortBufferException; import com.zaxxer.sparsebits.SparseBitSet; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.EncryptedDocumentException; import org.apache.poi.poifs.filesystem.DirectoryNode; import org.apache.poi.poifs.filesystem.POIFSWriterEvent; @@ -40,13 +42,11 @@ import org.apache.poi.util.IOUtils; import org.apache.poi.util.Internal; import org.apache.poi.util.LittleEndian; import org.apache.poi.util.LittleEndianConsts; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; import org.apache.poi.util.TempFile; @Internal public abstract class ChunkedCipherOutputStream extends FilterOutputStream { - private static final POILogger LOG = POILogFactory.getLogger(ChunkedCipherOutputStream.class); + private static final Logger LOG = LogManager.getLogger(ChunkedCipherOutputStream.class); //arbitrarily selected; may need to increase private static final int MAX_RECORD_LENGTH = 100_000; @@ -257,7 +257,7 @@ public abstract class ChunkedCipherOutpu @Override public void close() throws IOException { if (isClosed) { - LOG.log(POILogger.DEBUG, "ChunkedCipherOutputStream was already closed - ignoring"); + LOG.atDebug().log("ChunkedCipherOutputStream was already closed - ignoring"); return; } @@ -324,7 +324,7 @@ public abstract class ChunkedCipherOutpu } if (!fileOut.delete()) { - LOG.log(POILogger.ERROR, "Can't delete temporary encryption file: ", fileOut); + LOG.atError().log("Can't delete temporary encryption file: {}", fileOut); } } catch (IOException e) { throw new EncryptedDocumentException(e); Modified: poi/trunk/src/java/org/apache/poi/poifs/crypt/standard/StandardEncryptor.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/crypt/standard/StandardEncryptor.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/poifs/crypt/standard/StandardEncryptor.java (original) +++ poi/trunk/src/java/org/apache/poi/poifs/crypt/standard/StandardEncryptor.java Sun Feb 21 20:57:25 2021 @@ -36,6 +36,8 @@ import javax.crypto.Cipher; import javax.crypto.CipherOutputStream; import javax.crypto.SecretKey; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.EncryptedDocumentException; import org.apache.poi.poifs.crypt.CryptoFunctions; import org.apache.poi.poifs.crypt.DataSpaceMapUtils; @@ -49,12 +51,10 @@ import org.apache.poi.util.IOUtils; import org.apache.poi.util.LittleEndianByteArrayOutputStream; import org.apache.poi.util.LittleEndianConsts; import org.apache.poi.util.LittleEndianOutputStream; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; import org.apache.poi.util.TempFile; public class StandardEncryptor extends Encryptor { - private static final POILogger LOG = POILogFactory.getLogger(StandardEncryptor.class); + private static final Logger LOG = LogManager.getLogger(StandardEncryptor.class); protected StandardEncryptor() {} @@ -193,7 +193,7 @@ public class StandardEncryptor extends E IOUtils.copy(fis, leos); } if (!fileOut.delete()) { - LOG.log(POILogger.ERROR, "Can't delete temporary encryption file: ", fileOut); + LOG.atError().log("Can't delete temporary encryption file: {}", fileOut); } leos.close(); Modified: poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSDocumentPath.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSDocumentPath.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSDocumentPath.java (original) +++ poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSDocumentPath.java Sun Feb 21 20:57:25 2021 @@ -25,8 +25,8 @@ import java.util.Objects; import java.util.function.Predicate; import java.util.stream.Stream; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; /** * Class POIFSDocumentPath @@ -34,7 +34,7 @@ import org.apache.poi.util.POILogger; public class POIFSDocumentPath { - private static final POILogger log = POILogFactory.getLogger(POIFSDocumentPath.class); + private static final Logger LOGGER = LogManager.getLogger(POIFSDocumentPath.class); private final String[] components; private int hashcode; //lazy-compute hashCode Modified: poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java (original) +++ poi/trunk/src/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java Sun Feb 21 20:57:25 2021 @@ -34,6 +34,8 @@ import java.util.Iterator; import java.util.List; import org.apache.commons.math3.util.ArithmeticUtils; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.EmptyFileException; import org.apache.poi.poifs.common.POIFSBigBlockSize; import org.apache.poi.poifs.common.POIFSConstants; @@ -49,8 +51,6 @@ import org.apache.poi.poifs.storage.BATB import org.apache.poi.poifs.storage.HeaderBlock; import org.apache.poi.util.IOUtils; import org.apache.poi.util.Internal; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; /** * <p>This is the main class of the POIFS system; it manages the entire @@ -63,7 +63,7 @@ public class POIFSFileSystem extends Blo //arbitrarily selected; may need to increase private static final int MAX_RECORD_LENGTH = 100_000; - private static final POILogger LOG = POILogFactory.getLogger(POIFSFileSystem.class); + private static final Logger LOG = LogManager.getLogger(POIFSFileSystem.class); /** * Maximum number size (in blocks) of the allocation table as supported by @@ -327,7 +327,7 @@ public class POIFSFileSystem extends Blo } // else not success? Try block did not complete normally // just print stack trace and leave original ex to be thrown - LOG.log(POILogger.ERROR, "can't close input stream", e); + LOG.atError().withThrowable(e).log("can't close input stream"); } } Modified: poi/trunk/src/java/org/apache/poi/poifs/macros/VBAMacroReader.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/macros/VBAMacroReader.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/poifs/macros/VBAMacroReader.java (original) +++ poi/trunk/src/java/org/apache/poi/poifs/macros/VBAMacroReader.java Sun Feb 21 20:57:25 2021 @@ -17,6 +17,7 @@ package org.apache.poi.poifs.macros; +import static org.apache.logging.log4j.util.Unbox.box; import static org.apache.poi.util.StringUtil.endsWithIgnoreCase; import static org.apache.poi.util.StringUtil.startsWithIgnoreCase; @@ -37,6 +38,8 @@ import java.util.Map; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.poifs.filesystem.DirectoryNode; import org.apache.poi.poifs.filesystem.DocumentInputStream; import org.apache.poi.poifs.filesystem.DocumentNode; @@ -49,8 +52,6 @@ import org.apache.poi.util.CodePageUtil; 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.RLEDecompressingInputStream; import org.apache.poi.util.StringUtil; @@ -68,7 +69,7 @@ import org.apache.poi.util.StringUtil; * @since 3.15-beta2 */ public class VBAMacroReader implements Closeable { - private static final POILogger LOGGER = POILogFactory.getLogger(VBAMacroReader.class); + private static final Logger LOGGER = LogManager.getLogger(VBAMacroReader.class); //arbitrary limit on size of strings to read, etc. private static final int MAX_STRING_LENGTH = 20000; @@ -663,9 +664,7 @@ public class VBAMacroReader implements C } } - if (records >= maxNameRecords) { - LOGGER.log(POILogger.WARN, "Hit max name records to read ("+maxNameRecords+"). Stopped early."); - } + LOGGER.atWarn().log("Hit max name records to read (" + maxNameRecords + "). Stopped early."); } private static String readUnicode(InputStream is, int maxLength) throws IOException { @@ -684,7 +683,7 @@ public class VBAMacroReader implements C read += 2; } if (read >= maxLength) { - LOGGER.log(POILogger.WARN, "stopped reading unicode name after "+read+" bytes"); + LOGGER.atWarn().log("stopped reading unicode name after {} bytes", box(read)); } return new String (bos.toByteArray(), StandardCharsets.UTF_16LE); } @@ -747,21 +746,21 @@ public class VBAMacroReader implements C if (module != null) { module.moduleType = ModuleType.Document; } else { - LOGGER.log(POILogger.WARN, "couldn't find module with name: "+mn); + LOGGER.atWarn().log("couldn't find module with name: {}", mn); } } else if ("Module".equals(tokens[0]) && tokens.length > 1) { ModuleImpl module = getModule(tokens[1], moduleNameMap, modules); if (module != null) { module.moduleType = ModuleType.Module; } else { - LOGGER.log(POILogger.WARN, "couldn't find module with name: "+tokens[1]); + LOGGER.atWarn().log("couldn't find module with name: {}", tokens[1]); } } else if ("Class".equals(tokens[0]) && tokens.length > 1) { ModuleImpl module = getModule(tokens[1], moduleNameMap, modules); if (module != null) { module.moduleType = ModuleType.Class; } else { - LOGGER.log(POILogger.WARN, "couldn't find module with name: "+tokens[1]); + LOGGER.atWarn().log("couldn't find module with name: {}", tokens[1]); } } } Modified: poi/trunk/src/java/org/apache/poi/poifs/nio/FileBackedDataSource.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/nio/FileBackedDataSource.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/poifs/nio/FileBackedDataSource.java (original) +++ poi/trunk/src/java/org/apache/poi/poifs/nio/FileBackedDataSource.java Sun Feb 21 20:57:25 2021 @@ -29,15 +29,15 @@ import java.nio.channels.FileChannel; import java.nio.channels.WritableByteChannel; import java.util.IdentityHashMap; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.util.IOUtils; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; /** * A POIFS {@link DataSource} backed by a File */ public class FileBackedDataSource extends DataSource implements Closeable { - private static final POILogger LOG = POILogFactory.getLogger(FileBackedDataSource.class); + private static final Logger LOG = LogManager.getLogger(FileBackedDataSource.class); private final FileChannel channel; private Long channelSize; @@ -195,10 +195,10 @@ public class FileBackedDataSource extend try { CleanerUtil.getCleaner().freeBuffer(buffer); } catch (IOException e) { - LOG.log(POILogger.WARN, "Failed to unmap the buffer", e); + LOG.atWarn().withThrowable(e).log("Failed to unmap the buffer"); } } else { - LOG.log(POILogger.DEBUG, CleanerUtil.UNMAP_NOT_SUPPORTED_REASON); + LOG.atDebug().log(CleanerUtil.UNMAP_NOT_SUPPORTED_REASON); } } } Modified: poi/trunk/src/java/org/apache/poi/poifs/property/PropertyTable.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/property/PropertyTable.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/poifs/property/PropertyTable.java (original) +++ poi/trunk/src/java/org/apache/poi/poifs/property/PropertyTable.java Sun Feb 21 20:57:25 2021 @@ -24,6 +24,8 @@ import java.util.ArrayList; import java.util.List; import java.util.Stack; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.poifs.common.POIFSBigBlockSize; import org.apache.poi.poifs.common.POIFSConstants; import org.apache.poi.poifs.filesystem.BATManaged; @@ -31,8 +33,8 @@ import org.apache.poi.poifs.filesystem.P import org.apache.poi.poifs.filesystem.POIFSStream; import org.apache.poi.poifs.storage.HeaderBlock; import org.apache.poi.util.IOUtils; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; + +import static org.apache.logging.log4j.util.Unbox.box; /** * This class embodies the Property Table for a {@link POIFSFileSystem}; @@ -41,7 +43,7 @@ import org.apache.poi.util.POILogger; * chain of blocks. */ public final class PropertyTable implements BATManaged { - private static final POILogger LOG = POILogFactory.getLogger(PropertyTable.class); + private static final Logger LOG = LogManager.getLogger(PropertyTable.class); //arbitrarily selected; may need to increase private static final int MAX_RECORD_LENGTH = 100_000; @@ -96,8 +98,7 @@ public final class PropertyTable impleme // Looks to be a truncated block // This isn't allowed, but some third party created files // sometimes do this, and we can normally read anyway - LOG.log(POILogger.WARN, "Short Property Block, ", bb.remaining(), - " bytes instead of the expected " + _bigBigBlockSize.getBigBlockSize()); + LOG.atWarn().log("Short Property Block, {} bytes instead of the expected {}", box(bb.remaining()),box(_bigBigBlockSize.getBigBlockSize())); toRead = bb.remaining(); } @@ -247,8 +248,7 @@ public final class PropertyTable impleme if (! Property.isValidIndex(index)) return false; if (index < 0 || index >= _properties.size()) { - LOG.log(POILogger.WARN, "Property index " + index + - "outside the valid range 0.."+_properties.size()); + LOG.atWarn().log("Property index {} outside the valid range 0..{}", box(index),box(_properties.size())); return false; } return true; Modified: poi/trunk/src/java/org/apache/poi/sl/draw/BitmapImageRenderer.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/sl/draw/BitmapImageRenderer.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/sl/draw/BitmapImageRenderer.java (original) +++ poi/trunk/src/java/org/apache/poi/sl/draw/BitmapImageRenderer.java Sun Feb 21 20:57:25 2021 @@ -40,16 +40,16 @@ import javax.imageio.ImageTypeSpecifier; import javax.imageio.stream.ImageInputStream; import javax.imageio.stream.MemoryCacheImageInputStream; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.sl.usermodel.PictureData.PictureType; import org.apache.poi.util.IOUtils; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; /** * For now this class renders only images supported by the javax.imageio.ImageIO framework. **/ public class BitmapImageRenderer implements ImageRenderer { - private static final POILogger LOG = POILogFactory.getLogger(BitmapImageRenderer.class); + private static final Logger LOG = LogManager.getLogger(BitmapImageRenderer.class); protected BufferedImage img; @@ -200,7 +200,7 @@ public class BitmapImageRenderer impleme // multiple locations above ... throw lastException; } - LOG.log(POILogger.WARN, "Content-type: "+contentType+" is not support. Image ignored."); + LOG.atWarn().log("Content-type: {} is not support. Image ignored.", contentType); return null; } Modified: poi/trunk/src/java/org/apache/poi/sl/draw/DrawPaint.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/sl/draw/DrawPaint.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/sl/draw/DrawPaint.java (original) +++ poi/trunk/src/java/org/apache/poi/sl/draw/DrawPaint.java Sun Feb 21 20:57:25 2021 @@ -46,6 +46,8 @@ import java.util.TreeMap; import java.util.function.BiFunction; import java.util.stream.Stream; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.sl.usermodel.AbstractColorStyle; import org.apache.poi.sl.usermodel.ColorStyle; import org.apache.poi.sl.usermodel.Insets2D; @@ -57,8 +59,6 @@ import org.apache.poi.sl.usermodel.Paint import org.apache.poi.sl.usermodel.PaintStyle.TexturePaint; import org.apache.poi.sl.usermodel.PlaceableShape; import org.apache.poi.util.Dimension2DDouble; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; /** @@ -69,7 +69,9 @@ import org.apache.poi.util.POILogger; public class DrawPaint { // HSL code is public domain - see https://tips4java.wordpress.com/contact-us/ - private static final POILogger LOG = POILogFactory.getLogger(DrawPaint.class); + // HSL code is public domain - see https://tips4java.wordpress.com/contact-us/ + + private static final Logger LOG = LogManager.getLogger(DrawPaint.class); private static final Color TRANSPARENT = new Color(1f,1f,1f,0f); @@ -286,7 +288,7 @@ public class DrawPaint { BufferedImage image = renderer.getImage(imgDim); if(image == null) { - LOG.log(POILogger.ERROR, "Can't load image data"); + LOG.atError().log("Can't load image data"); return TRANSPARENT; } @@ -336,7 +338,7 @@ public class DrawPaint { // TODO: check why original bitmaps scale/behave differently to vector based images return new DrawTexturePaint(image, s, fill, flipX, flipY, renderer instanceof BitmapImageRenderer); } catch (IOException e) { - LOG.log(POILogger.ERROR, "Can't load image data - using transparent color", e); + LOG.atError().withThrowable(e).log("Can't load image data - using transparent color"); return TRANSPARENT; } } @@ -796,10 +798,10 @@ public class DrawPaint { try { graphics.fill(shape); } catch (ArrayIndexOutOfBoundsException e) { - LOG.log(POILogger.WARN, "IBM JDK failed with TexturePaintContext AIOOBE - try adding the following to the VM parameter:\n" + + LOG.atWarn().withThrowable(e).log("IBM JDK failed with TexturePaintContext AIOOBE - try adding the following to the VM parameter:\n" + "-Xjit:exclude={sun/java2d/pipe/AlphaPaintPipe.renderPathTile(Ljava/lang/Object;[BIIIIII)V} and " + "search for 'JIT Problem Determination for IBM SDK using -Xjit' (http://www-01.ibm.com/support/docview.wss?uid=swg21294023) " + - "for how to add/determine further excludes", e); + "for how to add/determine further excludes"); } } } Modified: poi/trunk/src/java/org/apache/poi/sl/draw/DrawPictureShape.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/sl/draw/DrawPictureShape.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/sl/draw/DrawPictureShape.java (original) +++ poi/trunk/src/java/org/apache/poi/sl/draw/DrawPictureShape.java Sun Feb 21 20:57:25 2021 @@ -27,17 +27,17 @@ import java.util.ServiceLoader; import java.util.function.Supplier; import java.util.stream.StreamSupport; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.poi.common.usermodel.PictureType; import org.apache.poi.poifs.filesystem.FileMagic; import org.apache.poi.sl.usermodel.PictureData; import org.apache.poi.sl.usermodel.PictureShape; import org.apache.poi.sl.usermodel.RectAlign; -import org.apache.poi.util.POILogFactory; -import org.apache.poi.util.POILogger; public class DrawPictureShape extends DrawSimpleShape { - private static final POILogger LOG = POILogFactory.getLogger(DrawPictureShape.class); + private static final Logger LOG = LogManager.getLogger(DrawPictureShape.class); public DrawPictureShape(PictureShape<?,?> shape) { super(shape); @@ -69,7 +69,7 @@ public class DrawPictureShape extends Dr return; } } catch (IOException e) { - LOG.log(POILogger.ERROR, "image can't be loaded/rendered.", e); + LOG.atError().withThrowable(e).log("image can't be loaded/rendered."); } } } @@ -93,8 +93,8 @@ public class DrawPictureShape extends Dr // the fallback is the BitmapImageRenderer, at least it gracefully handles invalid images final Supplier<ImageRenderer> getFallback = () -> { - LOG.log(POILogger.WARN, "No suitable image renderer found for content-type '", - contentType, "' - include poi-scratchpad (for wmf/emf) or poi-ooxml (for svg) jars!"); + LOG.atWarn().log("No suitable image renderer found for content-type '{}' - include " + + "poi-scratchpad (for wmf/emf) or poi-ooxml (for svg) jars!", contentType); return fallback; }; Modified: poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextParagraph.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextParagraph.java?rev=1886770&r1=1886769&r2=1886770&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextParagraph.java (original) +++ poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextParagraph.java Sun Feb 21 20:57:25 2021 @@ -37,6 +37,8 @@ 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.common.usermodel.fonts.FontGroup; import org.apache.poi.common.usermodel.fonts.FontGroup.FontGroupRange; import org.apache.poi.common.usermodel.fonts.FontInfo; @@ -57,12 +59,12 @@ import org.apache.poi.sl.usermodel.TextS import org.apache.poi.sl.usermodel.TextShape.TextDirection; 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.Units; +import static org.apache.logging.log4j.util.Unbox.box; + public class DrawTextParagraph implements Drawable { - private static final POILogger LOG = POILogFactory.getLogger(DrawTextParagraph.class); + private static final Logger LOG = LogManager.getLogger(DrawTextParagraph.class); /** Keys for passing hyperlinks to the graphics context */ public static final XlinkAttribute HYPERLINK_HREF = new XlinkAttribute("href"); @@ -713,10 +715,12 @@ public class DrawTextParagraph implement if (partBegin < partEnd) { // handle (b) and (c) - attList.add(new AttributedStringData(TextAttribute.FAMILY, fontMapped.getFontName(Locale.ROOT), beginIndex+partBegin, beginIndex+partEnd)); - if (LOG.check(POILogger.DEBUG)) { - LOG.log(POILogger.DEBUG, "mapped: ",fontMapped.getFontName(Locale.ROOT)," ",(beginIndex+partBegin)," ",(beginIndex+partEnd)," - ",runText.substring(partBegin, partEnd)); - } + + final String fontName = fontMapped.getFontName(Locale.ROOT); + final int startIndex = beginIndex + partBegin; + final int endIndex = beginIndex + partEnd; + attList.add(new AttributedStringData(TextAttribute.FAMILY, fontName, startIndex, endIndex)); + LOG.atDebug().log("mapped: {} {} {} - {}", fontName, box(startIndex),box(endIndex),runText.substring(partBegin, partEnd)); } // fallback for unsupported glyphs @@ -725,10 +729,11 @@ public class DrawTextParagraph implement if (partBegin < partEnd) { // handle (a) and (b) - attList.add(new AttributedStringData(TextAttribute.FAMILY, fontFallback.getFontName(Locale.ROOT), beginIndex+partBegin, beginIndex+partEnd)); - if (LOG.check(POILogger.DEBUG)) { - LOG.log(POILogger.DEBUG, "fallback: ",fontFallback.getFontName(Locale.ROOT)," ",(beginIndex+partBegin)," ",(beginIndex+partEnd)," - ",runText.substring(partBegin, partEnd)); - } + final String fontName = fontFallback.getFontName(Locale.ROOT); + final int startIndex = beginIndex + partBegin; + final int endIndex = beginIndex + partEnd; + attList.add(new AttributedStringData(TextAttribute.FAMILY, fontName, startIndex, endIndex)); + LOG.atDebug().log("fallback: {} {} {} - {}", fontName, box(startIndex),box(endIndex),runText.substring(partBegin, partEnd)); } } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org For additional commands, e-mail: commits-h...@poi.apache.org