Package org.ghost4j.util
Class JavaFork
- java.lang.Object
-
- org.ghost4j.util.JavaFork
-
- All Implemented Interfaces:
java.lang.Runnable
public class JavaFork extends java.lang.Object implements java.lang.RunnableThis class allows launching another JVM from the current JVM. It takes the same classpath as the parent JVM.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,java.lang.String>environmentAdditional environment variables.private static java.lang.StringFILE_SEPARATORprivate static java.lang.StringJAVA_COMMANDprivate static java.lang.StringPATH_SEPARATORprivate java.lang.ProcessprocessProcess object of the JVM.private booleanredirectStreamsIf set to TRUE, output and error streams are redirected to the main JVM output streamprivate java.lang.Class<?>startClassStart class of the JVM.private booleanwaitBeforeExitingIf set to TRUE, main JVM will wait for this JVM to stop before exiting.private java.lang.StringxmsXms parameter.private java.lang.StringxmxXmx parameter.
-
Constructor Summary
Constructors Constructor Description JavaFork()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.StringgetCurrentClasspath()java.util.Map<java.lang.String,java.lang.String>getEnvironment()booleangetRedirectStreams()java.lang.Class<?>getStartClass()booleangetWaitBeforeExiting()java.lang.StringgetXms()java.lang.StringgetXmx()voidrun()voidsetEnvironment(java.util.Map<java.lang.String,java.lang.String> environment)voidsetRedirectStreams(boolean redirectStreams)voidsetStartClass(java.lang.Class<?> startClass)voidsetWaitBeforeExiting(boolean waitBeforeExiting)voidsetXms(java.lang.String xms)voidsetXmx(java.lang.String xmx)voidstart()voidstart(java.lang.Class<?> startClass)voidstop()
-
-
-
Field Detail
-
JAVA_COMMAND
private static final java.lang.String JAVA_COMMAND
-
PATH_SEPARATOR
private static final java.lang.String PATH_SEPARATOR
-
FILE_SEPARATOR
private static final java.lang.String FILE_SEPARATOR
-
startClass
private java.lang.Class<?> startClass
Start class of the JVM.
-
process
private java.lang.Process process
Process object of the JVM. Is null if the JVM is not running.
-
redirectStreams
private boolean redirectStreams
If set to TRUE, output and error streams are redirected to the main JVM output stream
-
waitBeforeExiting
private boolean waitBeforeExiting
If set to TRUE, main JVM will wait for this JVM to stop before exiting.
-
environment
private java.util.Map<java.lang.String,java.lang.String> environment
Additional environment variables.
-
xmx
private java.lang.String xmx
Xmx parameter. Default value is set to 128M.
-
xms
private java.lang.String xms
Xms parameter. Default value is set to 64M.
-
-
Method Detail
-
start
public void start(java.lang.Class<?> startClass)
-
start
public void start()
-
stop
public void stop()
-
run
public void run()
- Specified by:
runin interfacejava.lang.Runnable
-
getCurrentClasspath
private java.lang.String getCurrentClasspath()
-
getStartClass
public java.lang.Class<?> getStartClass()
-
setStartClass
public void setStartClass(java.lang.Class<?> startClass)
-
getRedirectStreams
public boolean getRedirectStreams()
-
setRedirectStreams
public void setRedirectStreams(boolean redirectStreams)
-
getWaitBeforeExiting
public boolean getWaitBeforeExiting()
-
setWaitBeforeExiting
public void setWaitBeforeExiting(boolean waitBeforeExiting)
-
getEnvironment
public java.util.Map<java.lang.String,java.lang.String> getEnvironment()
-
setEnvironment
public void setEnvironment(java.util.Map<java.lang.String,java.lang.String> environment)
-
getXmx
public java.lang.String getXmx()
-
setXmx
public void setXmx(java.lang.String xmx)
-
getXms
public java.lang.String getXms()
-
setXms
public void setXms(java.lang.String xms)
-
-