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 2015/05/14 08:06:51 UTC

svn commit: r1679315 - /pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDJavascriptNameTreeNode.java

Author: tilman
Date: Thu May 14 06:06:51 2015
New Revision: 1679315

URL: http://svn.apache.org/r1679315
Log:
PDFBOX-2798: create a PDActionJavaScript and not a text stream

Modified:
    pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDJavascriptNameTreeNode.java

Modified: pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDJavascriptNameTreeNode.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDJavascriptNameTreeNode.java?rev=1679315&r1=1679314&r2=1679315&view=diff
==============================================================================
--- pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDJavascriptNameTreeNode.java (original)
+++ pdfbox/branches/1.8/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDJavascriptNameTreeNode.java Thu May 14 06:06:51 2015
@@ -20,11 +20,11 @@ import java.io.IOException;
 
 import org.apache.pdfbox.cos.COSBase;
 import org.apache.pdfbox.cos.COSDictionary;
-import org.apache.pdfbox.cos.COSStream;
-import org.apache.pdfbox.cos.COSString;
 import org.apache.pdfbox.pdmodel.common.COSObjectable;
 import org.apache.pdfbox.pdmodel.common.PDNameTreeNode;
 import org.apache.pdfbox.pdmodel.common.PDTextStream;
+import org.apache.pdfbox.pdmodel.interactive.action.PDActionFactory;
+import org.apache.pdfbox.pdmodel.interactive.action.type.PDActionJavaScript;
 
 /**
  * This class holds all of the name trees that are available at the document level.
@@ -57,21 +57,11 @@ public class PDJavascriptNameTreeNode ex
      */
     protected COSObjectable convertCOSToPD( COSBase base ) throws IOException
     {
-        PDTextStream stream = null;
-        if( base instanceof COSString )
+        if (!(base instanceof COSDictionary))
         {
-            stream = new PDTextStream((COSString)base);
+            throw new IOException( "Error creating Javascript object, expected a COSDictionary and not " + base);
         }
-        else if( base instanceof COSStream )
-        {
-            stream = new PDTextStream((COSStream)base);
-        }
-        else
-        {
-            throw new IOException( "Error creating Javascript object, expected either COSString or COSStream and not " 
-                    + base );
-        }
-        return stream;
+        return (PDActionJavaScript)PDActionFactory.createAction((COSDictionary) base);
     }
 
     /**