Package com.ibm.wala.util.processes
Class Launcher
- java.lang.Object
-
- com.ibm.wala.util.processes.Launcher
-
- Direct Known Subclasses:
BasicLauncher
,JavaLauncher
public abstract class Launcher extends java.lang.Object
Abstract base class for a process launcher
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
Launcher.Drainer
A thread that runs in a loop, performing the drain() action until a process terminates
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,java.lang.String>
env
protected byte[]
stdErr
protected byte[]
stdOut
protected java.io.File
workingDir
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Launcher.Drainer
captureStdErr(java.lang.Process p)
protected Launcher.Drainer
captureStdOut(java.lang.Process p)
protected java.lang.Thread
drainStdErr(java.lang.Process p)
protected java.lang.Thread
drainStdOut(java.lang.Process p)
java.util.Map<java.lang.String,java.lang.String>
getEnv()
byte[]
getInput()
byte[]
getStderr()
byte[]
getStdOut()
java.io.File
getWorkingDir()
boolean
isCaptureErr()
boolean
isCaptureOutput()
void
setEnv(java.util.Map<java.lang.String,java.lang.String> newEnv)
void
setInput(byte[] input)
Set input which will be fed to the launched process's stdinprotected void
setStdErr(byte[] newErr)
protected void
setStdOut(byte[] newOutput)
void
setWorkingDir(java.io.File newWorkingDir)
protected java.lang.Process
spawnProcess(java.lang.String cmd)
Spawn a process to execute the given commandprotected java.lang.Process
spawnProcess(java.lang.String[] cmd)
Spawn a process to execute the given commandjava.lang.String
toString()
-
-
-
Method Detail
-
getWorkingDir
public java.io.File getWorkingDir()
-
setWorkingDir
public void setWorkingDir(java.io.File newWorkingDir)
-
getEnv
public java.util.Map<java.lang.String,java.lang.String> getEnv()
-
setEnv
public void setEnv(java.util.Map<java.lang.String,java.lang.String> newEnv)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
spawnProcess
protected java.lang.Process spawnProcess(java.lang.String cmd) throws java.lang.IllegalArgumentException, java.io.IOException
Spawn a process to execute the given command- Returns:
- an object representing the process
- Throws:
java.lang.IllegalArgumentException
java.io.IOException
-
spawnProcess
protected java.lang.Process spawnProcess(java.lang.String[] cmd) throws java.lang.IllegalArgumentException, java.io.IOException
Spawn a process to execute the given command- Returns:
- an object representing the process
- Throws:
java.lang.IllegalArgumentException
java.io.IOException
-
drainStdOut
protected java.lang.Thread drainStdOut(java.lang.Process p)
-
captureStdOut
protected Launcher.Drainer captureStdOut(java.lang.Process p)
-
drainStdErr
protected java.lang.Thread drainStdErr(java.lang.Process p)
-
captureStdErr
protected Launcher.Drainer captureStdErr(java.lang.Process p)
-
isCaptureOutput
public boolean isCaptureOutput()
-
isCaptureErr
public boolean isCaptureErr()
-
getStdOut
public byte[] getStdOut()
-
getStderr
public byte[] getStderr()
-
setStdOut
protected void setStdOut(byte[] newOutput)
-
setStdErr
protected void setStdErr(byte[] newErr)
-
getInput
public byte[] getInput()
-
setInput
public void setInput(byte[] input)
Set input which will be fed to the launched process's stdin
-
-