Class CommonJobs

java.lang.Object
com.iizix.run.common.CommonJobs
All Implemented Interfaces:
ICommonJobs

public class CommonJobs extends Object implements ICommonJobs
Class implementing common jobs in a non-Eclipse environment. The CommonBuilder variables can be tested for OS, etc.
Author:
Christopher Mindus
  • Constructor Details

    • CommonJobs

      public CommonJobs(IPropProgressMonitor monitor, boolean isVerbose)
      Constructor.
      Parameters:
      monitor - The progress monitor.
      isVerbose - The verbose flag.
    • CommonJobs

      public CommonJobs(IPropProgressMonitor monitor, IPrintAdapter printer, boolean isVerbose)
      Constructor.
      Parameters:
      monitor - The progress monitor.
      printer - The printer for output.
      isVerbose - The verbose flag.
  • Method Details

    • destroyProcess

      public void destroyProcess()
      Destroys a potentially executing process.
      Specified by:
      destroyProcess in interface ICommonJobs
    • downloadFile

      public void downloadFile(String webFile, File destFile) throws IOException, InterruptedException
      Download a file using HTTP.
      Specified by:
      downloadFile in interface ICommonJobs
      Parameters:
      webFile - The web file using HTTP.
      destFile - The local file system file where to place it.
      Throws:
      IOException - For errors.
      InterruptedException - If the process is interrupted.
    • extractArchive

      public void extractArchive(File jarExe, File archive, File dest, boolean deleteArchive) throws IOException, InterruptedException
      Extracts a Zip or Jar file.
      Specified by:
      extractArchive in interface ICommonJobs
      Parameters:
      jarExe - The Jar executable.
      archive - The file to extract.
      dest - The directory to place the extracted files in.
      deleteArchive - Flag to delete the archive.
      Throws:
      IOException - For errors.
      InterruptedException - If the process is interrupted.
    • downloadExtractArchive

      public void downloadExtractArchive(File jarExe, File tempDir, String url, File dest) throws IOException, InterruptedException
      Creates a temporary folder and downloads and extracts an archive file that contains a single directory with some name. This directory is then moved to the requested location and renamed.
      Specified by:
      downloadExtractArchive in interface ICommonJobs
      Parameters:
      jarExe - The Jar executable: if null, Java code will be used instead (also applies for ".tar" and ".tar.gz" file extensions.
      tempDir - The temporary directory.
      url - The archive file's URL to download.
      dest - The destination directory.
      Throws:
      IOException - For failures.
      InterruptedException
    • exec

      public int exec(boolean showOutput, String echo, File dir, Map<String,String> env, StringBuilder output, String... commands) throws IOException
      Executes a short command, typically for testing.
      Specified by:
      exec in interface ICommonJobs
      Parameters:
      showOutput - Shows the output of the process.
      echo - If non-null, what is placed in the output stream (repeatedly), e.g. "Y" or "N" (to accept or not accept).
      dir - Current directory for the process.
      env - The environment to use, null for default.
      output - The StringBuilder that is filled with the output from the process.
      commands - Commands to execute.
      Returns:
      The return value.
      Throws:
      IOException - For errors.