RedirectorElement (Apache Ant API)
Date: 2018-07-10

org.apache.tools.ant.types

## Class RedirectorElement

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.types.DataType
    - - org.apache.tools.ant.types.RedirectorElement

- All Implemented Interfaces:
    java.lang.Cloneable

      public class RedirectorElement
      extends DataType

  Element representation of a `Redirector`.
  Since:
    Ant 1.6.2

- - ### Field Summary

    - ### Fields inherited from class org.apache.tools.ant.types.DataType

      `checked, ref`

    - ### Fields inherited from class org.apache.tools.ant.ProjectComponent

      `description, location, project`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RedirectorElement()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addConfiguredErrorMapper(Mapper errorMapper)` Add the error file mapper.
    `void` | `addConfiguredInputMapper(Mapper inputMapper)` Add the input file mapper.
    `void` | `addConfiguredOutputMapper(Mapper outputMapper)` Add the output file mapper.
    `void` | `configure(Redirector redirector)` Configure the specified `Redirector`.
    `void` | `configure(Redirector redirector, java.lang.String sourcefile)` Configure the specified `Redirector` for the specified sourcefile.
    `FilterChain` | `createErrorFilterChain()` Create a nested error `FilterChain`.
    `FilterChain` | `createInputFilterChain()` Create a nested input `FilterChain`.
    `protected Mapper` | `createMergeMapper(java.io.File destfile)` Create a merge mapper pointing to the specified destination file.
    `FilterChain` | `createOutputFilterChain()` Create a nested output `FilterChain`.
    `protected void` | `dieOnCircularReference(java.util.Stack<java.lang.Object> stk, Project p)` Overrides the version of DataType to recurse on all DataType child elements that may have been added.
    `void` | `setAlwaysLog(boolean alwaysLog)` If true, (error and non-error) output will be "teed", redirected as specified while being sent to Ant's logging mechanism as if no redirection had taken place.
    `void` | `setAppend(boolean append)` Whether output should be appended to or overwrite an existing file.
    `void` | `setBinaryOutput(boolean b)` Whether to consider the output created by the process binary.
    `void` | `setCreateEmptyFiles(boolean createEmptyFiles)` Whether output and error files should be created even when empty.
    `void` | `setError(java.io.File error)` Set the file to which standard error is to be redirected.
    `void` | `setErrorEncoding(java.lang.String errorEncoding)` Set the error encoding.
    `void` | `setErrorProperty(java.lang.String errorProperty)` Property name whose value should be set to the error of the process.
    `void` | `setInput(java.io.File input)` Set the input to use for the task.
    `void` | `setInputEncoding(java.lang.String inputEncoding)` Set the input encoding.
    `void` | `setInputString(java.lang.String inputString)` Set the string to use as input
    `void` | `setLogError(boolean logError)` Controls whether error output of exec is logged.
    `void` | `setLogInputString(boolean logInputString)` Set whether to include the value of the input string in log messages.
    `void` | `setOutput(java.io.File out)` File the output of the process is redirected to.
    `void` | `setOutputEncoding(java.lang.String outputEncoding)` Set the output encoding.
    `void` | `setOutputProperty(java.lang.String outputProperty)` Property name whose value should be set to the output of the process.
    `void` | `setRefid(Reference r)` Make this instance in effect a reference to another instance.
    `protected java.io.File[]` | `toFileArray(java.lang.String[] name)` Return a `File[]` from the specified set of filenames.

    - ### Methods inherited from class org.apache.tools.ant.types.DataType

      `checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, tooManyAttributes, toString`

    - ### Methods inherited from class org.apache.tools.ant.ProjectComponent

      `getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### RedirectorElement

          public RedirectorElement()

  - ### Method Detail

    - #### addConfiguredInputMapper

          public void addConfiguredInputMapper(Mapper inputMapper)

      Add the input file mapper.
      Parameters:
        `inputMapper` - `Mapper`.

    - #### addConfiguredOutputMapper

          public void addConfiguredOutputMapper(Mapper outputMapper)

      Add the output file mapper.
      Parameters:
        `outputMapper` - `Mapper`.

    - #### addConfiguredErrorMapper

          public void addConfiguredErrorMapper(Mapper errorMapper)

      Add the error file mapper.
      Parameters:
        `errorMapper` - `Mapper`.

    - #### setRefid

          public void setRefid(Reference r)
                        throws BuildException

      Make this instance in effect a reference to another instance.

      You must not set another attribute or nest elements inside this element if you make it a reference.

      Overrides:
        `setRefid` in class `DataType`
      Parameters:
        `r` - the reference to use.
      Throws:
        `BuildException` - on error.

    - #### setInput

          public void setInput(java.io.File input)

      Set the input to use for the task.
      Parameters:
        `input` - the file from which input is read.

    - #### setInputString

          public void setInputString(java.lang.String inputString)

      Set the string to use as input
      Parameters:
        `inputString` - the string which is used as the input source

    - #### setLogInputString

          public void setLogInputString(boolean logInputString)

      Set whether to include the value of the input string in log messages. Defaults to true.
      Parameters:
        `logInputString` - true or false.
      Since:
        Ant 1.7

    - #### setOutput

          public void setOutput(java.io.File out)

      File the output of the process is redirected to. If error is not redirected, it too will appear in the output.
      Parameters:
        `out` - the file to which output stream is written.

    - #### setOutputEncoding

          public void setOutputEncoding(java.lang.String outputEncoding)

      Set the output encoding.
      Parameters:
        `outputEncoding` - `String`.

    - #### setErrorEncoding

          public void setErrorEncoding(java.lang.String errorEncoding)

      Set the error encoding.
      Parameters:
        `errorEncoding` - `String`.

    - #### setInputEncoding

          public void setInputEncoding(java.lang.String inputEncoding)

      Set the input encoding.
      Parameters:
        `inputEncoding` - `String`.

    - #### setLogError

          public void setLogError(boolean logError)

      Controls whether error output of exec is logged. This is only useful when output is being redirected and error output is desired in the Ant log.
      Parameters:
        `logError` - if true the standard error is sent to the Ant log system and not sent to output.

    - #### setError

          public void setError(java.io.File error)

      Set the file to which standard error is to be redirected.
      Parameters:
        `error` - the file to which error is to be written.

    - #### setOutputProperty

          public void setOutputProperty(java.lang.String outputProperty)

      Property name whose value should be set to the output of the process.
      Parameters:
        `outputProperty` - the name of the property to be set with the task's output.

    - #### setAppend

          public void setAppend(boolean append)

      Whether output should be appended to or overwrite an existing file. Defaults to false.
      Parameters:
        `append` - if true output and error streams are appended to their respective files, if specified.

    - #### setAlwaysLog

          public void setAlwaysLog(boolean alwaysLog)

      If true, (error and non-error) output will be "teed", redirected as specified while being sent to Ant's logging mechanism as if no redirection had taken place. Defaults to false.
      Parameters:
        `alwaysLog` - `boolean`
      Since:
        Ant 1.6.3

    - #### setCreateEmptyFiles

          public void setCreateEmptyFiles(boolean createEmptyFiles)

      Whether output and error files should be created even when empty. Defaults to true.
      Parameters:
        `createEmptyFiles` - `boolean`.

    - #### setErrorProperty

          public void setErrorProperty(java.lang.String errorProperty)

      Property name whose value should be set to the error of the process.
      Parameters:
        `errorProperty` - the name of the property to be set with the error output.

    - #### createInputFilterChain

          public FilterChain createInputFilterChain()

      Create a nested input `FilterChain`.
      Returns:
        `FilterChain`.

    - #### createOutputFilterChain

          public FilterChain createOutputFilterChain()

      Create a nested output `FilterChain`.
      Returns:
        `FilterChain`.

    - #### createErrorFilterChain

          public FilterChain createErrorFilterChain()

      Create a nested error `FilterChain`.
      Returns:
        `FilterChain`.

    - #### setBinaryOutput

          public void setBinaryOutput(boolean b)

      Whether to consider the output created by the process binary.

      Binary output will not be split into lines which may make error and normal output look mixed up when they get written to the same stream.

      Parameters:
        `b` - boolean
      Since:
        1.9.4

    - #### configure

          public void configure(Redirector redirector)

      Configure the specified `Redirector`.
      Parameters:
        `redirector` - `Redirector`.

    - #### configure

          public void configure(Redirector redirector,
                                java.lang.String sourcefile)

      Configure the specified `Redirector` for the specified sourcefile.
      Parameters:
        `redirector` - `Redirector`.
        `sourcefile` - `String`.

    - #### createMergeMapper

          protected Mapper createMergeMapper(java.io.File destfile)

      Create a merge mapper pointing to the specified destination file.
      Parameters:
        `destfile` - `File`
      Returns:
        `Mapper`.

    - #### toFileArray

          protected java.io.File[] toFileArray(java.lang.String[] name)

      Return a `File[]` from the specified set of filenames.
      Parameters:
        `name` - `String[]`
      Returns:
        `File[]`.

    - #### dieOnCircularReference

          protected void dieOnCircularReference(java.util.Stack<java.lang.Object> stk,
                                                Project p)
                                         throws BuildException

      Overrides the version of DataType to recurse on all DataType child elements that may have been added.
      Overrides:
        `dieOnCircularReference` in class `DataType`
      Parameters:
        `stk` - the stack of data types to use (recursively).
        `p` - the project to use to dereference the references.
      Throws:
        `BuildException` - on error.