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.Runnable
This 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>
environment
Additional environment variables.private static java.lang.String
FILE_SEPARATOR
private static java.lang.String
JAVA_COMMAND
private static java.lang.String
PATH_SEPARATOR
private java.lang.Process
process
Process object of the JVM.private boolean
redirectStreams
If set to TRUE, output and error streams are redirected to the main JVM output streamprivate java.lang.Class<?>
startClass
Start class of the JVM.private boolean
waitBeforeExiting
If set to TRUE, main JVM will wait for this JVM to stop before exiting.private java.lang.String
xms
Xms parameter.private java.lang.String
xmx
Xmx parameter.
-
Constructor Summary
Constructors Constructor Description JavaFork()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.String
getCurrentClasspath()
java.util.Map<java.lang.String,java.lang.String>
getEnvironment()
boolean
getRedirectStreams()
java.lang.Class<?>
getStartClass()
boolean
getWaitBeforeExiting()
java.lang.String
getXms()
java.lang.String
getXmx()
void
run()
void
setEnvironment(java.util.Map<java.lang.String,java.lang.String> environment)
void
setRedirectStreams(boolean redirectStreams)
void
setStartClass(java.lang.Class<?> startClass)
void
setWaitBeforeExiting(boolean waitBeforeExiting)
void
setXms(java.lang.String xms)
void
setXmx(java.lang.String xmx)
void
start()
void
start(java.lang.Class<?> startClass)
void
stop()
-
-
-
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:
run
in 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)
-
-