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 2014/08/30 18:03:41 UTC
svn commit: r1621477 - in /pdfbox/branches/1.8:
examples/src/main/java/org/apache/pdfbox/examples/fdf/PrintFields.java
pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDField.java
Author: lehmi
Date: Sat Aug 30 16:03:41 2014
New Revision: 1621477
URL: http://svn.apache.org/r1621477
Log:
PDFBOX-2270: optimized handling of null values
Modified:
pdfbox/branches/1.8/examples/src/main/java/org/apache/pdfbox/examples/fdf/PrintFields.java
pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDField.java
Modified: pdfbox/branches/1.8/examples/src/main/java/org/apache/pdfbox/examples/fdf/PrintFields.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/1.8/examples/src/main/java/org/apache/pdfbox/examples/fdf/PrintFields.java?rev=1621477&r1=1621476&r2=1621477&view=diff
==============================================================================
--- pdfbox/branches/1.8/examples/src/main/java/org/apache/pdfbox/examples/fdf/PrintFields.java (original)
+++ pdfbox/branches/1.8/examples/src/main/java/org/apache/pdfbox/examples/fdf/PrintFields.java Sat Aug 30 16:03:41 2014
@@ -63,15 +63,18 @@ public class PrintFields
private void processField(PDField field, String sLevel, String sParent) throws IOException
{
List<COSObjectable> kids = field.getKids();
+ String partialName = field.getPartialName();
if (kids != null)
{
Iterator<COSObjectable> kidsIter = kids.iterator();
- if (!sParent.equals(field.getPartialName()))
+ if (!sParent.equals(partialName))
{
- sParent = sParent + "." + field.getPartialName();
+ if (partialName != null)
+ {
+ sParent = sParent + "." + partialName;
+ }
}
System.out.println(sLevel + sParent);
- // System.out.println(sParent + " is of type " + field.getClass().getName());
while (kidsIter.hasNext())
{
Object pdfObj = kidsIter.next();
@@ -92,10 +95,22 @@ public class PrintFields
}
else
{
- fieldValue = field.getValue();
+ if (field.getValue() != null)
+ {
+ fieldValue = field.getValue();
+ }
+ else
+ {
+ fieldValue = "no value available";
+ }
+ }
+ StringBuilder outputString = new StringBuilder(sLevel + sParent);
+ if (partialName != null)
+ {
+ outputString.append( "." + partialName);
}
- String outputString = sLevel + sParent + "." + field.getPartialName() + " = " + fieldValue + ", type="
- + field.getClass().getName();
+ outputString.append(" = " + fieldValue);
+ outputString.append(", type=" + field.getClass().getName());
System.out.println(outputString);
}
}
Modified: pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDField.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDField.java?rev=1621477&r1=1621476&r2=1621477&view=diff
==============================================================================
--- pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDField.java (original)
+++ pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDField.java Sat Aug 30 16:03:41 2014
@@ -120,7 +120,14 @@ public abstract class PDField implements
String finalName = getPartialName();
if (parentName != null)
{
- finalName = parentName + "." + finalName;
+ if (finalName != null)
+ {
+ finalName = parentName + "." + finalName;
+ }
+ else
+ {
+ finalName = parentName;
+ }
}
return finalName;
}