Class Exec


  • public class Exec
    extends Object
    Utility class used to execute system commands
    Since:
    6.3
    Author:
    Marco Meschieri - LogicalDOC
    • Constructor Detail

      • Exec

        public Exec()
    • Method Detail

      • setErrPrefix

        public void setErrPrefix​(String errPrefix)
      • setOutPrefix

        public void setOutPrefix​(String outPrefix)
      • isWindows

        public boolean isWindows()
        Checks if you are running on Windows
        Returns:
        true if the execution platform is Windows
      • exec2

        public int exec2​(List<String> commandLine,
                         File directory,
                         int timeout)
                  throws IOException
        Executes the command by using the process builder.
        Parameters:
        commandLine - The command line to process. The path of the command must be listed in the allowed-commands.txt
        directory - The folder where the command will be executed
        timeout - The timeout in seconds
        Returns:
        the return value
        Throws:
        IOException - raised in case of errors during execution
      • exec

        public int exec​(List<String> commandLine)
                 throws IOException
        Execute the command by using the Runtime.getRuntime().exec()
        Parameters:
        commandLine - the list of elements in the command line. The path of the command must be listed in the allowed-commands.txt
        Returns:
        the command execution return value
        Throws:
        IOException - raised in case of errors during execution
      • exec

        public int exec​(List<String> commandLine,
                        String[] env,
                        File dir,
                        int timeout)
                 throws IOException
        Execute the command by using the Runtime.getRuntime().exec()
        Parameters:
        commandLine - the list of elements in the command line. The path of the command must be listed in the allowed-commands.txt
        env - the environment variables
        dir - the current folder
        timeout - maximum execution time expressed in seconds
        Returns:
        the return code of the command
        Throws:
        IOException - raised in case of errors during execution
      • exec

        public String exec​(String commandLine,
                           String[] env,
                           File dir)
                    throws IOException
        Execute the command by using the Runtime.getRuntime().exec()
        Parameters:
        commandLine - the command line string. The path of the command must be listed in the allowed-commands.txt
        env - the execution environment
        dir - the current folder
        Returns:
        The output of the command
        Throws:
        IOException - If the execution caused an error
      • exec

        public int exec​(String commandLine,
                        String[] env,
                        File dir,
                        int timeout)
                 throws IOException
        Execute the command by using the Runtime.exec
        Parameters:
        commandLine - the command line. The path of the command must be listed in the allowed-commands.txt
        env - the environment variables
        dir - the current execution directory
        timeout - maximum execution time expressed in seconds
        Returns:
        the command return value
        Throws:
        IOException - raised if the command produced an error
      • normalizePathForCommand

        public String normalizePathForCommand​(String srcPath)
        Utility method for normalizing a path to be used to invoke a command
        Parameters:
        srcPath - the source path to parse
        Returns:
        the normalized path