org.apache.tools.ant.taskdefs

## Class Input

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.Task
    - - org.apache.tools.ant.taskdefs.Input

- All Implemented Interfaces:
    java.lang.Cloneable

      public class Input
      extends Task

  Reads an input line from the console.
  Since:
    Ant 1.5

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `class` | `Input.Handler` Represents an InputHandler.
    `static class` | `Input.HandlerType` EnumeratedAttribute representing the built-in input handler types: "default", "propertyfile", "greedy", "secure" (since Ant 1.8).

  - ### Field Summary

    - ### 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 and Description
    `Input()` No arg constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addText(java.lang.String msg)` Set a multiline message.
    `Input.Handler` | `createHandler()` Create a nested handler element.
    `void` | `execute()` Actual method executed by ant.
    `void` | `setAddproperty(java.lang.String addproperty)` Defines the name of a property to be created from input.
    `void` | `setDefaultvalue(java.lang.String defaultvalue)` Defines the default value of the property to be created from input.
    `void` | `setMessage(java.lang.String message)` Sets the Message which gets displayed to the user during the build run.
    `void` | `setValidargs(java.lang.String validargs)` Defines valid input parameters as comma separated strings.

    - ### 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

    - #### Input

          public Input()

      No arg constructor.

  - ### Method Detail

    - #### setValidargs

          public void setValidargs(java.lang.String validargs)

      Defines valid input parameters as comma separated strings. If set, input task will reject any input not defined as accepted and requires the user to reenter it. Validargs are case sensitive. If you want 'a' and 'A' to be accepted you need to define both values as accepted arguments.
      Parameters:
        `validargs` - A comma separated String defining valid input args.

    - #### setAddproperty

          public void setAddproperty(java.lang.String addproperty)

      Defines the name of a property to be created from input. Behaviour is according to property task which means that existing properties cannot be overridden.
      Parameters:
        `addproperty` - Name for the property to be created from input

    - #### setMessage

          public void setMessage(java.lang.String message)

      Sets the Message which gets displayed to the user during the build run.
      Parameters:
        `message` - The message to be displayed.

    - #### setDefaultvalue

          public void setDefaultvalue(java.lang.String defaultvalue)

      Defines the default value of the property to be created from input. Property value will be set to default if not input is received.
      Parameters:
        `defaultvalue` - Default value for the property if no input is received

    - #### addText

          public void addText(java.lang.String msg)

      Set a multiline message.
      Parameters:
        `msg` - The message to be displayed.

    - #### execute

          public void execute()
                       throws BuildException

      Actual method executed by ant.
      Overrides:
        `execute` in class `Task`
      Throws:
        `BuildException` - on error

    - #### createHandler

          public Input.Handler createHandler()

      Create a nested handler element.
      Returns:
        a Handler for this Input task.