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:
  `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
Constructor
Description
`CallTarget()`

## Method Summary

Modifier and Type
Method
Description
`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(String output)`
Handle error output.
`void`
`handleErrorOutput(String output)`
Handle error output.
`void`
`handleFlush(String output)`
Handles output.
`int`
`handleInput(byte[] buffer, int offset, int length)`
Handles input.
`void`
`handleOutput(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(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 Details

### CallTarget

public CallTarget()

## Method Details

### 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(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(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 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:
  `IOException` - if the data cannot be read.
Since:
  Ant 1.6
See Also:
  - `Task.handleInput(byte[], int, int)`

### handleFlush

public void handleFlush(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(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(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)`