Author: tilman Date: Sun Sep 14 15:34:17 2025 New Revision: 1928468 Log: PDFBOX-5660: refactor
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/logicalstructure/PDStructureElement.java Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/logicalstructure/PDStructureElement.java ============================================================================== --- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/logicalstructure/PDStructureElement.java Sun Sep 14 14:40:00 2025 (r1928467) +++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/logicalstructure/PDStructureElement.java Sun Sep 14 15:34:17 2025 (r1928468) @@ -18,7 +18,6 @@ package org.apache.pdfbox.pdmodel.docume import java.util.Arrays; import java.util.Collections; -import java.util.Iterator; import java.util.Map; import org.apache.pdfbox.cos.COSArray; @@ -164,16 +163,11 @@ public class PDStructureElement extends COSBase a = this.getCOSObject().getDictionaryObject(COSName.A); if (a instanceof COSArray) { - COSArray aa = (COSArray) a; - Iterator<COSBase> it = aa.iterator(); + COSArray array = (COSArray) a; PDAttributeObject ao = null; - while (it.hasNext()) + for (int i = 0; i < array.size(); ++i) { - COSBase item = it.next(); - if (item instanceof COSObject) - { - item = ((COSObject) item).getObject(); - } + COSBase item = array.getObject(i); if (item instanceof COSDictionary) { ao = PDAttributeObject.create((COSDictionary) item); @@ -182,6 +176,8 @@ public class PDStructureElement extends } else if (item instanceof COSInteger) { + // Read "14.7.5.3 Attribute Revision Numbers" + // This is additional to the /R entry attributes.setRevisionNumber(ao, ((COSNumber) item).intValue()); } } @@ -337,15 +333,10 @@ public class PDStructureElement extends if (c instanceof COSArray) { COSArray array = (COSArray) c; - Iterator<COSBase> it = array.iterator(); String className = null; - while (it.hasNext()) + for (int i = 0; i < array.size(); ++i) { - COSBase item = it.next(); - if (item instanceof COSObject) - { - item = ((COSObject) item).getObject(); - } + COSBase item = array.getObject(i); if (item instanceof COSName) { className = ((COSName) item).getName(); @@ -353,6 +344,8 @@ public class PDStructureElement extends } else if (item instanceof COSInteger) { + // Read "14.7.5.3 Attribute Revision Numbers" + // This is additional to the /R entry classNames.setRevisionNumber(className, ((COSNumber) item).intValue()); } }