Package org.apache.tools.ant.taskdefs

## Class CallTarget

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

All Implemented Interfaces:
  `java.lang.Cloneable`

    public class CallTarget
    extends Task

Call another target in the same project.

        <target name="foo">
          <antcall target="bar">
            <param name="property1" value="aaaaa" />
            <param name="foo" value="baz" />
           </antcall>
        </target>

        <target name="bar" depends="init">
          <echo message="prop is ${property1} ${foo}" />
        </target>

This only works as expected if neither property1 nor foo are defined in the project itself.

Since:
  Ant 1.2

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

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addConfiguredTarget​(Ant.TargetElement t)` Add a target to the list of targets to invoke.
`void` `addPropertyset​(PropertySet ps)` Set of properties to pass to the new project.
`void` `addReference​(Ant.Reference r)` Reference element identifying a data type to carry over to the invoked target.
`Property` `createParam()` Create a new Property to pass to the invoked target(s).
`void` `execute()` Delegate the work to the ant task instance, after setting it up.
`void` `handleErrorFlush​(java.lang.String output)` Handle error output.
`void` `handleErrorOutput​(java.lang.String output)` Handle error output.
`void` `handleFlush​(java.lang.String output)` Handles output.
`int` `handleInput​(byte[] buffer, int offset, int length)` Handles input.
`void` `handleOutput​(java.lang.String output)` Handles output.
`void` `init()` Initialize this task by creating new instance of the ant task and configuring it by calling its own init method.
`void` `setInheritAll​(boolean inherit)` If true, pass all properties to the new Ant project.
`void` `setInheritRefs​(boolean inheritRefs)` If true, pass all references to the new Ant project.
`void` `setTarget​(java.lang.String target)` Set target to execute.

### Methods inherited from class org.apache.tools.ant.Task

`bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, 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

#### CallTarget

    public CallTarget()

### Method Detail

#### setInheritAll

    public void setInheritAll​(boolean inherit)

If true, pass all properties to the new Ant project. Defaults to true.

Parameters:
  `inherit` - `boolean` flag.

#### setInheritRefs

    public void setInheritRefs​(boolean inheritRefs)

If true, pass all references to the new Ant project. Defaults to false.

Parameters:
  `inheritRefs` - `boolean` flag.

#### init

    public void init()

Initialize this task by creating new instance of the ant task and configuring it by calling its own init method.

Overrides:
  `init` in class `Task`

#### execute

    public void execute()
                 throws BuildException

Delegate the work to the ant task instance, after setting it up.

Overrides:
  `execute` in class `Task`
Throws:
  `BuildException` - on validation failure or if the target didn't execute.

#### createParam

    public Property createParam()

Create a new Property to pass to the invoked target(s).

Returns:
  a `Property` object.

#### addReference

    public void addReference​(Ant.Reference r)

Reference element identifying a data type to carry over to the invoked target.

Parameters:
  `r` - the specified `Ant.Reference`.
Since:
  Ant 1.5

#### addPropertyset

    public void addPropertyset​(PropertySet ps)

Set of properties to pass to the new project.

Parameters:
  `ps` - the `PropertySet` to pass.
Since:
  Ant 1.6

#### setTarget

    public void setTarget​(java.lang.String target)

Set target to execute.

Parameters:
  `target` - the name of the target to execute.

#### addConfiguredTarget

    public void addConfiguredTarget​(Ant.TargetElement t)

Add a target to the list of targets to invoke.

Parameters:
  `t` - `Ant.TargetElement` representing the target.
Since:
  Ant 1.6.3

#### handleOutput

    public void handleOutput​(java.lang.String output)

Handles output. Send it the the new project if is present, otherwise call the super class.

Overrides:
  `handleOutput` in class `Task`
Parameters:
  `output` - The string output to output.
Since:
  Ant 1.5
See Also:
  `Task.handleOutput(String)`

#### handleInput

    public int handleInput​(byte[] buffer,
                           int offset,
                           int length)
                    throws java.io.IOException

Handles input. Delegate to the created project, if present, otherwise call the super class.

Overrides:
  `handleInput` in class `Task`
Parameters:
  `buffer` - the buffer into which data is to be read.
  `offset` - the offset into the buffer at which data is stored.
  `length` - the amount of data to read.
Returns:
  the number of bytes read.
Throws:
  `java.io.IOException` - if the data cannot be read.
Since:
  Ant 1.6
See Also:
  `Task.handleInput(byte[], int, int)`

#### handleFlush

    public void handleFlush​(java.lang.String output)

Handles output. Send it the the new project if is present, otherwise call the super class.

Overrides:
  `handleFlush` in class `Task`
Parameters:
  `output` - The string to output.
Since:
  Ant 1.5.2
See Also:
  `Task.handleFlush(String)`

#### handleErrorOutput

    public void handleErrorOutput​(java.lang.String output)

Handle error output. Send it the the new project if is present, otherwise call the super class.

Overrides:
  `handleErrorOutput` in class `Task`
Parameters:
  `output` - The string to output.
Since:
  Ant 1.5
See Also:
  `Task.handleErrorOutput(String)`

#### handleErrorFlush

    public void handleErrorFlush​(java.lang.String output)

Handle error output. Send it the the new project if is present, otherwise call the super class.

Overrides:
  `handleErrorFlush` in class `Task`
Parameters:
  `output` - The string to output.
Since:
  Ant 1.5.2
See Also:
  `Task.handleErrorFlush(String)`