Package org.apache.tools.ant.taskdefs.optional.net

# Class RExecTask

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.optional.net.RExecTask

All Implemented Interfaces:
  `java.lang.Cloneable`

    public class RExecTask
    extends Task

Automates the rexec protocol.

Since:
  Ant 1.6

- ## Nested Class Summary

  Nested Classes
  Modifier and Type | Class | Description
  --- | --- | ---
  `class` | `RExecTask.AntRExecClient` | This class handles the abstraction of the rexec protocol.
  `class` | `RExecTask.RExecRead` | Reads the output from the connected server until the required string is found or we time out.
  `class` | `RExecTask.RExecSubTask` | This class is the parent of the Read and Write tasks.
  `class` | `RExecTask.RExecWrite` | Sends text to the connected server

- ## 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 | Description
  --- | ---
  `RExecTask()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `RExecTask.RExecSubTask` | `createRead()` | A string to wait for from the server.
  `RExecTask.RExecSubTask` | `createWrite()` | Add text to send to the server A subTask <write> tag was found.
  `void` | `execute()` | Verify that all parameters are included.
  `void` | `setCommand​(java.lang.String c)` | Set the the command to execute on the server;
  `void` | `setInitialCR​(boolean b)` | send a carriage return after connecting; optional, defaults to false.
  `void` | `setPassword​(java.lang.String p)` | Set the the login password to use required if `userid` is set.
  `void` | `setPort​(int p)` | Set the tcp port to connect to; default is 23.
  `void` | `setServer​(java.lang.String m)` | Set the hostname or address of the remote server.
  `void` | `setTimeout​(java.lang.Integer i)` | set a default timeout in seconds to wait for a response, zero means forever (the default)
  `void` | `setUserid​(java.lang.String u)` | Set the the login id to use on the server; required if `password` is set.

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

  - ### RExecTask

    public RExecTask()

- ## Method Details

  - ### createRead

    public RExecTask.RExecSubTask createRead()
    A string to wait for from the server. A subTask <read> tag was found. Create the object, Save it in our list, and return it.
    Returns:
      a read sub task

  - ### createWrite

    public RExecTask.RExecSubTask createWrite()
    Add text to send to the server A subTask <write> tag was found. Create the object, Save it in our list, and return it.
    Returns:
      a write sub task

  - ### execute

    public void execute() throws BuildException
    Verify that all parameters are included. Connect and possibly login. Iterate through the list of Reads and writes.
    Overrides:
      `execute` in class `Task`
    Throws:
      `BuildException` - on error

  - ### setCommand

    public void setCommand​(java.lang.String c)
    Set the the command to execute on the server;
    Parameters:
      `c` - a `String` value

  - ### setInitialCR

    public void setInitialCR​(boolean b)
    send a carriage return after connecting; optional, defaults to false.
    Parameters:
      `b` - a `boolean` value

  - ### setPassword

    public void setPassword​(java.lang.String p)
    Set the the login password to use required if `userid` is set.
    Parameters:
      `p` - a `String` value

  - ### setPort

    public void setPort​(int p)
    Set the tcp port to connect to; default is 23.
    Parameters:
      `p` - an `int` value

  - ### setServer

    public void setServer​(java.lang.String m)
    Set the hostname or address of the remote server.
    Parameters:
      `m` - a `String` value

  - ### setTimeout

    public void setTimeout​(java.lang.Integer i)
    set a default timeout in seconds to wait for a response, zero means forever (the default)
    Parameters:
      `i` - an `Integer` value

  - ### setUserid

    public void setUserid​(java.lang.String u)
    Set the the login id to use on the server; required if `password` is set.
    Parameters:
      `u` - a `String` value