You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by le...@apache.org on 2020/03/15 17:18:08 UTC
svn commit: r1875213 - in /pdfbox/trunk:
examples/src/main/java/org/apache/pdfbox/examples/signature/
pdfbox/src/main/java/org/apache/pdfbox/io/
pdfbox/src/main/java/org/apache/pdfbox/pdfparser/
pdfbox/src/test/java/org/apache/pdfbox/pdfparser/
Author: lehmi
Date: Sun Mar 15 17:18:07 2020
New Revision: 1875213
URL: http://svn.apache.org/viewvc?rev=1875213&view=rev
Log:
PDFBOX-3888: remove readFully or replace it with skip
Modified:
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBuffer.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBufferedFileInputStream.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessFile.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessRead.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/ScratchFileBuffer.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/InputStreamSource.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFObjectStreamParser.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/RandomAccessSource.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/SequentialSource.java
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/InputStreamSourceTest.java
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/RandomAccessSourceTest.java
Modified: pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java (original)
+++ pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java Sun Mar 15 17:18:07 2020
@@ -310,7 +310,8 @@ public final class ShowSignature
{
System.err.println("'<' expected at offset " + byteRange[1] + ", but got " + (char) c);
}
- byte[] contentFromFile = raf.readFully(byteRange[2] - byteRange[1] - 2);
+ byte[] contentFromFile = new byte[byteRange[2] - byteRange[1] - 2];
+ raf.read(contentFromFile);
byte[] contentAsHex = Hex.getString(contents.getBytes()).getBytes(StandardCharsets.US_ASCII);
if (contentFromFile.length != contentAsHex.length)
{
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBuffer.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBuffer.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBuffer.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBuffer.java Sun Mar 15 17:18:07 2020
@@ -498,21 +498,6 @@ public class RandomAccessBuffer implemen
* {@inheritDoc}
*/
@Override
- public byte[] readFully(int length) throws IOException
- {
- byte[] b = new byte[length];
- int bytesRead = read(b);
- while (bytesRead < length)
- {
- bytesRead += read(b, bytesRead, length - bytesRead);
- }
- return b;
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
public int read(byte[] b) throws IOException
{
return read(b, 0, b.length);
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBufferedFileInputStream.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBufferedFileInputStream.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBufferedFileInputStream.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessBufferedFileInputStream.java Sun Mar 15 17:18:07 2020
@@ -331,18 +331,6 @@ extends InputStream implements RandomAcc
}
@Override
- public byte[] readFully(int length) throws IOException
- {
- byte[] b = new byte[length];
- int bytesRead = read(b);
- while(bytesRead < length)
- {
- bytesRead += read(b, bytesRead, length-bytesRead);
- }
- return b;
- }
-
- @Override
public boolean isEOF() throws IOException
{
int peek = peek();
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessFile.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessFile.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessFile.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessFile.java Sun Mar 15 17:18:07 2020
@@ -159,15 +159,6 @@ public class RandomAccessFile implements
}
@Override
- public byte[] readFully(int length) throws IOException
- {
- checkClosed();
- byte[] b = new byte[length];
- ras.readFully(b);
- return b;
- }
-
- @Override
public boolean isEOF() throws IOException
{
return peek() == -1;
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessRead.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessRead.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessRead.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/RandomAccessRead.java Sun Mar 15 17:18:07 2020
@@ -104,14 +104,6 @@ public interface RandomAccessRead extend
void rewind(int bytes) throws IOException;
/**
- * Reads a given number of bytes.
- * @param length the number of bytes to be read
- * @return a byte array containing the bytes just read
- * @throws IOException if an I/O error occurs while reading data
- */
- byte[] readFully(int length) throws IOException;
-
- /**
* A simple test to see if we are at the end of the data.
*
* @return true if we are at the end of the data.
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/ScratchFileBuffer.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/ScratchFileBuffer.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/ScratchFileBuffer.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/io/ScratchFileBuffer.java Sun Mar 15 17:18:07 2020
@@ -372,28 +372,6 @@ class ScratchFileBuffer implements Rando
* {@inheritDoc}
*/
@Override
- public byte[] readFully(int len) throws IOException
- {
- byte[] b = new byte[len];
-
- int n = 0;
- do
- {
- int count = read(b, n, len - n);
- if (count < 0)
- {
- throw new EOFException();
- }
- n += count;
- } while (n < len);
-
- return b;
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
public boolean isEOF() throws IOException
{
checkClosed();
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/InputStreamSource.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/InputStreamSource.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/InputStreamSource.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/InputStreamSource.java Sun Mar 15 17:18:07 2020
@@ -117,28 +117,6 @@ final class InputStreamSource implements
}
@Override
- public byte[] readFully(int length) throws IOException
- {
- byte[] bytes = new byte[length];
- int off = 0;
- int len = length;
- while (len > 0)
- {
- int n = this.read(bytes, off, len);
- if (n > 0)
- {
- off += n;
- len -= n;
- }
- else
- {
- break;
- }
- }
- return bytes;
- }
-
- @Override
public boolean isEOF() throws IOException
{
return peek() == -1;
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFObjectStreamParser.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFObjectStreamParser.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFObjectStreamParser.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFObjectStreamParser.java Sun Mar 15 17:18:07 2020
@@ -81,10 +81,10 @@ public class PDFObjectStreamParser exten
long currentPosition = seqSource.getPosition();
if (firstObject > 0 && currentPosition < firstObject)
{
- seqSource.readFully(firstObject - (int) currentPosition);
+ seqSource.skip(firstObject - (int) currentPosition);
}
// jump to the offset of the object to be parsed
- seqSource.readFully(objectOffset);
+ seqSource.skip(objectOffset);
streamObject = parseDirObject();
}
}
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/RandomAccessSource.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/RandomAccessSource.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/RandomAccessSource.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/RandomAccessSource.java Sun Mar 15 17:18:07 2020
@@ -86,12 +86,6 @@ final class RandomAccessSource implement
}
@Override
- public byte[] readFully(int length) throws IOException
- {
- return reader.readFully(length);
- }
-
- @Override
public boolean isEOF() throws IOException
{
return reader.isEOF();
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/SequentialSource.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/SequentialSource.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/SequentialSource.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/SequentialSource.java Sun Mar 15 17:18:07 2020
@@ -97,13 +97,21 @@ interface SequentialSource extends Close
void unread(byte[] bytes, int start, int len) throws IOException;
/**
- * Reads a given number of bytes in its entirety.
+ * Skips a given number of bytes.
*
- * @param length the number of bytes to be read
- * @return a byte array containing the bytes just read
+ * @param length the number of bytes to be skipped
* @throws IOException if an I/O error occurs while reading data
*/
- byte[] readFully(int length) throws IOException;
+ default void skip(int length) throws IOException
+ {
+ int i = 0;
+ while (i++ < length)
+ {
+ int value = read();
+ if (value == -1)
+ break;
+ }
+ }
/**
* Returns true if the end of the data source has been reached.
Modified: pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/InputStreamSourceTest.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/InputStreamSourceTest.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/InputStreamSourceTest.java (original)
+++ pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/InputStreamSourceTest.java Sun Mar 15 17:18:07 2020
@@ -27,7 +27,7 @@ import org.junit.Test;
public class InputStreamSourceTest
{
@Test
- public void testPositionReadFully() throws IOException
+ public void testPositionSkip() throws IOException
{
byte[] inputValues = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
ByteArrayInputStream bais = new ByteArrayInputStream(inputValues);
@@ -35,7 +35,7 @@ public class InputStreamSourceTest
InputStreamSource inputStreamSource = new InputStreamSource(bais);
Assert.assertEquals(0, inputStreamSource.getPosition());
- inputStreamSource.readFully(5);
+ inputStreamSource.skip(5);
Assert.assertEquals(5, inputStreamSource.getPosition());
inputStreamSource.close();
@@ -86,7 +86,7 @@ public class InputStreamSourceTest
InputStreamSource inputStreamSource = new InputStreamSource(bais);
Assert.assertEquals(0, inputStreamSource.getPosition());
- inputStreamSource.readFully(6);
+ inputStreamSource.skip(6);
Assert.assertEquals(6, inputStreamSource.getPosition());
inputStreamSource.peek();
@@ -106,7 +106,8 @@ public class InputStreamSourceTest
Assert.assertEquals(0, inputStreamSource.getPosition());
inputStreamSource.read();
inputStreamSource.read();
- byte[] readBytes = inputStreamSource.readFully(6);
+ byte[] readBytes = new byte[6];
+ inputStreamSource.read(readBytes);
Assert.assertEquals(8, inputStreamSource.getPosition());
inputStreamSource.unread(readBytes);
Assert.assertEquals(2, inputStreamSource.getPosition());
Modified: pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/RandomAccessSourceTest.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/RandomAccessSourceTest.java?rev=1875213&r1=1875212&r2=1875213&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/RandomAccessSourceTest.java (original)
+++ pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/RandomAccessSourceTest.java Sun Mar 15 17:18:07 2020
@@ -29,7 +29,7 @@ import org.junit.Test;
public class RandomAccessSourceTest
{
@Test
- public void testPositionReadFully() throws IOException
+ public void testPositionSkip() throws IOException
{
byte[] inputValues = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
ByteArrayInputStream bais = new ByteArrayInputStream(inputValues);
@@ -38,7 +38,7 @@ public class RandomAccessSourceTest
new RandomAccessBuffer(bais));
Assert.assertEquals(0, randomAccessSource.getPosition());
- randomAccessSource.readFully(5);
+ randomAccessSource.skip(5);
Assert.assertEquals(5, randomAccessSource.getPosition());
randomAccessSource.close();
@@ -92,7 +92,7 @@ public class RandomAccessSourceTest
new RandomAccessBuffer(bais));
Assert.assertEquals(0, randomAccessSource.getPosition());
- randomAccessSource.readFully(6);
+ randomAccessSource.skip(6);
Assert.assertEquals(6, randomAccessSource.getPosition());
randomAccessSource.peek();
@@ -113,7 +113,8 @@ public class RandomAccessSourceTest
Assert.assertEquals(0, randomAccessSource.getPosition());
randomAccessSource.read();
randomAccessSource.read();
- byte[] readBytes = randomAccessSource.readFully(6);
+ byte[] readBytes = new byte[6];
+ randomAccessSource.read(readBytes);
Assert.assertEquals(8, randomAccessSource.getPosition());
randomAccessSource.unread(readBytes);
Assert.assertEquals(2, randomAccessSource.getPosition());