Author: tilman
Date: Sat Sep  2 18:16:44 2023
New Revision: 1912057

URL: http://svn.apache.org/viewvc?rev=1912057&view=rev
Log:
PDFBOX-5669: use JDK 11 built-in methods, as suggested by Axel Howind

Modified:
    
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java
    
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/streampane/StreamPane.java
    pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/ui/Tree.java
    
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractTTFFonts.java
    
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/CMSProcessableInputStream.java
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/ASCII85Filter.java
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CCITTFaxFilter.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/FlateFilter.java
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/IdentityFilter.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Overlay.java
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFCloneUtility.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/PDStream.java
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java
    
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/encryption/TestSymmetricKeyEncryption.java
    
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/EndstreamFilterStreamTest.java
    
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/graphics/image/JPEGFactoryTest.java
    pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/ExtractImages.java

Modified: 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java 
(original)
+++ 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java 
Sat Sep  2 18:16:44 2023
@@ -135,7 +135,6 @@ import org.apache.pdfbox.debugger.ui.Xre
 import org.apache.pdfbox.debugger.ui.XrefEntry;
 import org.apache.pdfbox.debugger.ui.ZoomMenu;
 import org.apache.pdfbox.filter.FilterFactory;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.io.RandomAccessReadBuffer;
 import org.apache.pdfbox.pdmodel.PDDocument;
 import org.apache.pdfbox.pdmodel.common.PDPageLabels;
@@ -1665,7 +1664,7 @@ public class PDFDebugger extends JFrame
                 try (InputStream stream = url.openStream())
                 {
                     ByteArrayOutputStream baos = new ByteArrayOutputStream();
-                    IOUtils.copy(stream, baos);
+                    stream.transferTo(baos);
                     JEditorPane editor
                             = new JEditorPane("text/plain", 
baos.toString(StandardCharsets.UTF_8));
                     editor.setEditable(false);

Modified: 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/streampane/StreamPane.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/streampane/StreamPane.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/streampane/StreamPane.java
 (original)
+++ 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/streampane/StreamPane.java
 Sat Sep  2 18:16:44 2023
@@ -68,7 +68,6 @@ import org.apache.pdfbox.cos.COSStream;
 import org.apache.pdfbox.cos.COSString;
 import org.apache.pdfbox.debugger.hexviewer.HexView;
 import org.apache.pdfbox.debugger.streampane.tooltip.ToolTipController;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdfparser.PDFStreamParser;
 import org.apache.pdfbox.pdmodel.PDResources;
 import org.apache.pdfbox.util.XMLUtil;
@@ -333,7 +332,7 @@ public class StreamPane implements Actio
             ByteArrayOutputStream baos = new ByteArrayOutputStream();
             try
             {
-                IOUtils.copy(in, baos);
+                in.transferTo(baos);
                 return baos.toString(encoding);
             }
             catch (IOException e)

Modified: 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/ui/Tree.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/ui/Tree.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/ui/Tree.java 
(original)
+++ pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/ui/Tree.java 
Sat Sep  2 18:16:44 2023
@@ -22,7 +22,6 @@ import org.apache.pdfbox.cos.COSBase;
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.cos.COSStream;
 import org.apache.pdfbox.debugger.treestatus.TreeStatus;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdmodel.common.PDStream;
 
 import javax.swing.JMenuItem;
@@ -301,7 +300,7 @@ public class Tree extends JTree
                 try (InputStream is = cosStream.createInputStream();
                         FileOutputStream os = new FileOutputStream(temp))
                 {
-                    IOUtils.copy(is, os);
+                    is.transferTo(os);
                 }
                 Desktop.getDesktop().open(temp);
             }

Modified: 
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractTTFFonts.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractTTFFonts.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractTTFFonts.java
 (original)
+++ 
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/ExtractTTFFonts.java
 Sat Sep  2 18:16:44 2023
@@ -24,7 +24,6 @@ import java.io.OutputStream;
 
 import org.apache.pdfbox.Loader;
 import org.apache.pdfbox.cos.COSName;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdmodel.PDDocument;
 import org.apache.pdfbox.pdmodel.PDPage;
 import org.apache.pdfbox.pdmodel.PDResources;
@@ -202,7 +201,7 @@ public final class ExtractTTFFonts
                 try (OutputStream os = new FileOutputStream(new File(name + 
".ttf"));
                      InputStream is = ff2Stream.createInputStream())
                 {
-                    IOUtils.copy(is, os);
+                    is.transferTo(os);
                 }
             }
         }

Modified: 
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/CMSProcessableInputStream.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/CMSProcessableInputStream.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/CMSProcessableInputStream.java
 (original)
+++ 
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/CMSProcessableInputStream.java
 Sat Sep  2 18:16:44 2023
@@ -24,7 +24,6 @@ import org.bouncycastle.cms.CMSTypedData
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
-import org.apache.pdfbox.io.IOUtils;
 
 /**
  * Wraps a InputStream into a CMSProcessable object for bouncy castle. It's a 
memory saving
@@ -59,7 +58,7 @@ class CMSProcessableInputStream implemen
     public void write(OutputStream out) throws IOException, CMSException
     {
         // read the content only one time
-        IOUtils.copy(in, out);
+        in.transferTo(out);
         in.close();
     }
 

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/ASCII85Filter.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/ASCII85Filter.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/ASCII85Filter.java 
(original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/ASCII85Filter.java 
Sat Sep  2 18:16:44 2023
@@ -21,7 +21,6 @@ import java.io.InputStream;
 import java.io.OutputStream;
 
 import org.apache.pdfbox.cos.COSDictionary;
-import org.apache.pdfbox.io.IOUtils;
 
 /**
  * Decodes data encoded in an ASCII base-85 representation, reproducing the 
original binary data.
@@ -35,7 +34,7 @@ final class ASCII85Filter extends Filter
     {
         try (ASCII85InputStream is = new ASCII85InputStream(encoded))
         {
-            IOUtils.copy(is, decoded);
+            is.transferTo(decoded);
         }
         decoded.flush();
         return new DecodeResult(parameters);
@@ -47,7 +46,7 @@ final class ASCII85Filter extends Filter
     {
         try (ASCII85OutputStream os = new ASCII85OutputStream(encoded))
         {
-            IOUtils.copy(input, os);
+            input.transferTo(os);
         }
         encoded.flush();
     }

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CCITTFaxFilter.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CCITTFaxFilter.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CCITTFaxFilter.java 
(original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CCITTFaxFilter.java 
Sat Sep  2 18:16:44 2023
@@ -23,7 +23,6 @@ import java.io.PushbackInputStream;
 
 import org.apache.pdfbox.cos.COSDictionary;
 import org.apache.pdfbox.cos.COSName;
-import org.apache.pdfbox.io.IOUtils;
 
 /**
  * Decodes image data that has been encoded using either Group 3 or Group 4
@@ -151,6 +150,6 @@ final class CCITTFaxFilter extends Filte
         int rows = parameters.getInt(COSName.ROWS);
         CCITTFaxEncoderStream ccittFaxEncoderStream = 
                 new CCITTFaxEncoderStream(encoded, cols, rows, 
TIFFExtension.FILL_LEFT_TO_RIGHT);
-        IOUtils.copy(input, ccittFaxEncoderStream);
+        input.transferTo(ccittFaxEncoderStream);
     }
 }

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/FlateFilter.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/FlateFilter.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/FlateFilter.java 
(original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/FlateFilter.java 
Sat Sep  2 18:16:44 2023
@@ -26,7 +26,6 @@ import java.util.zip.Inflater;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.pdfbox.cos.COSDictionary;
-import org.apache.pdfbox.io.IOUtils;
 
 /**
  * Decompresses data encoded using the zlib/deflate compression method,
@@ -129,7 +128,7 @@ final class FlateFilter extends Filter
         Deflater deflater = new Deflater(compressionLevel);
         try (DeflaterOutputStream out = new 
DeflaterOutputStream(encoded,deflater))
         {
-            IOUtils.copy(input, out);
+            input.transferTo(out);
         }
         encoded.flush();
         deflater.end();

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/IdentityFilter.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/IdentityFilter.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/IdentityFilter.java 
(original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/IdentityFilter.java 
Sat Sep  2 18:16:44 2023
@@ -20,7 +20,6 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import org.apache.pdfbox.cos.COSDictionary;
-import org.apache.pdfbox.io.IOUtils;
 
 /**
  * The IdentityFilter filter passes the data through without any modifications.
@@ -35,7 +34,7 @@ final class IdentityFilter extends Filte
                                          COSDictionary parameters, int index)
         throws IOException
     {
-        IOUtils.copy(encoded, decoded);
+        encoded.transferTo(decoded);
         decoded.flush();
         return new DecodeResult(parameters);
     }
@@ -44,7 +43,7 @@ final class IdentityFilter extends Filte
     protected void encode(InputStream input, OutputStream encoded, 
COSDictionary parameters)
         throws IOException
     {
-        IOUtils.copy(input, encoded);
+        input.transferTo(encoded);
         encoded.flush();
     }
 }
\ No newline at end of file

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Overlay.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Overlay.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Overlay.java 
(original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/Overlay.java 
Sat Sep  2 18:16:44 2023
@@ -39,7 +39,6 @@ import org.apache.pdfbox.cos.COSDictiona
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.cos.COSObject;
 import org.apache.pdfbox.cos.COSStream;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdmodel.PDDocument;
 import org.apache.pdfbox.pdmodel.PDPage;
 import org.apache.pdfbox.pdmodel.PDPageTree;
@@ -349,7 +348,7 @@ public class Overlay implements Closeabl
             {
                 try (InputStream in = contentStream.createInputStream())
                 {
-                    IOUtils.copy(in, out);
+                    in.transferTo(out);
                     out.flush();
                 }
             }

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFCloneUtility.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFCloneUtility.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFCloneUtility.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFCloneUtility.java
 Sat Sep  2 18:16:44 2023
@@ -31,7 +31,6 @@ import org.apache.pdfbox.cos.COSDictiona
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.cos.COSObject;
 import org.apache.pdfbox.cos.COSStream;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdmodel.PDDocument;
 import org.apache.pdfbox.pdmodel.common.COSObjectable;
 
@@ -148,7 +147,7 @@ public class PDFCloneUtility
         try (OutputStream output = newStream.createRawOutputStream();
                 InputStream input = stream.createRawInputStream())
         {
-            IOUtils.copy(input, output);
+            input.transferTo(output);
         }
         clonedVersion.put(stream, newStream);
         for (Map.Entry<COSName, COSBase> entry : stream.entrySet())

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java 
(original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java 
Sat Sep  2 18:16:44 2023
@@ -58,7 +58,6 @@ import org.apache.pdfbox.cos.COSString;
 import org.apache.pdfbox.cos.COSUpdateInfo;
 import org.apache.pdfbox.cos.ICOSVisitor;
 
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.io.RandomAccessInputStream;
 import org.apache.pdfbox.io.RandomAccessRead;
 import org.apache.pdfbox.pdfparser.PDFXRefStream;
@@ -860,7 +859,8 @@ public class COSWriter implements ICOSVi
     private void doWriteIncrement() throws IOException
     {
         // write existing PDF
-        IOUtils.copy(new RandomAccessInputStream(incrementalInput), 
incrementalOutput);
+        InputStream input = new RandomAccessInputStream(incrementalInput);
+        input.transferTo(incrementalOutput);
         // write the actual incremental update
         incrementalOutput.write(((ByteArrayOutputStream) 
output).toByteArray());
     }
@@ -981,7 +981,8 @@ public class COSWriter implements ICOSVi
         System.arraycopy(signatureBytes, 0, incrementPart, incPartSigOffset + 
1, signatureBytes.length);
 
         // write the data to the incremental output stream
-        IOUtils.copy(new RandomAccessInputStream(incrementalInput), 
incrementalOutput);
+        InputStream input = new RandomAccessInputStream(incrementalInput);
+        input.transferTo(incrementalOutput);
         incrementalOutput.write(incrementPart);
 
         // prevent further use
@@ -1391,7 +1392,7 @@ public class COSWriter implements ICOSVi
             if (obj.hasData())
             {
                 input = obj.createRawInputStream();
-                IOUtils.copy(input, getStandardOutput());
+                input.transferTo(getStandardOutput());
             }
             getStandardOutput().writeCRLF();
             getStandardOutput().write(ENDSTREAM);

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/PDStream.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/PDStream.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/PDStream.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/common/PDStream.java
 Sat Sep  2 18:16:44 2023
@@ -37,7 +37,6 @@ import org.apache.pdfbox.cos.COSStream;
 import org.apache.pdfbox.filter.DecodeOptions;
 import org.apache.pdfbox.filter.Filter;
 import org.apache.pdfbox.filter.FilterFactory;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.io.RandomAccessInputStream;
 import org.apache.pdfbox.io.RandomAccessRead;
 import org.apache.pdfbox.pdmodel.PDDocument;
@@ -134,7 +133,7 @@ public class PDStream implements COSObje
         stream = doc.getDocument().createCOSStream();
         try (OutputStream output = stream.createOutputStream(filters))
         {
-            IOUtils.copy(input, output);
+            input.transferTo(output);
         }
         finally
         {

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java
 Sat Sep  2 18:16:44 2023
@@ -376,7 +376,7 @@ public abstract class SecurityHandler<T_
 
         try (CipherInputStream cis = new CipherInputStream(data, cipher))
         {
-            IOUtils.copy(cis, output);
+            cis.transferTo(output);
         }
         catch (IOException exception)
         {

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java
 Sat Sep  2 18:16:44 2023
@@ -49,7 +49,6 @@ import org.apache.pdfbox.cos.COSObject;
 import org.apache.pdfbox.cos.COSStream;
 import org.apache.pdfbox.filter.DecodeOptions;
 import org.apache.pdfbox.filter.DecodeResult;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdmodel.PDDocument;
 import org.apache.pdfbox.pdmodel.PDResources;
 import org.apache.pdfbox.pdmodel.common.PDMetadata;
@@ -173,7 +172,7 @@ public final class PDImageXObject extend
         COSStream stream = document.getDocument().createCOSStream();
         try (OutputStream output = stream.createRawOutputStream())
         {
-            IOUtils.copy(rawInput, output);
+            rawInput.transferTo(output);
         }
         return stream;
     }

Modified: 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/encryption/TestSymmetricKeyEncryption.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/encryption/TestSymmetricKeyEncryption.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/encryption/TestSymmetricKeyEncryption.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/encryption/TestSymmetricKeyEncryption.java
 Sat Sep  2 18:16:44 2023
@@ -41,7 +41,6 @@ import org.apache.commons.logging.LogFac
 import org.apache.pdfbox.Loader;
 import org.apache.pdfbox.cos.COSDictionary;
 import org.apache.pdfbox.cos.COSName;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.io.RandomAccessRead;
 import org.apache.pdfbox.io.RandomAccessReadBuffer;
 import org.apache.pdfbox.io.RandomAccessReadBufferedFile;
@@ -461,7 +460,7 @@ class TestSymmetricKeyEncryption
         try (FileOutputStream fos = new FileOutputStream(resultFile);
              InputStream is = embeddedFile.createInputStream())
         {
-            IOUtils.copy(is, fos);
+            is.transferTo(fos);
         }
 
         LOG.info("  size: " + embeddedFile.getSize());

Modified: 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/EndstreamFilterStreamTest.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/EndstreamFilterStreamTest.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/EndstreamFilterStreamTest.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdfparser/EndstreamFilterStreamTest.java
 Sat Sep  2 18:16:44 2023
@@ -26,7 +26,6 @@ import java.io.OutputStream;
 import java.util.Map;
 
 import org.apache.pdfbox.Loader;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdmodel.PDDocument;
 import org.apache.pdfbox.pdmodel.PDDocumentCatalog;
 import org.apache.pdfbox.pdmodel.PDDocumentNameDictionary;
@@ -124,7 +123,7 @@ class EndstreamFilterStreamTest
             File f = new File(d, spec.getFile());
             try (OutputStream os = new FileOutputStream(f))
             {
-                IOUtils.copy(input, os);
+                input.transferTo(os);
             }
             assertEquals(17660, f.length());
         }

Modified: 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/graphics/image/JPEGFactoryTest.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/graphics/image/JPEGFactoryTest.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/graphics/image/JPEGFactoryTest.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/graphics/image/JPEGFactoryTest.java
 Sat Sep  2 18:16:44 2023
@@ -32,7 +32,6 @@ import javax.imageio.ImageIO;
 
 import org.apache.pdfbox.Loader;
 import org.apache.pdfbox.cos.COSName;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdmodel.PDDocument;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceCMYK;
 import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceGray;
@@ -324,8 +323,8 @@ class JPEGFactoryTest
             ByteArrayOutputStream baos2 = new ByteArrayOutputStream();
             try (InputStream dctStream = 
img.createInputStream(Arrays.asList(COSName.DCT_DECODE.getName())))
             {
-                IOUtils.copy(resourceStream, baos1);
-                IOUtils.copy(dctStream, baos2);
+                resourceStream.transferTo(baos1);
+                dctStream.transferTo(baos2);
             }
             resourceStream.close();
             assertArrayEquals(baos1.toByteArray(), baos2.toByteArray());

Modified: 
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/ExtractImages.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/ExtractImages.java?rev=1912057&r1=1912056&r2=1912057&view=diff
==============================================================================
--- pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/ExtractImages.java 
(original)
+++ pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/ExtractImages.java 
Sat Sep  2 18:16:44 2023
@@ -384,7 +384,7 @@ public final class ExtractImages impleme
                     {
                         // RGB or Gray colorspace: get and write the 
unmodified JPEG stream
                         InputStream data = pdImage.createInputStream(JPEG);
-                        IOUtils.copy(data, imageOutput);
+                        data.transferTo(imageOutput);
                         IOUtils.closeQuietly(data);
                     }
                     else
@@ -407,7 +407,7 @@ public final class ExtractImages impleme
                         // RGB or Gray colorspace: get and write the 
unmodified JPEG2000 stream
                         InputStream data = pdImage.createInputStream(
                                 
Collections.singletonList(COSName.JPX_DECODE.getName()));
-                        IOUtils.copy(data, imageOutput);
+                        data.transferTo(imageOutput);
                         IOUtils.closeQuietly(data);
                     }
                     else


Reply via email to