test/java/rmi/testlibrary/JavaVM.java

Print this page
rev 9005 : 8007256: RMI testlibrary cleanup: remove JavaVMCallbackHandler
Reviewed-by: XXX

@@ -57,13 +57,10 @@
                 File.separator + "bin" + File.separator + javaProgram;
         } catch (SecurityException se) {
         }
     }
 
-    public JavaVM(String classname) {
-        this.classname = classname;
-    }
     public JavaVM(String classname,
                   String options, String args) {
         this.classname = classname;
         this.options = options;
         this.args = args;

@@ -108,19 +105,10 @@
      */
     protected static String getCodeCoverageOptions() {
         return TestLibrary.getExtraProperty("jcov.options","");
     }
 
-    public void start(Runnable runnable) throws IOException {
-        if (runnable == null) {
-            throw new NullPointerException("Runnable cannot be null.");
-        }
-
-        start();
-        new JavaVMCallbackHandler(runnable).start();
-    }
-
     /**
      * Exec the VM as specified in this object's constructor.
      */
     public void start() throws IOException {
 

@@ -174,11 +162,11 @@
      * Waits for the subprocess to exit, joins the pipe threads to ensure that
      * all output is collected, and returns its exit status.
      */
     public int waitFor() throws InterruptedException {
         if (vm == null)
-            throw new IllegalStateException("can't wait for JavaVM that hasn't started");
+            throw new IllegalStateException("can't wait for JavaVM that isn't running");
 
         int status = vm.waitFor();
         outPipe.join();
         errPipe.join();
         return status;

@@ -189,37 +177,6 @@
      */
     public int execute() throws IOException, InterruptedException {
         start();
         return waitFor();
     }
-
-    /**
-     * Handles calling the callback.
-     */
-    private class JavaVMCallbackHandler extends Thread {
-        Runnable runnable;
-
-        JavaVMCallbackHandler(Runnable runnable) {
-            this.runnable = runnable;
-        }
-
-
-        /**
-         * Wait for the Process to terminate and notify the callback.
-         */
-        @Override
-        public void run() {
-            if (vm != null) {
-                try {
-                    vm.waitFor();
-                } catch(InterruptedException ie) {
-                    // Restore the interrupted status
-                    Thread.currentThread().interrupt();
-                }
-            }
-
-            if (runnable != null) {
-                runnable.run();
-            }
-        }
-    }
 }