|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.Process
com.tc.lcp.LinkedJavaProcess
public class LinkedJavaProcess
A child Java process that uses a socket-based ping protocol to make sure that if the parent dies, the child dies a short time thereafter. Useful for avoiding 'zombie child processes' when writing tests, etc. — otherwise, if the parent process crashes or otherwise terminates abnormally, you'll get child processes accumulating until all hell breaks loose on the box.
Although it can't actually be related through Java inheritance (because
Process
is a class, not an interface), this class behaves essentially
identical to Process
with two differences:
Runtime.exec(java.lang.String)
.start()
.
Constructor Summary | |
---|---|
LinkedJavaProcess(java.lang.String mainClassName)
|
|
LinkedJavaProcess(java.lang.String mainClassName,
java.util.List<java.lang.String> classArguments)
|
|
LinkedJavaProcess(java.lang.String mainClassName,
java.util.List<java.lang.String> classArguments,
java.util.List<java.lang.String> jvmArgs)
|
Method Summary | |
---|---|
void |
addAllJvmArgs(java.util.List<java.lang.String> jvmArgs)
|
void |
addJvmArg(java.lang.String jvmArg)
|
void |
destroy()
|
int |
exitValue()
|
java.lang.String[] |
getCommand()
|
java.io.InputStream |
getErrorStream()
This is the spawned process's stderr. |
java.io.InputStream |
getInputStream()
Java names these things a bit funny — this is the spawned process's stdout. |
java.io.File |
getJavaHome()
|
long |
getMaxRuntime()
|
java.io.OutputStream |
getOutputStream()
Java names these things a bit funny — this is the spawned process's stdin. |
void |
mergeSTDERR()
|
void |
mergeSTDERR(java.lang.String identifier)
|
void |
mergeSTDOUT()
|
void |
mergeSTDOUT(java.lang.String identifier)
|
void |
setAddL1Repos(boolean flag)
|
void |
setClasspath(java.lang.String classpath)
|
void |
setDirectory(java.io.File directory)
|
void |
setEnvironment(java.util.List<java.lang.String> environment)
|
void |
setJavaExecutable(java.io.File javaExecutable)
|
void |
setJavaHome(java.io.File javaHome)
|
void |
setMaxRuntime(long maxRuntime)
|
void |
start()
|
java.io.InputStream |
STDERR()
|
java.io.OutputStream |
STDIN()
|
java.io.InputStream |
STDOUT()
|
int |
waitFor()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public LinkedJavaProcess(java.lang.String mainClassName, java.util.List<java.lang.String> classArguments, java.util.List<java.lang.String> jvmArgs)
public LinkedJavaProcess(java.lang.String mainClassName)
public LinkedJavaProcess(java.lang.String mainClassName, java.util.List<java.lang.String> classArguments)
Method Detail |
---|
public void setMaxRuntime(long maxRuntime)
public long getMaxRuntime()
public void setClasspath(java.lang.String classpath)
public java.io.File getJavaHome()
public void setJavaHome(java.io.File javaHome)
public void setJavaExecutable(java.io.File javaExecutable)
public void addAllJvmArgs(java.util.List<java.lang.String> jvmArgs)
public void addJvmArg(java.lang.String jvmArg)
public void setEnvironment(java.util.List<java.lang.String> environment)
public void setDirectory(java.io.File directory)
public void setAddL1Repos(boolean flag)
public void destroy()
destroy
in class java.lang.Process
public void start() throws java.io.IOException
java.io.IOException
public java.io.InputStream getInputStream()
getInputStream
in class java.lang.Process
public java.lang.String[] getCommand()
public java.io.InputStream STDOUT()
public java.io.OutputStream STDIN()
public java.io.InputStream STDERR()
public void mergeSTDOUT()
public void mergeSTDOUT(java.lang.String identifier)
public void mergeSTDERR()
public void mergeSTDERR(java.lang.String identifier)
public java.io.InputStream getErrorStream()
getErrorStream
in class java.lang.Process
public java.io.OutputStream getOutputStream()
getOutputStream
in class java.lang.Process
public int exitValue()
exitValue
in class java.lang.Process
public int waitFor() throws java.lang.InterruptedException
waitFor
in class java.lang.Process
java.lang.InterruptedException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |