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 2021/03/20 17:07:49 UTC

svn commit: r1887870 - in /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox: cos/COSDocument.java filter/CryptFilter.java filter/JBIG2Filter.java multipdf/PDFMergerUtility.java

Author: lehmi
Date: Sat Mar 20 17:07:49 2021
New Revision: 1887870

URL: http://svn.apache.org/viewvc?rev=1887870&view=rev
Log:
PDFBOX-4892: use convenience methods to simplify code

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CryptFilter.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/JBIG2Filter.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java?rev=1887870&r1=1887869&r2=1887870&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java Sat Mar 20 17:07:49 2021
@@ -299,12 +299,7 @@ public class COSDocument extends COSBase
      */
     public boolean isEncrypted()
     {
-        boolean encrypted = false;
-        if (trailer != null)
-        {
-            encrypted = trailer.getDictionaryObject(COSName.ENCRYPT) instanceof COSDictionary;
-        }
-        return encrypted;
+        return trailer != null ? trailer.getCOSDictionary(COSName.ENCRYPT) != null : false;
     }
 
     /**

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CryptFilter.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CryptFilter.java?rev=1887870&r1=1887869&r2=1887870&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CryptFilter.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/CryptFilter.java Sat Mar 20 17:07:49 2021
@@ -33,7 +33,7 @@ final class CryptFilter extends Filter
     public DecodeResult decode(InputStream encoded, OutputStream decoded,
                                          COSDictionary parameters, int index) throws IOException
     {
-        COSName encryptionName = (COSName) parameters.getDictionaryObject(COSName.NAME);
+        COSName encryptionName = parameters.getCOSName(COSName.NAME);
         if(encryptionName == null || encryptionName.equals(COSName.IDENTITY)) 
         {
             // currently the only supported implementation is the Identity crypt filter
@@ -48,7 +48,7 @@ final class CryptFilter extends Filter
     protected void encode(InputStream input, OutputStream encoded, COSDictionary parameters)
             throws IOException
     {
-        COSName encryptionName = (COSName) parameters.getDictionaryObject(COSName.NAME);
+        COSName encryptionName = parameters.getCOSName(COSName.NAME);
         if(encryptionName == null || encryptionName.equals(COSName.IDENTITY))
         {
             // currently the only supported implementation is the Identity crypt filter

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/JBIG2Filter.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/JBIG2Filter.java?rev=1887870&r1=1887869&r2=1887870&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/JBIG2Filter.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/filter/JBIG2Filter.java Sat Mar 20 17:07:49 2021
@@ -30,7 +30,6 @@ import javax.imageio.ImageReader;
 import javax.imageio.stream.ImageInputStream;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.pdfbox.cos.COSBase;
 import org.apache.pdfbox.cos.COSDictionary;
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.cos.COSStream;
@@ -83,10 +82,10 @@ final class JBIG2Filter extends Filter
         InputStream source = encoded;
         if (params != null)
         {
-            COSBase globals = params.getDictionaryObject(COSName.JBIG2_GLOBALS);
-            if (globals instanceof COSStream)
+            COSStream globals = params.getCOSStream(COSName.JBIG2_GLOBALS);
+            if (globals != null)
             {
-                source = new SequenceInputStream(((COSStream) globals).createInputStream(), encoded);
+                source = new SequenceInputStream(globals.createInputStream(), encoded);
             }
         }
 

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java?rev=1887870&r1=1887869&r2=1887870&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java Sat Mar 20 17:07:49 2021
@@ -572,7 +572,7 @@ public class PDFMergerUtility
 
         mergeAcroForm(cloner, destCatalog, srcCatalog);
 
-        COSArray destThreads = (COSArray) destCatalog.getCOSObject().getDictionaryObject(COSName.THREADS);
+        COSArray destThreads = destCatalog.getCOSObject().getCOSArray(COSName.THREADS);
         COSArray srcThreads = (COSArray) cloner.cloneForNewDocument(destCatalog.getCOSObject().getDictionaryObject(
                 COSName.THREADS));
         if (destThreads == null)
@@ -1321,10 +1321,9 @@ public class PDFMergerUtility
         {
             parentTreeEntry.setItem(COSName.PG, objMapping.get(pageDict));
         }
-        COSBase obj = parentTreeEntry.getDictionaryObject(COSName.OBJ);
-        if (obj instanceof COSDictionary)
+        COSDictionary objDict = parentTreeEntry.getCOSDictionary(COSName.OBJ);
+        if (objDict != null)
         {
-            COSDictionary objDict = (COSDictionary) obj;
             if (objMapping.containsKey(objDict))
             {
                 parentTreeEntry.setItem(COSName.OBJ, objMapping.get(objDict));
@@ -1349,7 +1348,7 @@ public class PDFMergerUtility
                             ", Subtype: " + objDict.getNameAsString(COSName.SUBTYPE) +
                             ", T: " + objDict.getNameAsString(COSName.T));
                 }
-                parentTreeEntry.setItem(COSName.OBJ, cloner.cloneForNewDocument(obj));
+                parentTreeEntry.setItem(COSName.OBJ, cloner.cloneForNewDocument(objDict));
             }
         }
         COSBase kSubEntry = parentTreeEntry.getDictionaryObject(COSName.K);