com.ibm.wala.dynamic
Class Launcher

java.lang.Object
  extended by com.ibm.wala.dynamic.Launcher
Direct Known Subclasses:
BasicLauncher, JavaLauncher

public abstract class Launcher
extends java.lang.Object

Abstract base class for a process launcher


Field Summary
protected  java.util.Map env
           
protected  byte[] stdErr
           
protected  byte[] stdOut
           
protected  java.io.File workingDir
           
 
Constructor Summary
protected Launcher()
           
protected Launcher(boolean captureOutput, boolean captureErr)
           
 
Method Summary
protected  com.ibm.wala.dynamic.Launcher.Drainer captureStdErr(java.lang.Process p)
           
protected  com.ibm.wala.dynamic.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 getEnv()
           
 byte[] getInput()
           
 byte[] getStderr()
           
 byte[] getStdOut()
           
 java.io.File getWorkingDir()
           
 boolean isCaptureErr()
           
 boolean isCaptureOutput()
           
 void setEnv(java.util.Map newEnv)
           
 void setInput(byte[] input)
          Set input which will be fed to the launched process's stdin
protected  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 command
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

workingDir

protected java.io.File workingDir

env

protected java.util.Map env

stdOut

protected byte[] stdOut

stdErr

protected byte[] stdErr
Constructor Detail

Launcher

protected Launcher()

Launcher

protected Launcher(boolean captureOutput,
                   boolean captureErr)
Method Detail

getWorkingDir

public java.io.File getWorkingDir()

setWorkingDir

public void setWorkingDir(java.io.File newWorkingDir)

getEnv

public java.util.Map getEnv()

setEnv

public void setEnv(java.util.Map newEnv)

toString

public java.lang.String toString()
Overrides:
toString in class java.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:
WalaException
java.lang.IllegalArgumentException
java.io.IOException

drainStdOut

protected java.lang.Thread drainStdOut(java.lang.Process p)

captureStdOut

protected com.ibm.wala.dynamic.Launcher.Drainer captureStdOut(java.lang.Process p)

drainStdErr

protected java.lang.Thread drainStdErr(java.lang.Process p)

captureStdErr

protected com.ibm.wala.dynamic.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