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);
}
}