Author: tilman
Date: Fri Jun  5 10:10:26 2026
New Revision: 1935012

Log:
PDFBOX-5660: refactor as suggested by copilot

Modified:
   pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSInputStream.java

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSInputStream.java
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSInputStream.java 
Fri Jun  5 10:10:23 2026        (r1935011)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSInputStream.java 
Fri Jun  5 10:10:26 2026        (r1935012)
@@ -21,7 +21,6 @@ import java.io.FilterInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.List;
 
 import org.apache.pdfbox.filter.DecodeOptions;
@@ -52,25 +51,29 @@ public final class COSInputStream extend
     {
         if (filters.isEmpty())
         {
-            return new COSInputStream(in, Collections.emptyList());
+            return new COSInputStream(in, null);
         }
         List<DecodeResult> results = new ArrayList<>(filters.size());
         RandomAccessRead decoded = Filter.decode(in, filters, parameters, 
options, results);
-        return new COSInputStream(new RandomAccessInputStream(decoded), 
results);
+        if (results.isEmpty())
+        {
+            return new COSInputStream(in, null);
+        }
+        return new COSInputStream(new RandomAccessInputStream(decoded), 
results.get(results.size() - 1));
     }
 
-    private final List<DecodeResult> decodeResults;
+    private final DecodeResult decodeResult;
 
     /**
      * Constructor.
      * 
      * @param input decoded stream
-     * @param decodeResults results of decoding
+     * @param decodeResult result of decoding
      */
-    private COSInputStream(InputStream input, List<DecodeResult> decodeResults)
+    private COSInputStream(InputStream input, DecodeResult decodeResult)
     {
         super(input);
-        this.decodeResults = decodeResults;
+        this.decodeResult = decodeResult;
     }
     
     /**
@@ -80,13 +83,10 @@ public final class COSInputStream extend
      */
     public DecodeResult getDecodeResult()
     {
-        if (decodeResults.isEmpty())
+        if (decodeResult == null)
         {
             return DecodeResult.createDefault();
         }
-        else
-        {
-            return decodeResults.get(decodeResults.size() - 1);
-        }
+        return decodeResult;
     }
 }

Reply via email to