Bug 564971: [Platform] runProcess() should consume output streams

  added new parameters to automatically consume streams

Change-Id: I49a3f8a70229c39f0ce9a696b34dd5a9f85463f3
diff --git a/plugins/org.eclipse.ease.modules.platform/src/org/eclipse/ease/modules/platform/PlatformModule.java b/plugins/org.eclipse.ease.modules.platform/src/org/eclipse/ease/modules/platform/PlatformModule.java
index 3545c64..0dc1f70 100644
--- a/plugins/org.eclipse.ease.modules.platform/src/org/eclipse/ease/modules/platform/PlatformModule.java
+++ b/plugins/org.eclipse.ease.modules.platform/src/org/eclipse/ease/modules/platform/PlatformModule.java
@@ -1,6 +1,8 @@
 package org.eclipse.ease.modules.platform;
 
+import java.io.File;
 import java.io.IOException;
+import java.lang.ProcessBuilder.Redirect;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -119,13 +121,29 @@
 
 	/**
 	 * Run an external process. The process is started in the background and a {@link Process} object is returned. Query the result for finished state, output
-	 * and error streams of the executed process.
+	 * and error streams of the executed process. Output and error streams need to be consumed, otherwise the running process may stall (or even die) in case
+	 * that the buffers are full. Setting parameters <i>output</i> and <i>error</i> to <code>null</code> will automatically discard the produced data.
 	 *
 	 * @param name
 	 *            program to run (with full path if necessary)
 	 * @param args
 	 *            program arguments
 	 * @return process object to track process execution
+	 * @param output
+	 *            output file location to redirect output to.
+	 *            <ul>
+	 *            <li>"system.out": use the default output of the application</li>
+	 *            <li>"keep": do nothing, let the script deal with it</li>
+	 *            <li>any other: absolute file location to redirect to</li>
+	 *            </ul>
+	 * @param error
+	 *            error stream to redirect output to.
+	 *            <ul>
+	 *            <li>"system.err": use the default output of the application</li>
+	 *            <li>"keep": do nothing, let the script deal with it</li>
+	 *            <li>any other: absolute file location to redirect to</li>
+	 *            </ul>
+	 * @return process object to track process execution
 	 * @throws IOException
 	 *             if an I/O error occurs
 	 */