Author: tilman
Date: Wed Sep 3 19:43:39 2025
New Revision: 1928218
Log:
PDFBOX-6059: avoid ClassCastException
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDLab.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDOutputIntent.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShading.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType1.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType2.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDTriangleBasedShadingType.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDSoftMask.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDAdditionalActions.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDAnnotationAdditionalActions.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDFormFieldAdditionalActions.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDPageAdditionalActions.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotation.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationLine.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationMarkup.java
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationSquareCircle.java
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -501,7 +501,7 @@ public final class PDICCBased extends PD
*/
public PDRange getRangeForComponent(int n)
{
- COSArray rangeArray = (COSArray)
stream.getCOSObject().getDictionaryObject(COSName.RANGE);
+ COSArray rangeArray = stream.getCOSObject().getCOSArray(COSName.RANGE);
if (rangeArray == null || rangeArray.size() < getNumberOfComponents()
* 2)
{
return new PDRange(); // 0..1
@@ -515,7 +515,7 @@ public final class PDICCBased extends PD
*/
public COSStream getMetadata()
{
- return
(COSStream)stream.getCOSObject().getDictionaryObject(COSName.METADATA);
+ return stream.getCOSObject().getCOSStream(COSName.METADATA);
}
/**
@@ -583,7 +583,7 @@ public final class PDICCBased extends PD
*/
public void setRangeForComponent(PDRange range, int n)
{
- COSArray rangeArray = (COSArray)
stream.getCOSObject().getDictionaryObject(COSName.RANGE);
+ COSArray rangeArray = stream.getCOSObject().getCOSArray(COSName.RANGE);
if (rangeArray == null)
{
rangeArray = new COSArray();
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDLab.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDLab.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDLab.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -198,7 +198,7 @@ public final class PDLab extends PDCIEDi
*/
public PDRange getARange()
{
- COSArray rangeArray = (COSArray)
dictionary.getDictionaryObject(COSName.RANGE);
+ COSArray rangeArray = dictionary.getCOSArray(COSName.RANGE);
if (rangeArray == null)
{
rangeArray = getDefaultRangeArray();
@@ -213,7 +213,7 @@ public final class PDLab extends PDCIEDi
*/
public PDRange getBRange()
{
- COSArray rangeArray = (COSArray)
dictionary.getDictionaryObject(COSName.RANGE);
+ COSArray rangeArray = dictionary.getCOSArray(COSName.RANGE);
if (rangeArray == null)
{
rangeArray = getDefaultRangeArray();
@@ -243,7 +243,7 @@ public final class PDLab extends PDCIEDi
private void setComponentRangeArray(PDRange range, int index)
{
- COSArray rangeArray = (COSArray)
dictionary.getDictionaryObject(COSName.RANGE);
+ COSArray rangeArray = dictionary.getCOSArray(COSName.RANGE);
if (rangeArray == null)
{
rangeArray = getDefaultRangeArray();
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDOutputIntent.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDOutputIntent.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDOutputIntent.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -63,7 +63,7 @@ public final class PDOutputIntent implem
public COSStream getDestOutputIntent()
{
- return (COSStream)
dictionary.getDictionaryObject(COSName.DEST_OUTPUT_PROFILE);
+ return dictionary.getCOSStream(COSName.DEST_OUTPUT_PROFILE);
}
public String getInfo()
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -201,7 +201,7 @@ public class PDFormXObject extends PDXOb
public PDRectangle getBBox()
{
PDRectangle retval = null;
- COSArray array = (COSArray)
getCOSObject().getDictionaryObject(COSName.BBOX);
+ COSArray array = getCOSObject().getCOSArray(COSName.BBOX);
if (array != null)
{
retval = new PDRectangle(array);
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShading.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShading.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShading.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -154,7 +154,7 @@ public abstract class PDShading implemen
{
if (background == null)
{
- background = (COSArray)
dictionary.getDictionaryObject(COSName.BACKGROUND);
+ background = dictionary.getCOSArray(COSName.BACKGROUND);
}
return background;
}
@@ -170,7 +170,7 @@ public abstract class PDShading implemen
{
if (bBox == null)
{
- COSArray array = (COSArray)
dictionary.getDictionaryObject(COSName.BBOX);
+ COSArray array = dictionary.getCOSArray(COSName.BBOX);
if (array != null)
{
bBox = new PDRectangle(array);
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType1.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType1.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType1.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -84,7 +84,7 @@ public class PDShadingType1 extends PDSh
{
if (domain == null)
{
- domain = (COSArray)
getCOSObject().getDictionaryObject(COSName.DOMAIN);
+ domain = getCOSObject().getCOSArray(COSName.DOMAIN);
}
return domain;
}
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType2.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType2.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDShadingType2.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -57,7 +57,7 @@ public class PDShadingType2 extends PDSh
{
if (extend == null)
{
- extend = (COSArray)
getCOSObject().getDictionaryObject(COSName.EXTEND);
+ extend = getCOSObject().getCOSArray(COSName.EXTEND);
}
return extend;
}
@@ -82,7 +82,7 @@ public class PDShadingType2 extends PDSh
{
if (domain == null)
{
- domain = (COSArray)
getCOSObject().getDictionaryObject(COSName.DOMAIN);
+ domain = getCOSObject().getCOSArray(COSName.DOMAIN);
}
return domain;
}
@@ -107,7 +107,7 @@ public class PDShadingType2 extends PDSh
{
if (coords == null)
{
- coords = (COSArray)
getCOSObject().getDictionaryObject(COSName.COORDS);
+ coords = getCOSObject().getCOSArray(COSName.COORDS);
}
return coords;
}
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDTriangleBasedShadingType.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDTriangleBasedShadingType.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/shading/PDTriangleBasedShadingType.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -130,7 +130,7 @@ abstract class PDTriangleBasedShadingTyp
{
if (decode == null)
{
- decode = (COSArray)
getCOSObject().getDictionaryObject(COSName.DECODE);
+ decode = getCOSObject().getCOSArray(COSName.DECODE);
}
return decode;
}
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDSoftMask.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDSoftMask.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/state/PDSoftMask.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -131,7 +131,7 @@ public final class PDSoftMask implements
{
if (subType == null)
{
- subType = (COSName) getCOSObject().getDictionaryObject(COSName.S);
+ subType = getCOSObject().getCOSName(COSName.S);
}
return subType;
}
@@ -167,7 +167,7 @@ public final class PDSoftMask implements
{
if (backdropColor == null)
{
- backdropColor = (COSArray)
getCOSObject().getDictionaryObject(COSName.BC);
+ backdropColor = getCOSObject().getCOSArray(COSName.BC);
}
return backdropColor;
}
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDAdditionalActions.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDAdditionalActions.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDAdditionalActions.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -65,7 +65,7 @@ public class PDAdditionalActions impleme
*/
public PDAction getF()
{
- return PDActionFactory.createAction(
(COSDictionary)actions.getDictionaryObject(COSName.F ) );
+ return
PDActionFactory.createAction(actions.getCOSDictionary(COSName.F));
}
/**
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDAnnotationAdditionalActions.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDAnnotationAdditionalActions.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDAnnotationAdditionalActions.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -125,7 +125,7 @@ public class PDAnnotationAdditionalActio
*/
public PDAction getD()
{
- COSDictionary d = (COSDictionary)actions.getDictionaryObject(
COSName.D );
+ COSDictionary d = actions.getCOSDictionary(COSName.D );
PDAction retval = null;
if( d != null )
{
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDFormFieldAdditionalActions.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDFormFieldAdditionalActions.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDFormFieldAdditionalActions.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -70,7 +70,7 @@ public class PDFormFieldAdditionalAction
*/
public PDAction getK()
{
- COSDictionary k = (COSDictionary)
actions.getDictionaryObject(COSName.K);
+ COSDictionary k = actions.getCOSDictionary(COSName.K);
PDAction retval = null;
if( k != null )
{
@@ -101,7 +101,7 @@ public class PDFormFieldAdditionalAction
*/
public PDAction getF()
{
- COSDictionary f = (COSDictionary)
actions.getDictionaryObject(COSName.F);
+ COSDictionary f = actions.getCOSDictionary(COSName.F);
PDAction retval = null;
if( f != null )
{
@@ -132,7 +132,7 @@ public class PDFormFieldAdditionalAction
*/
public PDAction getV()
{
- COSDictionary v = (COSDictionary)
actions.getDictionaryObject(COSName.V);
+ COSDictionary v = actions.getCOSDictionary(COSName.V);
PDAction retval = null;
if( v != null )
{
@@ -165,7 +165,7 @@ public class PDFormFieldAdditionalAction
*/
public PDAction getC()
{
- COSDictionary c = (COSDictionary)
actions.getDictionaryObject(COSName.C);
+ COSDictionary c = actions.getCOSDictionary(COSName.C);
PDAction retval = null;
if( c != null )
{
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDPageAdditionalActions.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDPageAdditionalActions.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/action/PDPageAdditionalActions.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -70,7 +70,7 @@ public class PDPageAdditionalActions imp
*/
public PDAction getO()
{
- COSDictionary o = (COSDictionary)
actions.getDictionaryObject(COSName.O);
+ COSDictionary o = actions.getCOSDictionary(COSName.O);
PDAction retval = null;
if( o != null )
{
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotation.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotation.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotation.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -241,7 +241,7 @@ public abstract class PDAnnotation imple
*/
public PDRectangle getRectangle()
{
- COSArray rectArray = (COSArray)
dictionary.getDictionaryObject(COSName.RECT);
+ COSArray rectArray = dictionary.getCOSArray(COSName.RECT);
PDRectangle rectangle = null;
if (rectArray != null)
{
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationLine.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationLine.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationLine.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -147,7 +147,7 @@ public class PDAnnotationLine extends PD
*/
public float[] getLine()
{
- COSArray l = (COSArray) getCOSObject().getDictionaryObject(COSName.L);
+ COSArray l = getCOSObject().getCOSArray(COSName.L);
return l.toFloatArray();
}
@@ -391,7 +391,7 @@ public class PDAnnotationLine extends PD
*/
public void setCaptionHorizontalOffset(float offset)
{
- COSArray array = (COSArray)
this.getCOSObject().getDictionaryObject(COSName.CO);
+ COSArray array = this.getCOSObject().getCOSArray(COSName.CO);
if (array == null)
{
array = new COSArray();
@@ -412,7 +412,7 @@ public class PDAnnotationLine extends PD
public float getCaptionHorizontalOffset()
{
float retval = 0.f;
- COSArray array = (COSArray)
this.getCOSObject().getDictionaryObject(COSName.CO);
+ COSArray array = this.getCOSObject().getCOSArray(COSName.CO);
if (array != null)
{
retval = array.toFloatArray()[0];
@@ -428,7 +428,7 @@ public class PDAnnotationLine extends PD
*/
public void setCaptionVerticalOffset(float offset)
{
- COSArray array = (COSArray)
this.getCOSObject().getDictionaryObject(COSName.CO);
+ COSArray array = this.getCOSObject().getCOSArray(COSName.CO);
if (array == null)
{
array = new COSArray();
@@ -449,7 +449,7 @@ public class PDAnnotationLine extends PD
public float getCaptionVerticalOffset()
{
float retval = 0.f;
- COSArray array = (COSArray)
this.getCOSObject().getDictionaryObject(COSName.CO);
+ COSArray array = this.getCOSObject().getCOSArray(COSName.CO);
if (array != null)
{
retval = array.toFloatArray()[1];
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationMarkup.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationMarkup.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationMarkup.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -156,7 +156,7 @@ public class PDAnnotationMarkup extends
*/
public PDAnnotationPopup getPopup()
{
- COSDictionary popup = (COSDictionary)
getCOSObject().getDictionaryObject(COSName.POPUP);
+ COSDictionary popup = getCOSObject().getCOSDictionary(COSName.POPUP);
if (popup != null)
{
return new PDAnnotationPopup(popup);
@@ -457,7 +457,7 @@ public class PDAnnotationMarkup extends
*/
public PDBorderEffectDictionary getBorderEffect()
{
- COSDictionary be = (COSDictionary)
getCOSObject().getDictionaryObject(COSName.BE);
+ COSDictionary be = getCOSObject().getCOSDictionary(COSName.BE);
if (be != null)
{
return new PDBorderEffectDictionary(be);
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationSquareCircle.java
==============================================================================
---
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationSquareCircle.java
Wed Sep 3 18:49:56 2025 (r1928217)
+++
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/PDAnnotationSquareCircle.java
Wed Sep 3 19:43:39 2025 (r1928218)
@@ -106,7 +106,7 @@ public class PDAnnotationSquareCircle ex
*/
public PDBorderEffectDictionary getBorderEffect()
{
- COSDictionary be = (COSDictionary)
getCOSObject().getDictionaryObject(COSName.BE);
+ COSDictionary be = getCOSObject().getCOSDictionary(COSName.BE);
if (be != null)
{
return new PDBorderEffectDictionary(be);
@@ -137,7 +137,7 @@ public class PDAnnotationSquareCircle ex
*/
public PDRectangle getRectDifference()
{
- COSArray rd = (COSArray)
getCOSObject().getDictionaryObject(COSName.RD);
+ COSArray rd = getCOSObject().getCOSArray(COSName.RD);
if (rd != null)
{
return new PDRectangle(rd);