You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by fa...@apache.org on 2021/08/28 09:13:21 UTC
svn commit: r1892669 - in /poi/trunk/poi/src/main/java/org/apache/poi: hpsf/
hssf/record/ hssf/usermodel/ poifs/filesystem/ poifs/macros/ ss/util/ util/
Author: fanningpj
Date: Sat Aug 28 09:13:21 2021
New Revision: 1892669
URL: http://svn.apache.org/viewvc?rev=1892669&view=rev
Log:
more use of commons-io
Modified:
poi/trunk/poi/src/main/java/org/apache/poi/hpsf/PropertySet.java
poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DConRefRecord.java
poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DrawingRecordForBiffViewer.java
poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java
poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/Record.java
poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFPicture.java
poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java
poi/trunk/poi/src/main/java/org/apache/poi/poifs/filesystem/DocumentOutputStream.java
poi/trunk/poi/src/main/java/org/apache/poi/poifs/macros/VBAMacroReader.java
poi/trunk/poi/src/main/java/org/apache/poi/ss/util/ImageUtils.java
poi/trunk/poi/src/main/java/org/apache/poi/util/RLEDecompressingInputStream.java
Modified: poi/trunk/poi/src/main/java/org/apache/poi/hpsf/PropertySet.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/hpsf/PropertySet.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/hpsf/PropertySet.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/hpsf/PropertySet.java Sat Aug 28 09:13:21 2021
@@ -17,7 +17,6 @@
package org.apache.poi.hpsf;
-import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
@@ -26,6 +25,7 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.EmptyFileException;
import org.apache.poi.hpsf.wellknown.PropertyIDMap;
@@ -598,7 +598,7 @@ public class PropertySet {
* @throws IOException if an I/O exception occurs.
*/
public InputStream toInputStream() throws WritingNotSupportedException, IOException {
- return new ByteArrayInputStream(toBytes());
+ return new UnsynchronizedByteArrayInputStream(toBytes());
}
/**
Modified: poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DConRefRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DConRefRecord.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DConRefRecord.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DConRefRecord.java Sat Aug 28 09:13:21 2021
@@ -18,11 +18,11 @@
*/
package org.apache.poi.hssf.record;
-import java.io.ByteArrayInputStream;
import java.util.Arrays;
import java.util.Map;
import java.util.function.Supplier;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.poi.util.GenericRecordUtil;
import org.apache.poi.util.IOUtils;
import org.apache.poi.util.LittleEndianOutput;
@@ -278,7 +278,7 @@ public class DConRefRecord extends Stand
}
private static RecordInputStream bytesToRIStream(byte[] data) {
- RecordInputStream ric = new RecordInputStream(new ByteArrayInputStream(data));
+ RecordInputStream ric = new RecordInputStream(new UnsynchronizedByteArrayInputStream(data));
ric.nextRecord();
return ric;
}
Modified: poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DrawingRecordForBiffViewer.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DrawingRecordForBiffViewer.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DrawingRecordForBiffViewer.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/DrawingRecordForBiffViewer.java Sat Aug 28 09:13:21 2021
@@ -17,7 +17,8 @@
package org.apache.poi.hssf.record;
-import java.io.ByteArrayInputStream;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
+
import java.util.Map;
import java.util.function.Supplier;
@@ -48,7 +49,7 @@ public final class DrawingRecordForBiffV
{
byte[] data = r.serialize();
RecordInputStream rinp = new RecordInputStream(
- new ByteArrayInputStream(data)
+ new UnsynchronizedByteArrayInputStream(data)
);
rinp.nextRecord();
return rinp;
Modified: poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java Sat Aug 28 09:13:21 2021
@@ -17,10 +17,10 @@
package org.apache.poi.hssf.record;
-import java.io.ByteArrayInputStream;
import java.util.Map;
import java.util.function.Supplier;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.poi.ss.formula.ptg.Area3DPtg;
@@ -179,7 +179,7 @@ public final class EmbeddedObjectRefSubR
}
private static Ptg readRefPtg(byte[] formulaRawBytes) {
- LittleEndianInput in = new LittleEndianInputStream(new ByteArrayInputStream(formulaRawBytes));
+ LittleEndianInput in = new LittleEndianInputStream(new UnsynchronizedByteArrayInputStream(formulaRawBytes));
byte ptgSid = in.readByte();
switch(ptgSid) {
case AreaPtg.sid: return new AreaPtg(in);
Modified: poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/Record.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/Record.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/Record.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/Record.java Sat Aug 28 09:13:21 2021
@@ -17,8 +17,7 @@
package org.apache.poi.hssf.record;
-import java.io.ByteArrayInputStream;
-
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.poi.common.Duplicatable;
import org.apache.poi.common.usermodel.GenericRecord;
import org.apache.poi.util.GenericRecordJsonWriter;
@@ -76,7 +75,7 @@ public abstract class Record extends Rec
// Do it via a re-serialization
// It's a cheat, but it works...
byte[] b = serialize();
- RecordInputStream rinp = new RecordInputStream(new ByteArrayInputStream(b));
+ RecordInputStream rinp = new RecordInputStream(new UnsynchronizedByteArrayInputStream(b));
rinp.nextRecord();
Record[] r = RecordFactory.createRecord(rinp);
Modified: poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFPicture.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFPicture.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFPicture.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFPicture.java Sat Aug 28 09:13:21 2021
@@ -18,8 +18,8 @@
package org.apache.poi.hssf.usermodel;
import java.awt.Dimension;
-import java.io.ByteArrayInputStream;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.poi.ddf.DefaultEscherRecordFactory;
import org.apache.poi.ddf.EscherBSERecord;
import org.apache.poi.ddf.EscherBlipRecord;
@@ -191,7 +191,7 @@ public class HSSFPicture extends HSSFSim
EscherBSERecord bse = iwb.getBSERecord(getPictureIndex());
byte[] data = bse.getBlipRecord().getPicturedata();
int type = bse.getBlipTypeWin32();
- return ImageUtils.getImageDimension(new ByteArrayInputStream(data), type);
+ return ImageUtils.getImageDimension(new UnsynchronizedByteArrayInputStream(data), type);
}
/**
Modified: poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java Sat Aug 28 09:13:21 2021
@@ -22,7 +22,6 @@ import static org.apache.poi.hssf.model.
import static org.apache.poi.hssf.model.InternalWorkbook.WORKBOOK_DIR_ENTRY_NAMES;
import java.io.BufferedOutputStream;
-import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
@@ -46,6 +45,7 @@ import java.util.Set;
import java.util.regex.Pattern;
import org.apache.commons.codec.digest.DigestUtils;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -1305,7 +1305,7 @@ public final class HSSFWorkbook extends
DocumentNode workbookNode = (DocumentNode) dir.getEntry(
getWorkbookDirEntryName(dir));
POIFSDocument workbookDoc = new POIFSDocument(workbookNode);
- workbookDoc.replaceContents(new ByteArrayInputStream(getBytes()));
+ workbookDoc.replaceContents(new UnsynchronizedByteArrayInputStream(getBytes()));
// Update the properties streams in the file
writeProperties();
@@ -1367,7 +1367,7 @@ public final class HSSFWorkbook extends
List<String> excepts = new ArrayList<>(1);
// Write out the Workbook stream
- fs.createDocument(new ByteArrayInputStream(getBytes()), "Workbook");
+ fs.createDocument(new UnsynchronizedByteArrayInputStream(getBytes()), "Workbook");
// Write out our HPFS properties, if we have them
writeProperties(fs, excepts);
Modified: poi/trunk/poi/src/main/java/org/apache/poi/poifs/filesystem/DocumentOutputStream.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/poifs/filesystem/DocumentOutputStream.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/poifs/filesystem/DocumentOutputStream.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/poifs/filesystem/DocumentOutputStream.java Sat Aug 28 09:13:21 2021
@@ -17,10 +17,10 @@
package org.apache.poi.poifs.filesystem;
-import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.OutputStream;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.poi.poifs.common.POIFSConstants;
import org.apache.poi.poifs.property.DocumentProperty;
@@ -105,7 +105,7 @@ public final class DocumentOutputStream
}
// Have an empty one created for now
- return parent.createDocument(name, new ByteArrayInputStream(new byte[0]));
+ return parent.createDocument(name, new UnsynchronizedByteArrayInputStream(new byte[0]));
}
private void checkBufferSize() throws IOException {
Modified: poi/trunk/poi/src/main/java/org/apache/poi/poifs/macros/VBAMacroReader.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/poifs/macros/VBAMacroReader.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/poifs/macros/VBAMacroReader.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/poifs/macros/VBAMacroReader.java Sat Aug 28 09:13:21 2021
@@ -21,7 +21,6 @@ import static org.apache.logging.log4j.u
import static org.apache.poi.util.StringUtil.endsWithIgnoreCase;
import static org.apache.poi.util.StringUtil.startsWithIgnoreCase;
-import java.io.ByteArrayInputStream;
import java.io.Closeable;
import java.io.EOFException;
import java.io.File;
@@ -37,6 +36,7 @@ import java.util.Map;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -232,7 +232,7 @@ public class VBAMacroReader implements C
} else {
// Decompress a previously found module and store the decompressed result into module.buf
InputStream stream = new RLEDecompressingInputStream(
- new ByteArrayInputStream(module.buf, moduleOffset, module.buf.length - moduleOffset)
+ new UnsynchronizedByteArrayInputStream(module.buf, moduleOffset, module.buf.length - moduleOffset)
);
module.read(stream);
stream.close();
@@ -274,7 +274,7 @@ public class VBAMacroReader implements C
}
if (decompressedBytes != null) {
- module.read(new ByteArrayInputStream(decompressedBytes));
+ module.read(new UnsynchronizedByteArrayInputStream(decompressedBytes));
}
}
@@ -802,7 +802,7 @@ public class VBAMacroReader implements C
if (w <= 0 || (w & 0x7000) != 0x3000) {
continue;
}
- decompressed = tryToDecompress(new ByteArrayInputStream(compressed, i, compressed.length - i));
+ decompressed = tryToDecompress(new UnsynchronizedByteArrayInputStream(compressed, i, compressed.length - i));
if (decompressed != null) {
if (decompressed.length > 9) {
//this is a complete hack. The challenge is that there
Modified: poi/trunk/poi/src/main/java/org/apache/poi/ss/util/ImageUtils.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/ss/util/ImageUtils.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/ss/util/ImageUtils.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/ss/util/ImageUtils.java Sat Aug 28 09:13:21 2021
@@ -20,7 +20,6 @@ import static org.apache.poi.util.Units.
import java.awt.Dimension;
import java.awt.image.BufferedImage;
-import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Iterator;
@@ -31,6 +30,7 @@ import javax.imageio.ImageIO;
import javax.imageio.ImageReader;
import javax.imageio.stream.ImageInputStream;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
@@ -151,7 +151,7 @@ public final class ImageUtils {
// in pixel
final Dimension imgSize = (scaleX == Double.MAX_VALUE || scaleY == Double.MAX_VALUE)
- ? getImageDimension(new ByteArrayInputStream(data.getData()), data.getPictureType())
+ ? getImageDimension(new UnsynchronizedByteArrayInputStream(data.getData()), data.getPictureType())
: new Dimension();
// in emus
@@ -191,7 +191,7 @@ public final class ImageUtils {
Dimension imgSize = null;
if (anchor.getCol2() < anchor.getCol1() || anchor.getRow2() < anchor.getRow1()) {
PictureData data = picture.getPictureData();
- imgSize = getImageDimension(new ByteArrayInputStream(data.getData()), data.getPictureType());
+ imgSize = getImageDimension(new UnsynchronizedByteArrayInputStream(data.getData()), data.getPictureType());
}
int w = getDimFromCell(imgSize == null ? 0 : imgSize.getWidth(), anchor.getCol1(), anchor.getDx1(), anchor.getCol2(), anchor.getDx2(),
Modified: poi/trunk/poi/src/main/java/org/apache/poi/util/RLEDecompressingInputStream.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/util/RLEDecompressingInputStream.java?rev=1892669&r1=1892668&r2=1892669&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/util/RLEDecompressingInputStream.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/util/RLEDecompressingInputStream.java Sat Aug 28 09:13:21 2021
@@ -17,11 +17,11 @@
package org.apache.poi.util;
-import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Locale;
+import org.apache.commons.io.input.UnsynchronizedByteArrayInputStream;
import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
/**
@@ -278,8 +278,8 @@ public class RLEDecompressingInputStream
public static byte[] decompress(byte[] compressed, int offset, int length) throws IOException {
try (UnsynchronizedByteArrayOutputStream out = new UnsynchronizedByteArrayOutputStream();
- InputStream instream = new ByteArrayInputStream(compressed, offset, length);
- InputStream stream = new RLEDecompressingInputStream(instream)) {
+ InputStream instream = new UnsynchronizedByteArrayInputStream(compressed, offset, length);
+ InputStream stream = new RLEDecompressingInputStream(instream)) {
IOUtils.copy(stream, out);
return out.toByteArray();
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org