You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2021/04/15 18:46:52 UTC

svn commit: r1888800 - /pdfbox/branches/1.8/jempbox/src/main/java/org/apache/jempbox/xmp/XMPSchema.java

Author: tilman
Date: Thu Apr 15 18:46:52 2021
New Revision: 1888800

URL: http://svn.apache.org/viewvc?rev=1888800&view=rev
Log:
PDFBOX-5165: cache nodeList length because it's very slow

Modified:
    pdfbox/branches/1.8/jempbox/src/main/java/org/apache/jempbox/xmp/XMPSchema.java

Modified: pdfbox/branches/1.8/jempbox/src/main/java/org/apache/jempbox/xmp/XMPSchema.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/1.8/jempbox/src/main/java/org/apache/jempbox/xmp/XMPSchema.java?rev=1888800&r1=1888799&r2=1888800&view=diff
==============================================================================
--- pdfbox/branches/1.8/jempbox/src/main/java/org/apache/jempbox/xmp/XMPSchema.java (original)
+++ pdfbox/branches/1.8/jempbox/src/main/java/org/apache/jempbox/xmp/XMPSchema.java Thu Apr 15 18:46:52 2021
@@ -426,7 +426,8 @@ public class XMPSchema
                 Element bag = (Element) bagList.item(0);
                 retval = new ArrayList<String>();
                 NodeList items = bag.getElementsByTagName("rdf:li");
-                for (int i = 0; i < items.getLength(); i++)
+                int len = items.getLength(); // slow
+                for (int i = 0; i < len; i++)
                 {
                     Element li = (Element) items.item(i);
                     retval.add(XMLUtil.getStringValue(li));
@@ -606,7 +607,8 @@ public class XMPSchema
                 Element bag = (Element) bagList.item(0);
                 retval = new ArrayList<String>();
                 NodeList items = bag.getElementsByTagName("rdf:li");
-                for (int i = 0; i < items.getLength(); i++)
+                int len = items.getLength(); // slow
+                for (int i = 0; i < len; i++)
                 {
                     Element li = (Element) items.item(i);
                     retval.add(XMLUtil.getStringValue(li));
@@ -638,7 +640,8 @@ public class XMPSchema
                 Element bag = (Element) bagList.item(0);
                 retval = new ArrayList<ResourceEvent>();
                 NodeList items = bag.getElementsByTagName("rdf:li");
-                for (int i = 0; i < items.getLength(); i++)
+                int len = items.getLength(); // slow
+                for (int i = 0; i < len; i++)
                 {
                     Element li = (Element) items.item(i);
                     retval.add(new ResourceEvent(li));