Class ExecuteOsCommand

java.lang.Object
java.lang.Thread
org.snpeff.osCmd.ExecuteOsCommand
All Implemented Interfaces:
Runnable, Progress

public class ExecuteOsCommand extends 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 Details

    • debug

      public static boolean debug
  • Constructor Details

    • ExecuteOsCommand

      public ExecuteOsCommand(String[] args)
    • ExecuteOsCommand

      public ExecuteOsCommand(String command)
  • Method Details

    • exec

      public int exec()
    • getCommandArgs

      public String[] getCommandArgs()
    • getExitValue

      public int getExitValue()
    • getHead

      public String getHead()
      First lines of stdout
    • getHeadStderr

      public String getHeadStderr()
      First lines of stderr
    • getProgress

      public int getProgress()
      Specified by:
      getProgress in interface Progress
    • getPwd

      public String getPwd()
    • getRedirectStderr

      public String getRedirectStderr()
    • getRedirectStdout

      public String getRedirectStdout()
    • getStderr

      public String getStderr()
    • getStdin

      public OutputStream getStdin()
    • getStdout

      public 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()
    • progress

      public void progress()
      Report progress
      Specified by:
      progress in interface Progress
    • resetBuffers

      public void resetBuffers()
    • run

      public void run()
      Specified by:
      run in interface Runnable
      Overrides:
      run in class Thread
    • setBinaryStderr

      public void setBinaryStderr(boolean binaryStderr)
    • setBinaryStdout

      public void setBinaryStdout(boolean binaryStdout)
    • setCommandArgs

      public void setCommandArgs(String[] commandArgs)
    • setObjetcToNotify

      public void setObjetcToNotify(Object objetcToNotify)
    • setPwd

      public void setPwd(String pwd)
    • setQuiet

      public void setQuiet(boolean quietStdout, boolean quietStderr)
    • setRedirectStderr

      public void setRedirectStderr(String redirectStderr)
    • setRedirectStdout

      public void setRedirectStdout(String redirectStdout)
    • setSaveStd

      public void setSaveStd(boolean saveStd)
    • setShowExceptions

      public void setShowExceptions(boolean showExceptions)
    • setStdoutAlert

      public void setStdoutAlert(String alert)
    • setStdoutAlertNotify

      public void setStdoutAlertNotify(Object toBeNotified)
    • setStdOutFilter

      public void setStdOutFilter(LineFilter stdOutFilter)
    • toString

      public String toString()
      Overrides:
      toString in class Thread