icegem-core/src/main/java/com/googlecode/icegem/utils/JavaProcessLauncher.java
public Process runWithConfirmation(String id, Class<?> klass,
			String[] javaArguments, String[] processArguments)
			throws IOException, InterruptedException {
		Process process = startProcess(id, klass, javaArguments, processArguments,
				true);

		waitConfirmation(klass.getSimpleName(), process);

		new StreamRedirector(process.getInputStream(), klass.getSimpleName()
				+ PROCESS_STDOUT_STREAM_PREFIX,
				redirectProcessInputStreamToParentProcessStdOut).start();

		return process;
	}
public Process runWithConfirmation(String id, Class<?> klass,
			String[] javaArguments, String[] processArguments)
			throws IOException, InterruptedException {
		Process process = startProcess(id, klass, javaArguments, processArguments,
				true);

		waitConfirmation(klass.getSimpleName(), process);

		new StreamRedirector(process.getInputStream(), klass.getSimpleName()
				+ PROCESS_STDOUT_STREAM_PREFIX,
				redirectProcessInputStreamToParentProcessStdOut).start();

		return process;
	}
public Process runWithConfirmation ( String id , Class < ? > klass , String [ ] javaArguments , String [ ] processArguments ) throws IOException , InterruptedException { Process process = startProcess ( id , klass , javaArguments , processArguments , true ) ; waitConfirmation ( klass . getSimpleName ( ) , process ) ; new StreamRedirector ( process . getInputStream ( ) , klass . getSimpleName ( ) + PROCESS_STDOUT_STREAM_PREFIX , redirectProcessInputStreamToParentProcessStdOut ) . start ( ) ; return process ; }
Runs process based on a specified class in a separate VM using array of
arguments. To confirm that process completes startup it should write a
startup completed string into it's standard output.

@param id
the process identifier.
@param klass
of type Class.
@param javaArguments
arguments for java.
@param processArguments
arguments for process.

@return Process the started process.
@throws IOException
when
@throws InterruptedException
when
Runs process based on a specified class in a separate VM using array of arguments . To confirm that process completes startup it should write a startup completed string into it s standard output .