Class ShellScriptTask

  • All Implemented Interfaces:
    java.lang.Cloneable

    public class ShellScriptTask
    extends org.apache.tools.ant.taskdefs.ExecTask
    A generic front-end for passing "shell lines" to any application which can accept a filename containing script input (bash, perl, csh, tcsh, etc.). see antcontrib doc for useage
    Author:
    stephan beal, peter reilly
    • Field Summary

      • Fields inherited from class org.apache.tools.ant.taskdefs.ExecTask

        cmdl, failOnError, newEnvironment, redirector, redirectorElement
      • Fields inherited from class org.apache.tools.ant.Task

        target, taskName, taskType, wrapper
      • Fields inherited from class org.apache.tools.ant.ProjectComponent

        description, location, project
    • Constructor Summary

      Constructors 
      Constructor Description
      ShellScriptTask()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addText​(java.lang.String s)
      Adds s to the lines of script code.
      void execute()
      execute the task
      void setCommand​(org.apache.tools.ant.types.Commandline notUsed)
      Disallow the command attribute of parent class ExecTask.
      void setExecutable​(java.lang.String shell)
      Sets the shell used to run the script.
      void setInputString​(java.lang.String s)
      Sets script code to s.
      void setShell​(java.lang.String shell)
      Sets the shell used to run the script.
      void setTmpSuffix​(java.lang.String tmpSuffix)
      Sets the suffix for the tmp file used to contain the script.
      protected void writeScript()
      Writes the script lines to a temp file.
      • Methods inherited from class org.apache.tools.ant.taskdefs.ExecTask

        addConfiguredRedirector, addEnv, checkConfiguration, createArg, createHandler, createWatchdog, getOs, getOsFamily, getResolveExecutable, isValidOs, logFlush, maybeSetResultPropertyValue, prepareExec, resolveExecutable, runExec, runExecute, setAppend, setDir, setError, setErrorProperty, setFailIfExecutionFails, setFailonerror, setInput, setLogError, setNewenvironment, setOs, setOsFamily, setOutput, setOutputproperty, setResolveExecutable, setResultProperty, setSearchPath, setSpawn, setTimeout, setTimeout, setupRedirector, setVMLauncher
      • Methods inherited from class org.apache.tools.ant.Task

        bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
      • Methods inherited from class org.apache.tools.ant.ProjectComponent

        clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ShellScriptTask

        public ShellScriptTask()
    • Method Detail

      • addText

        public void addText​(java.lang.String s)
        Adds s to the lines of script code.
      • setInputString

        public void setInputString​(java.lang.String s)
        Sets script code to s.
        Overrides:
        setInputString in class org.apache.tools.ant.taskdefs.ExecTask
      • setShell

        public void setShell​(java.lang.String shell)
        Sets the shell used to run the script.
        Parameters:
        shell - the shell to use (bash is default)
      • setExecutable

        public void setExecutable​(java.lang.String shell)
        Sets the shell used to run the script.
        Overrides:
        setExecutable in class org.apache.tools.ant.taskdefs.ExecTask
        Parameters:
        shell - the shell to use (bash is default)
      • setCommand

        public void setCommand​(org.apache.tools.ant.types.Commandline notUsed)
        Disallow the command attribute of parent class ExecTask. ant.attribute ignore="true"
        Overrides:
        setCommand in class org.apache.tools.ant.taskdefs.ExecTask
        Parameters:
        notUsed - not used
        Throws:
        org.apache.tools.ant.BuildException - if called
      • setTmpSuffix

        public void setTmpSuffix​(java.lang.String tmpSuffix)
        Sets the suffix for the tmp file used to contain the script. This is useful for cmd.exe as one can use cmd /c call x.bat
        Parameters:
        tmpSuffix - the suffix to use
      • execute

        public void execute()
                     throws org.apache.tools.ant.BuildException
        execute the task
        Overrides:
        execute in class org.apache.tools.ant.taskdefs.ExecTask
        Throws:
        org.apache.tools.ant.BuildException
      • writeScript

        protected void writeScript()
                            throws org.apache.tools.ant.BuildException
        Writes the script lines to a temp file.
        Throws:
        org.apache.tools.ant.BuildException