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/08 07:26:22 UTC

svn commit: r1887314 - in /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation: PDAnnotationPolygon.java PDAnnotationPolyline.java PDAnnotationTextMarkup.java PDAnnotationWidget.java

Author: lehmi
Date: Mon Mar  8 07:26:21 2021
New Revision: 1887314

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

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolygon.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolyline.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationTextMarkup.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationWidget.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolygon.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolygon.java?rev=1887314&r1=1887313&r2=1887314&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolygon.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolygon.java Mon Mar  8 07:26:21 2021
@@ -98,15 +98,8 @@ public class PDAnnotationPolygon extends
      */
     public PDBorderEffectDictionary getBorderEffect()
     {
-        COSDictionary be = (COSDictionary) getCOSObject().getDictionaryObject(COSName.BE);
-        if (be != null)
-        {
-            return new PDBorderEffectDictionary(be);
-        }
-        else
-        {
-            return null;
-        }
+        COSDictionary be = getCOSObject().getCOSDictionary(COSName.BE);
+        return be != null ? new PDBorderEffectDictionary(be) : null;
     }
 
     /**
@@ -117,12 +110,8 @@ public class PDAnnotationPolygon extends
      */
     public float[] getVertices()
     {
-        COSBase base = getCOSObject().getDictionaryObject(COSName.VERTICES);
-        if (base instanceof COSArray)
-        {
-            return ((COSArray) base).toFloatArray();
-        }
-        return null;
+        COSArray array = getCOSObject().getCOSArray(COSName.VERTICES);
+        return array != null ? array.toFloatArray() : null;
     }
 
     /**
@@ -148,10 +137,9 @@ public class PDAnnotationPolygon extends
      */
     public float[][] getPath()
     {
-        COSBase base = getCOSObject().getDictionaryObject(COSName.PATH);
-        if (base instanceof COSArray)
+        COSArray array = getCOSObject().getCOSArray(COSName.PATH);
+        if (array != null)
         {
-            COSArray array = (COSArray) base;
             float[][] pathArray = new float[array.size()][];
             for (int i = 0; i < array.size(); ++i)
             {

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolyline.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolyline.java?rev=1887314&r1=1887313&r2=1887314&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolyline.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationPolyline.java Mon Mar  8 07:26:21 2021
@@ -16,7 +16,6 @@
 package org.apache.pdfbox.pdmodel.interactive.annotation;
 
 import org.apache.pdfbox.cos.COSArray;
-import org.apache.pdfbox.cos.COSBase;
 import org.apache.pdfbox.cos.COSDictionary;
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.pdmodel.PDDocument;
@@ -63,9 +62,8 @@ public class PDAnnotationPolyline extend
     public void setStartPointEndingStyle(String style)
     {
         String actualStyle = style == null ? PDAnnotationLine.LE_NONE : style;
-        COSBase base = getCOSObject().getDictionaryObject(COSName.LE);
-        COSArray array;
-        if (!(base instanceof COSArray) || ((COSArray) base).size() == 0)
+        COSArray array = getCOSObject().getCOSArray(COSName.LE);
+        if (array == null || array.size() == 0)
         {
             array = new COSArray();
             array.add(COSName.getPDFName(actualStyle));
@@ -74,7 +72,6 @@ public class PDAnnotationPolyline extend
         }
         else
         {
-            array = (COSArray) base;
             array.setName(0, actualStyle);
         }
     }
@@ -86,10 +83,10 @@ public class PDAnnotationPolyline extend
      */
     public String getStartPointEndingStyle()
     {
-        COSBase base = getCOSObject().getDictionaryObject(COSName.LE);
-        if (base instanceof COSArray && ((COSArray) base).size() >= 2)
+        COSArray array = getCOSObject().getCOSArray(COSName.LE);
+        if (array != null && array.size() >= 2)
         {
-            return ((COSArray) base).getName(0, PDAnnotationLine.LE_NONE);
+            return array.getName(0, PDAnnotationLine.LE_NONE);
         }
         return PDAnnotationLine.LE_NONE;
     }
@@ -102,9 +99,8 @@ public class PDAnnotationPolyline extend
     public void setEndPointEndingStyle(String style)
     {
         String actualStyle = style == null ? PDAnnotationLine.LE_NONE : style;
-        COSBase base = getCOSObject().getDictionaryObject(COSName.LE);
-        COSArray array;
-        if (!(base instanceof COSArray) || ((COSArray) base).size() < 2)
+        COSArray array = getCOSObject().getCOSArray(COSName.LE);
+        if (array == null || array.size() < 2)
         {
             array = new COSArray();
             array.add(COSName.getPDFName(PDAnnotationLine.LE_NONE));
@@ -113,7 +109,6 @@ public class PDAnnotationPolyline extend
         }
         else
         {
-            array = (COSArray) base;
             array.setName(1, actualStyle);
         }
     }
@@ -125,10 +120,10 @@ public class PDAnnotationPolyline extend
      */
     public String getEndPointEndingStyle()
     {
-        COSBase base = getCOSObject().getDictionaryObject(COSName.LE);
-        if (base instanceof COSArray && ((COSArray) base).size() >= 2)
+        COSArray array = getCOSObject().getCOSArray(COSName.LE);
+        if (array != null && array.size() >= 2)
         {
-            return ((COSArray) base).getName(1, PDAnnotationLine.LE_NONE);
+            return array.getName(1, PDAnnotationLine.LE_NONE);
         }
         return PDAnnotationLine.LE_NONE;
     }
@@ -161,12 +156,8 @@ public class PDAnnotationPolyline extend
      */
     public float[] getVertices()
     {
-        COSBase base = getCOSObject().getDictionaryObject(COSName.VERTICES);
-        if (base instanceof COSArray)
-        {
-            return ((COSArray) base).toFloatArray();
-        }
-        return null;
+        COSArray vertices = getCOSObject().getCOSArray(COSName.VERTICES);
+        return vertices != null ? vertices.toFloatArray() : null;
     }
 
     /**

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationTextMarkup.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationTextMarkup.java?rev=1887314&r1=1887313&r2=1887314&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationTextMarkup.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationTextMarkup.java Mon Mar  8 07:26:21 2021
@@ -18,7 +18,6 @@ package org.apache.pdfbox.pdmodel.intera
 
 import org.apache.pdfbox.cos.COSDictionary;
 import org.apache.pdfbox.cos.COSArray;
-import org.apache.pdfbox.cos.COSBase;
 import org.apache.pdfbox.cos.COSName;
 
 /**
@@ -71,12 +70,7 @@ public class PDAnnotationTextMarkup exte
      */
     public float[] getQuadPoints()
     {
-        COSBase base = getCOSObject().getDictionaryObject(COSName.QUADPOINTS);
-        if (base instanceof COSArray)
-        {
-            return ((COSArray) base).toFloatArray();
-        }
-        // Should never happen as this is a required item
-        return null; 
+        COSArray array = getCOSObject().getCOSArray(COSName.QUADPOINTS);
+        return array != null ? array.toFloatArray() : null;
     }
 }

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationWidget.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationWidget.java?rev=1887314&r1=1887313&r2=1887314&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationWidget.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationWidget.java Mon Mar  8 07:26:21 2021
@@ -16,7 +16,6 @@
  */
 package org.apache.pdfbox.pdmodel.interactive.annotation;
 
-import org.apache.pdfbox.cos.COSBase;
 import org.apache.pdfbox.cos.COSDictionary;
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.pdmodel.interactive.action.PDActionFactory;
@@ -77,7 +76,7 @@ public class PDAnnotationWidget extends
      */
     public String getHighlightingMode()
     {
-        return this.getCOSObject().getNameAsString(COSName.H, "I");
+        return getCOSObject().getNameAsString(COSName.H, "I");
     }
 
     /**
@@ -120,12 +119,8 @@ public class PDAnnotationWidget extends
      */
     public PDAppearanceCharacteristicsDictionary getAppearanceCharacteristics()
     {
-        COSBase mk = this.getCOSObject().getDictionaryObject(COSName.MK);
-        if (mk instanceof COSDictionary)
-        {
-            return new PDAppearanceCharacteristicsDictionary((COSDictionary) mk);
-        }
-        return null;
+        COSDictionary mk = getCOSObject().getCOSDictionary(COSName.MK);
+        return mk != null ? new PDAppearanceCharacteristicsDictionary(mk) : null;
     }
 
     /**
@@ -136,7 +131,7 @@ public class PDAnnotationWidget extends
     public void setAppearanceCharacteristics(
             PDAppearanceCharacteristicsDictionary appearanceCharacteristics)
     {
-        this.getCOSObject().setItem(COSName.MK, appearanceCharacteristics);
+        getCOSObject().setItem(COSName.MK, appearanceCharacteristics);
     }
 
     /**
@@ -146,12 +141,8 @@ public class PDAnnotationWidget extends
      */
     public PDAction getAction()
     {
-        COSBase base = this.getCOSObject().getDictionaryObject(COSName.A);
-        if (base instanceof COSDictionary)
-        {
-            return PDActionFactory.createAction((COSDictionary) base);
-        }
-        return null;
+        COSDictionary action = getCOSObject().getCOSDictionary(COSName.A);
+        return action != null ? PDActionFactory.createAction(action) : null;
     }
 
     /**
@@ -172,12 +163,8 @@ public class PDAnnotationWidget extends
      */
     public PDAnnotationAdditionalActions getActions()
     {
-        COSBase base = this.getCOSObject().getDictionaryObject(COSName.AA);
-        if (base instanceof COSDictionary)
-        {
-            return new PDAnnotationAdditionalActions((COSDictionary) base);
-        }
-        return null;
+        COSDictionary actions = getCOSObject().getCOSDictionary(COSName.AA);
+        return actions != null ? new PDAnnotationAdditionalActions(actions) : null;
     }
 
     /**
@@ -198,7 +185,7 @@ public class PDAnnotationWidget extends
      */
     public void setBorderStyle(PDBorderStyleDictionary bs)
     {
-        this.getCOSObject().setItem(COSName.BS, bs);
+        getCOSObject().setItem(COSName.BS, bs);
     }
 
     /**
@@ -208,12 +195,8 @@ public class PDAnnotationWidget extends
      */
     public PDBorderStyleDictionary getBorderStyle()
     {
-        COSBase bs = getCOSObject().getDictionaryObject(COSName.BS);
-        if (bs instanceof COSDictionary)
-        {
-            return new PDBorderStyleDictionary((COSDictionary) bs);
-        }
-        return null;
+        COSDictionary bs = getCOSObject().getCOSDictionary(COSName.BS);
+        return bs != null ? new PDBorderStyleDictionary(bs) : null;
     }
 
     // TODO where to get acroForm from?
@@ -240,10 +223,10 @@ public class PDAnnotationWidget extends
      */
     public void setParent(PDTerminalField field)
     {
-        if (this.getCOSObject().equals(field.getCOSObject()))
+        if (getCOSObject().equals(field.getCOSObject()))
         {
             throw new IllegalArgumentException("setParent() is not to be called for a field that shares a dictionary with its only widget");
         }
-        this.getCOSObject().setItem(COSName.PARENT, field);
+        getCOSObject().setItem(COSName.PARENT, field);
     }
 }