## Package org.apache.tools.ant

Interface Summary
BuildListener: Instances of classes that implement this interface can register to be notified when things happened during a build.
BuildLogger: Interface used by Ant to log the build output.
DynamicAttribute: Enables a task to control unknown attributes
DynamicAttributeNS: Enables a task to control unknown attributes.
DynamicConfigurator: Enables a task to control unknown attributes and elements.
DynamicConfiguratorNS: Enables a task to control unknown attributes and elements.
DynamicElement: Enables a task to control unknown elements.
DynamicElementNS: Enables a task to control unknown elements.
Executor: Target executor abstraction.
FileScanner: An interface used to describe the actions required of any type of directory scanner.
SubBuildListener: Instances of classes that implement this interface can register to be also notified when things happened during a subbuild.
TaskContainer: Interface for objects which can contain tasks.
TypeAdapter: Used to wrap types.

Class Summary
AntClassLoader: Used to load classes within ant with a different classpath from that used to start ant.
AntTypeDefinition: This class contains all the information on a particular ant type, the classname, adaptor and the class it should be assignable from.
BuildEvent: Class representing an event occurring during a build.
ComponentHelper: Component creation and configuration.
DefaultLogger: Writes build events to a PrintStream.
DemuxInputStream: Passes input requests to the project object for demuxing into individual tasks and threads.
DemuxOutputStream: Logs content written by a thread and forwards the buffers onto the project object which will forward the content to the appropriate task.
Diagnostics: A little diagnostic helper that output some information that may help in support.
DirectoryScanner: Class for scanning a directory for files/directories which match certain criteria.
IntrospectionHelper: Helper class that collects the methods a task or nested element holds to set attributes, create nested elements or hold PCDATA elements.
IntrospectionHelper.Creator: creator - allows use of create/store external to IntrospectionHelper.
Location: Stores the location of a piece of text within a file (file name, line number and column number).
MagicNames: Magic names used within Ant.
Main: Command line entry point into Ant.
NoBannerLogger: Extends DefaultLogger to strip out empty targets.
PathTokenizer: A Path tokenizer takes a path and returns the components that make up that path.
Project: Central representation of an Ant project.
ProjectComponent: Base class for components of a project, including tasks and data types.
ProjectHelper: Configures a Project (complete with Targets and Tasks) based on a XML build file.
PropertyHelper: NOT FINAL.
RuntimeConfigurable: Wrapper class that holds the attributes of an element, its children, and any text within it.
Target: Class to implement a target object with required parameters.
Task: Base class for all tasks.
TaskAdapter: Uses introspection to "adapt" an arbitrary Bean which doesn't itself extend Task, but still contains an execute method and optionally a setProject method.
UnknownElement: Wrapper class that holds all the information necessary to create a task or data type that did not exist when Ant started, or one which has had its definition updated to use a different implementation class.
XmlLogger: Generates a file in the current directory with an XML description of what happened during a build.

Exception Summary
BuildException: Signals an error condition during a build
ExitException: Used to report exit status of classes which call System.exit().
ExitStatusException: BuildException + exit status.
UnsupportedAttributeException: Used to report attempts to set an unsupported attribute
UnsupportedElementException: Used to report attempts to set an unsupported element When the attempt to set the element is made, the code does not not know the name of the task/type based on a mapping from the classname to the task/type.