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 2010/06/27 15:39:07 UTC

svn commit: r958387 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/PDFBox.java

Author: lehmi
Date: Sun Jun 27 13:39:07 2010
New Revision: 958387

URL: http://svn.apache.org/viewvc?rev=958387&view=rev
Log:
PDFBOX-762: don't shutdown the jvm when starting the PDFReader or the PDFDebugger

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/PDFBox.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/PDFBox.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/PDFBox.java?rev=958387&r1=958386&r2=958387&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/PDFBox.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/PDFBox.java Sun Jun 27 13:39:07 2010
@@ -29,7 +29,7 @@ public class PDFBox {
             String command = args[0];
             String[] arguments = new String[args.length - 1];
             System.arraycopy(args, 1, arguments, 0, arguments.length);
-
+            boolean exitAfterCallingMain = true;
             try {
                 if (command.equals("ConvertColorspace")) {
                     ConvertColorspace.main(arguments);
@@ -45,12 +45,12 @@ public class PDFBox {
                     PrintPDF.main(arguments);
                 } else if (command.equals("PDFDebugger")) {
                     PDFDebugger.main(arguments);
+                    exitAfterCallingMain = false;
                 } else if (command.equals("PDFMerger")) {
                     PDFMerger.main(arguments);
                 } else if (command.equals("PDFReader")) {
                     PDFReader.main(arguments);
-                } else if (command.equals("PDFReader")) {
-                    PDFReader.main(arguments);
+                    exitAfterCallingMain = false;
                 } else if (command.equals("PDFSplit")) {
                     PDFSplit.main(arguments);
                 } else if (command.equals("PDFToImage")) {
@@ -58,7 +58,12 @@ public class PDFBox {
                 } else if (command.equals("TextToPDF")) {
                     TextToPDF.main(arguments);
                 }
-                System.exit(0);
+                else {
+                    showMessageAndExit();
+                }
+                if (exitAfterCallingMain) {
+                    System.exit(0);
+                }
             } catch (Exception e) {
                 System.err.println(
                         command + " failed with the following exception:");
@@ -66,10 +71,14 @@ public class PDFBox {
                 System.exit(1);
             }
         }
+        else {
+            showMessageAndExit();
+        }
+    }
 
+    private static void showMessageAndExit() {
         System.err.println(
-            "usage: java pdfbox-app-x.y.z.jar <command> <args..>");
+                "usage: java pdfbox-app-x.y.z.jar <command> <args..>");
         System.exit(1);
     }
-
 }