ExtensionPoint (Apache Ant API)
Description: declaration: package: org.apache.tools.ant, class: ExtensionPoint

# Class ExtensionPoint

java.lang.Object
org.apache.tools.ant.Target
org.apache.tools.ant.ExtensionPoint

All Implemented Interfaces:
  `TaskContainer`

public class ExtensionPoint extends Target
An extension point build files can provide as a place where other build files can add new dependencies.

Since:
  Ant 1.8.0

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ExtensionPoint()`
  `ExtensionPoint(Target other)`
  Cloning constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final void`
  `addDataType(RuntimeConfigurable r)`
  Throws an exception.
  `final void`
  `addTask(Task task)`
  Throws an exception.

  ### Methods inherited from class Target

  `addDependency, dependsOn, execute, getDependencies, getDescription, getIf, getLocation, getName, getProject, getTasks, getUnless, parseDepends, performTasks, setDepends, setDescription, setIf, setIf, setLocation, setName, setProject, setUnless, setUnless, toString`
  Modifier and Type
  Method
  Description
  `void`
  `addDependency(String dependency)`
  Adds a dependency to this target.
  `boolean`
  `dependsOn(String other)`
  Does this target depend on the named target?
  `void`
  `execute()`
  Executes the target if the "if" and "unless" conditions are satisfied.
  `Enumeration<String>`
  `getDependencies()`
  Returns an enumeration of the dependencies of this target.
  `String`
  `getDescription()`
  Returns the description of this target.
  `String`
  `getIf()`
  Returns the "if" property condition of this target.
  `Location`
  `getLocation()`
  Get the location of this target's definition.
  `String`
  `getName()`
  Returns the name of this target.
  `Project`
  `getProject()`
  Returns the project this target belongs to.
  `Task[]`
  `getTasks()`
  Returns the current set of tasks to be executed by this target.
  `String`
  `getUnless()`
  Returns the "unless" property condition of this target.
  `static List<String>`
  `parseDepends(String depends, String targetName, String attributeName)`
  `final void`
  `performTasks()`
  Performs the tasks within this target (if the conditions are met), firing target started/target finished messages around a call to execute.
  `void`
  `setDepends(String depS)`
  Sets the list of targets this target is dependent on.
  `void`
  `setDescription(String description)`
  Sets the description of this target.
  `void`
  `setIf(String property)`
  Sets the "if" condition to test on execution.
  `void`
  `setIf(Condition condition)`
  Same as `Target.setIf(String)` but requires a `Condition` instance
  `void`
  `setLocation(Location location)`
  Sets the location of this target's definition.
  `void`
  `setName(String name)`
  Sets the name of this target.
  `void`
  `setProject(Project project)`
  Sets the project this target belongs to.
  `void`
  `setUnless(String property)`
  Sets the "unless" condition to test on execution.
  `void`
  `setUnless(Condition condition)`
  Same as `Target.setUnless(String)` but requires a `Condition` instance
  `String`
  `toString()`
  Returns the name of this target.

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### ExtensionPoint

    public ExtensionPoint()

  - ### ExtensionPoint

    public ExtensionPoint(Target other)
    Cloning constructor.
    Parameters:
      `other` - the Target to clone.

- ## Method Details

  - ### addTask

    public final void addTask(Task task)
    Throws an exception.
    Specified by:
      `addTask` in interface `TaskContainer`
    Overrides:
      `addTask` in class `Target`
    Parameters:
      `task` - The task to be added. Must not be `null`.

  - ### addDataType

    public final void addDataType(RuntimeConfigurable r)
    Throws an exception.
    Overrides:
      `addDataType` in class `Target`
    Parameters:
      `r` - The wrapper for the data type element to be added. Must not be `null`.