Bug 56913 - Replace usages of o.a.p.util.ArrayUtil.copyOf* methods with replacements from j.u.Arrays
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1622589 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
ff053aa4cd
commit
d60adb500e
@ -18,10 +18,11 @@
|
||||
*/
|
||||
package org.apache.poi.hssf.record;
|
||||
|
||||
import org.apache.poi.util.ArrayUtil;
|
||||
import org.apache.poi.util.LittleEndian;
|
||||
import org.apache.poi.util.LittleEndianOutput;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* DConRef records specify a range in a workbook (internal or external) that serves as a data source
|
||||
* for pivot tables or data consolidation.
|
||||
@ -273,7 +274,7 @@ public class DConRefRecord extends StandardRecord
|
||||
*/
|
||||
public byte[] getPath()
|
||||
{
|
||||
return ArrayUtil.copyOf(path, path.length);
|
||||
return Arrays.copyOf(path, path.length);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -291,7 +292,7 @@ public class DConRefRecord extends StandardRecord
|
||||
{
|
||||
offset++;
|
||||
}
|
||||
String out = new String(ArrayUtil.copyOfRange(path, offset, path.length));
|
||||
String out = new String(Arrays.copyOfRange(path, offset, path.length));
|
||||
//UNC paths have \u0003 chars as path separators.
|
||||
out = out.replaceAll("\u0003", "/");
|
||||
return out;
|
||||
|
@ -118,7 +118,7 @@ public final class DrawingGroupRecord extends AbstractEscherHolderRecord {
|
||||
writeHeader( data, offset, segmentLength );
|
||||
writtenActualData += 4;
|
||||
offset += 4;
|
||||
ArrayUtil.arraycopy( rawData, writtenRawData, data, offset, segmentLength );
|
||||
System.arraycopy( rawData, writtenRawData, data, offset, segmentLength );
|
||||
offset += segmentLength;
|
||||
writtenRawData += segmentLength;
|
||||
writtenActualData += segmentLength;
|
||||
|
@ -106,89 +106,4 @@ public class ArrayUtil
|
||||
// We're done - array will now have everything moved as required
|
||||
}
|
||||
|
||||
/**
|
||||
* Copies the specified array, truncating or padding with zeros (if
|
||||
* necessary) so the copy has the specified length. This method is temporary
|
||||
* replace for Arrays.copyOf() until we start to require JDK 1.6.
|
||||
*
|
||||
* @param source
|
||||
* the array to be copied
|
||||
* @param newLength
|
||||
* the length of the copy to be returned
|
||||
* @return a copy of the original array, truncated or padded with zeros to
|
||||
* obtain the specified length
|
||||
* @throws NegativeArraySizeException
|
||||
* if <tt>newLength</tt> is negative
|
||||
* @throws NullPointerException
|
||||
* if <tt>original</tt> is null
|
||||
*/
|
||||
public static byte[] copyOf( byte[] source, int newLength )
|
||||
{
|
||||
byte[] result = new byte[newLength];
|
||||
System.arraycopy( source, 0, result, 0,
|
||||
Math.min( source.length, newLength ) );
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Copies the specified array into specified result array, truncating or
|
||||
* padding with zeros (if necessary) so the copy has the specified length.
|
||||
* This method is temporary replace for Arrays.copyOf() until we start to
|
||||
* require JDK 1.6.
|
||||
*
|
||||
* @param source
|
||||
* the array to be copied
|
||||
* @param result
|
||||
* the array to be filled and returned
|
||||
* @throws NegativeArraySizeException
|
||||
* if <tt>newLength</tt> is negative
|
||||
* @throws NullPointerException
|
||||
* if <tt>original</tt> is null
|
||||
*/
|
||||
public static <T> T[] copyOf( T[] source, T[] result )
|
||||
{
|
||||
System.arraycopy( source, 0, result, 0,
|
||||
Math.min( source.length, result.length ) );
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Copies the specified range of the specified array into a new array.
|
||||
* The initial index of the range (<tt>from</tt>) must lie between zero
|
||||
* and <tt>original.length</tt>, inclusive. The value at
|
||||
* <tt>original[from]</tt> is placed into the initial element of the copy
|
||||
* (unless <tt>from == original.length</tt> or <tt>from == to</tt>).
|
||||
* Values from subsequent elements in the original array are placed into
|
||||
* subsequent elements in the copy. The final index of the range
|
||||
* (<tt>to</tt>), which must be greater than or equal to <tt>from</tt>,
|
||||
* may be greater than <tt>original.length</tt>, in which case
|
||||
* <tt>(byte)0</tt> is placed in all elements of the copy whose index is
|
||||
* greater than or equal to <tt>original.length - from</tt>. The length
|
||||
* of the returned array will be <tt>to - from</tt>.
|
||||
*
|
||||
* This method is temporary
|
||||
* replace for Arrays.copyOfRange() until we start to require JDK 1.6.
|
||||
*
|
||||
* @param original the array from which a range is to be copied
|
||||
* @param from the initial index of the range to be copied, inclusive
|
||||
* @param to the final index of the range to be copied, exclusive.
|
||||
* (This index may lie outside the array.)
|
||||
* @return a new array containing the specified range from the original array,
|
||||
* truncated or padded with zeros to obtain the required length
|
||||
* @throws ArrayIndexOutOfBoundsException if <tt>from < 0</tt>
|
||||
* or <tt>from > original.length()</tt>
|
||||
* @throws IllegalArgumentException if <tt>from > to</tt>
|
||||
* @throws NullPointerException if <tt>original</tt> is null
|
||||
* @since 1.6
|
||||
*/
|
||||
public static byte[] copyOfRange(byte[] original, int from, int to) {
|
||||
int newLength = to - from;
|
||||
if (newLength < 0)
|
||||
throw new IllegalArgumentException(from + " > " + to);
|
||||
byte[] copy = new byte[newLength];
|
||||
System.arraycopy(original, from, copy, 0,
|
||||
Math.min(original.length - from, newLength));
|
||||
return copy;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -19,6 +19,7 @@ package org.apache.poi.xwpf.usermodel;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
@ -32,7 +33,6 @@ import org.apache.poi.openxml4j.opc.PackagePartName;
|
||||
import org.apache.poi.openxml4j.opc.PackageRelationship;
|
||||
import org.apache.poi.openxml4j.opc.PackagingURIHelper;
|
||||
import org.apache.poi.openxml4j.opc.TargetMode;
|
||||
import org.apache.poi.util.ArrayUtil;
|
||||
import org.apache.poi.xwpf.XWPFTestDataSamples;
|
||||
import org.apache.xmlbeans.XmlCursor;
|
||||
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP;
|
||||
@ -307,7 +307,7 @@ public final class TestXWPFDocument extends TestCase {
|
||||
String id1 = doc.addPictureData(newPic, Document.PICTURE_TYPE_JPEG);
|
||||
assertEquals(2,doc.getAllPackagePictures().size());
|
||||
/* copy data, to avoid instance-equality */
|
||||
byte[] newPicCopy = ArrayUtil.copyOf(newPic, newPic.length);
|
||||
byte[] newPicCopy = Arrays.copyOf(newPic, newPic.length);
|
||||
String id2 = doc.addPictureData(newPicCopy, Document.PICTURE_TYPE_JPEG);
|
||||
assertEquals(id1,id2);
|
||||
doc.getPackage().revert();
|
||||
|
@ -16,11 +16,12 @@
|
||||
==================================================================== */
|
||||
package org.apache.poi.hwpf.model;
|
||||
|
||||
import org.apache.poi.util.ArrayUtil;
|
||||
import org.apache.poi.util.LittleEndian;
|
||||
import org.apache.poi.util.POILogFactory;
|
||||
import org.apache.poi.util.POILogger;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
public class NilPICFAndBinData
|
||||
{
|
||||
|
||||
@ -52,8 +53,8 @@ public class NilPICFAndBinData
|
||||
|
||||
// skip the 62 ignored bytes
|
||||
int binaryLength = lcb - cbHeader;
|
||||
this._binData = ArrayUtil.copyOfRange( data, offset + cbHeader,
|
||||
offset + cbHeader + binaryLength );
|
||||
this._binData = Arrays.copyOfRange(data, offset + cbHeader,
|
||||
offset + cbHeader + binaryLength);
|
||||
}
|
||||
|
||||
public byte[] getBinData()
|
||||
|
@ -23,7 +23,6 @@ import java.util.Arrays;
|
||||
import java.util.NoSuchElementException;
|
||||
|
||||
import org.apache.poi.hwpf.model.io.HWPFOutputStream;
|
||||
import org.apache.poi.util.ArrayUtil;
|
||||
import org.apache.poi.util.LittleEndian;
|
||||
import org.apache.poi.util.POILogFactory;
|
||||
import org.apache.poi.util.POILogger;
|
||||
@ -118,10 +117,10 @@ public class PlfLfo
|
||||
{
|
||||
final int newLfoMac = _lfoMac + 1;
|
||||
|
||||
_rgLfo = ArrayUtil.copyOf( _rgLfo, new LFO[newLfoMac] );
|
||||
_rgLfo = Arrays.copyOf(_rgLfo, newLfoMac);
|
||||
_rgLfo[_lfoMac + 1] = lfo;
|
||||
|
||||
_rgLfoData = ArrayUtil.copyOf( _rgLfoData, new LFOData[_lfoMac + 1] );
|
||||
_rgLfoData = Arrays.copyOf(_rgLfoData, newLfoMac);
|
||||
_rgLfoData[_lfoMac + 1] = lfoData;
|
||||
|
||||
this._lfoMac = newLfoMac;
|
||||
|
@ -16,10 +16,11 @@
|
||||
==================================================================== */
|
||||
package org.apache.poi.hwpf.model;
|
||||
|
||||
import org.apache.poi.util.ArrayUtil;
|
||||
import org.apache.poi.util.LittleEndian;
|
||||
import org.apache.poi.util.StringUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* The STTB is a string table that is made up of a header that is followed by an
|
||||
* array of elements. The cData value specifies the number of elements that are
|
||||
@ -64,7 +65,7 @@ public class Sttb
|
||||
{
|
||||
this._cDataLength = cDataLength;
|
||||
|
||||
this._data = ArrayUtil.copyOf( data, new String[data.length] );
|
||||
this._data = Arrays.copyOf(data, data.length);
|
||||
|
||||
this._cbExtra = 0;
|
||||
this._extraData = null;
|
||||
|
@ -23,7 +23,6 @@ import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.util.Arrays;
|
||||
import junit.framework.TestCase;
|
||||
import org.apache.poi.util.ArrayUtil;
|
||||
import org.apache.poi.util.LittleEndianOutputStream;
|
||||
|
||||
/**
|
||||
@ -288,7 +287,7 @@ public class TestDConRefRecord extends TestCase
|
||||
public void testGetPath()
|
||||
{
|
||||
DConRefRecord instance = new DConRefRecord(TestcaseRecordInputStream.create(81, data1));
|
||||
byte[] expResult = ArrayUtil.copyOfRange(data1, 9, data1.length);
|
||||
byte[] expResult = Arrays.copyOfRange(data1, 9, data1.length);
|
||||
byte[] result = instance.getPath();
|
||||
assertTrue("get path", Arrays.equals(expResult, result));
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user