Author: lehmi
Date: Mon Mar 15 07:17:51 2021
New Revision: 1887665

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

Modified:
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDCryptFilterDictionary.java
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDEncryption.java
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDCryptFilterDictionary.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDCryptFilterDictionary.java?rev=1887665&r1=1887664&r2=1887665&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDCryptFilterDictionary.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDCryptFilterDictionary.java
 Mon Mar 15 07:17:51 2021
@@ -104,7 +104,7 @@ public class PDCryptFilterDictionary imp
      */
     public COSName getCryptFilterMethod()
     {
-        return (COSName)cryptFilterDictionary.getDictionaryObject( COSName.CFM 
);
+        return cryptFilterDictionary.getCOSName(COSName.CFM);
     }
 
 }

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDEncryption.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDEncryption.java?rev=1887665&r1=1887664&r2=1887665&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDEncryption.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/PDEncryption.java
 Mon Mar 15 07:17:51 2021
@@ -20,8 +20,6 @@ package org.apache.pdfbox.pdmodel.encryp
 import java.io.IOException;
 
 import org.apache.pdfbox.cos.COSArray;
-import org.apache.pdfbox.cos.COSBase;
-import org.apache.pdfbox.cos.COSBoolean;
 import org.apache.pdfbox.cos.COSDictionary;
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.cos.COSString;
@@ -399,16 +397,7 @@ public class PDEncryption implements COS
     public boolean isEncryptMetaData()
     {
         // default is true (see 7.6.3.2 Standard Encryption Dictionary PDF 
32000-1:2008)
-        boolean encryptMetaData = true;
-        
-        COSBase value = 
dictionary.getDictionaryObject(COSName.ENCRYPT_META_DATA);
-        
-        if (value instanceof COSBoolean)
-        {
-            encryptMetaData = ((COSBoolean)value).getValue();
-        }
-        
-        return encryptMetaData;
+        return dictionary.getBoolean(COSName.ENCRYPT_META_DATA, true);
     }
     
     /**
@@ -483,13 +472,13 @@ public class PDEncryption implements COS
     public PDCryptFilterDictionary getCryptFilterDictionary(COSName 
cryptFilterName)
     {
         // See CF in "Table 20 – Entries common to all encryption 
dictionaries"
-        COSBase base = dictionary.getDictionaryObject(COSName.CF);
-        if (base instanceof COSDictionary)
+        COSDictionary cfDict = dictionary.getCOSDictionary(COSName.CF);
+        if (cfDict != null)
         {
-            COSBase base2 = ((COSDictionary) 
base).getDictionaryObject(cryptFilterName);
-            if (base2 instanceof COSDictionary)
+            COSDictionary cryptDict = cfDict.getCOSDictionary(cryptFilterName);
+            if (cryptDict != null)
             {
-                return new PDCryptFilterDictionary((COSDictionary) base2);
+                return new PDCryptFilterDictionary(cryptDict);
             }
         }
         return null;
@@ -543,12 +532,8 @@ public class PDEncryption implements COS
      */
     public COSName getStreamFilterName() 
     {
-        COSName stmF = (COSName) dictionary.getDictionaryObject( COSName.STM_F 
);
-        if (stmF == null)
-        {
-            stmF = COSName.IDENTITY;
-        }
-        return stmF;
+        COSName stmF = dictionary.getCOSName(COSName.STM_F);
+        return stmF == null ? COSName.IDENTITY : stmF;
     }
 
     /**
@@ -569,12 +554,8 @@ public class PDEncryption implements COS
      */
     public COSName getStringFilterName() 
     {
-        COSName strF = (COSName) dictionary.getDictionaryObject( COSName.STR_F 
);
-        if (strF == null)
-        {
-            strF = COSName.IDENTITY;
-        }
-        return strF;
+        COSName strF = dictionary.getCOSName(COSName.STR_F);
+        return strF == null ? COSName.IDENTITY : strF;
     }
 
     /**

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=1887665&r1=1887664&r2=1887665&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
 Mon Mar 15 07:17:51 2021
@@ -580,7 +580,7 @@ public abstract class SecurityHandler<T_
             // PDFBOX-2936: avoid orphan /CF dictionaries found in US govt 
"I-" files
             return;
         }
-        COSBase type = dictionary.getDictionaryObject(COSName.TYPE);
+        COSName type = dictionary.getCOSName(COSName.TYPE);
         boolean isSignature = COSName.SIG.equals(type) || 
COSName.DOC_TIME_STAMP.equals(type) ||
                 // PDFBOX-4466: /Type is optional, see
                 // https://ec.europa.eu/cefdigital/tracker/browse/DSS-1538


Reply via email to