Package org.snpeff.osCmd
Class ExecuteOsCommand
- java.lang.Object
-
- java.lang.Thread
-
- org.snpeff.osCmd.ExecuteOsCommand
-
- All Implemented Interfaces:
java.lang.Runnable
,Progress
public class ExecuteOsCommand extends java.lang.Thread implements Progress
Launches an 'OS command' (e.g. "ls", "dir") Note: Launching a system command in Java is not trivial, we need to start 2 threads that read STDOUT and STDERR of the process, otherwise it will block (actually it may even cause a deadlock) References: http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html?page=1- Author:
- pcingola
-
-
Field Summary
Fields Modifier and Type Field Description static boolean
debug
-
Constructor Summary
Constructors Constructor Description ExecuteOsCommand(java.lang.String command)
ExecuteOsCommand(java.lang.String[] args)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
exec()
java.lang.String[]
getCommandArgs()
int
getExitValue()
java.lang.String
getHead()
First lines of stdoutjava.lang.String
getHeadStderr()
First lines of stderrint
getProgress()
java.lang.String
getPwd()
java.lang.String
getRedirectStderr()
java.lang.String
getRedirectStdout()
java.lang.String
getStderr()
java.io.OutputStream
getStdin()
java.lang.String
getStdout()
LineFilter
getStdOutFilter()
boolean
isAlertDone()
boolean
isBinaryStderr()
boolean
isBinaryStdout()
boolean
isExecuting()
boolean
isQuiet()
boolean
isSaveStd()
boolean
isStarted()
void
kill()
void
progress()
Report progressvoid
resetBuffers()
void
run()
void
setBinaryStderr(boolean binaryStderr)
void
setBinaryStdout(boolean binaryStdout)
void
setCommandArgs(java.lang.String[] commandArgs)
void
setObjetcToNotify(java.lang.Object objetcToNotify)
void
setPwd(java.lang.String pwd)
void
setQuiet(boolean quietStdout, boolean quietStderr)
void
setRedirectStderr(java.lang.String redirectStderr)
void
setRedirectStdout(java.lang.String redirectStdout)
void
setSaveStd(boolean saveStd)
void
setShowExceptions(boolean showExceptions)
void
setStdoutAlert(java.lang.String alert)
void
setStdoutAlertNotify(java.lang.Object toBeNotified)
void
setStdOutFilter(LineFilter stdOutFilter)
java.lang.String
toString()
-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, yield
-
-
-
-
Method Detail
-
exec
public int exec()
-
getCommandArgs
public java.lang.String[] getCommandArgs()
-
getExitValue
public int getExitValue()
-
getHead
public java.lang.String getHead()
First lines of stdout
-
getHeadStderr
public java.lang.String getHeadStderr()
First lines of stderr
-
getProgress
public int getProgress()
- Specified by:
getProgress
in interfaceProgress
-
getPwd
public java.lang.String getPwd()
-
getRedirectStderr
public java.lang.String getRedirectStderr()
-
getRedirectStdout
public java.lang.String getRedirectStdout()
-
getStderr
public java.lang.String getStderr()
-
getStdin
public java.io.OutputStream getStdin()
-
getStdout
public java.lang.String getStdout()
-
getStdOutFilter
public LineFilter getStdOutFilter()
-
isAlertDone
public boolean isAlertDone()
-
isBinaryStderr
public boolean isBinaryStderr()
-
isBinaryStdout
public boolean isBinaryStdout()
-
isExecuting
public boolean isExecuting()
-
isQuiet
public boolean isQuiet()
-
isSaveStd
public boolean isSaveStd()
-
isStarted
public boolean isStarted()
-
kill
public void kill()
-
resetBuffers
public void resetBuffers()
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
- Overrides:
run
in classjava.lang.Thread
-
setBinaryStderr
public void setBinaryStderr(boolean binaryStderr)
-
setBinaryStdout
public void setBinaryStdout(boolean binaryStdout)
-
setCommandArgs
public void setCommandArgs(java.lang.String[] commandArgs)
-
setObjetcToNotify
public void setObjetcToNotify(java.lang.Object objetcToNotify)
-
setPwd
public void setPwd(java.lang.String pwd)
-
setQuiet
public void setQuiet(boolean quietStdout, boolean quietStderr)
-
setRedirectStderr
public void setRedirectStderr(java.lang.String redirectStderr)
-
setRedirectStdout
public void setRedirectStdout(java.lang.String redirectStdout)
-
setSaveStd
public void setSaveStd(boolean saveStd)
-
setShowExceptions
public void setShowExceptions(boolean showExceptions)
-
setStdoutAlert
public void setStdoutAlert(java.lang.String alert)
-
setStdoutAlertNotify
public void setStdoutAlertNotify(java.lang.Object toBeNotified)
-
setStdOutFilter
public void setStdOutFilter(LineFilter stdOutFilter)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Thread
-
-