org.apache.tools.ant

Class ProjectComponent

Implemented Interfaces:
Cloneable
Known Direct Subclasses:
AbstractScriptComponent, Commandline.Argument, Concat.TextElement, ConditionBase, DataType, FileTokenizer, Gjdoc.ExtensionInfo, HasMethod, Http, IsFalse, IsReachable, IsReference, IsSet, IsTrue, Javadoc.ExtensionInfo, LineTokenizer, Matches, Message, ParserSupports, Provider, Service, Socket, StringTokenizer, Task, TokenFilter.ChainableReaderFilter, TokenFilter.ContainsString, TokenFilter.DeleteCharacters, TypeFound, XMLFragment

public abstract class ProjectComponent
extends java.lang.Object
implements Cloneable

Base class for components of a project, including tasks and data types. Provides common facilities.

Field Summary

protected String
description
Deprecated. since 1.6.x.
protected Location
location
Deprecated. since 1.6.x.
protected Project
project
Deprecated. since 1.6.x.

Constructor Summary

ProjectComponent()
Sole constructor.

Method Summary

Object
clone()
String
getDescription()
Returns the description of the current action.
Location
getLocation()
Returns the file/location where this task was defined.
Project
getProject()
Returns the project to which this component belongs.
void
log(String msg)
Logs a message with the default (INFO) priority.
void
log(String msg, int msgLevel)
Logs a message with the given priority.
void
setDescription(String desc)
Sets a description of the current action.
void
setLocation(Location location)
Sets the file/location where this task was defined.
void
setProject(Project project)
Sets the project object of this component.

Field Details

description

protected String description

Deprecated. since 1.6.x. You should not be accessing this variable directly.

Description of this component, if any.

location

protected Location location

Deprecated. since 1.6.x. You should not be accessing this variable directly. Please use the getLocation() method.

Location within the build file of this task definition.

project

protected Project project

Deprecated. since 1.6.x. You should not be directly accessing this variable directly. You should access project object via the getProject() or setProject() accessor/mutators.

Project object of this component.

Constructor Details

ProjectComponent

public ProjectComponent()
Sole constructor.

Method Details

clone

public Object clone()
            throws CloneNotSupportedException
Returns:
a shallow copy of this projectcomponent.
Since:
Ant 1.7

getDescription

public String getDescription()
Returns the description of the current action.
Returns:
the description of the current action, or null if no description is available.

getLocation

public Location getLocation()
Returns the file/location where this task was defined.
Returns:
the file/location where this task was defined. Should not return null. Location.UNKNOWN_LOCATION is used for unknown locations.

getProject

public Project getProject()
Returns the project to which this component belongs.
Returns:
the components's project.

log

public void log(String msg)
Logs a message with the default (INFO) priority.
Parameters:
msg - The message to be logged. Should not be null.

log

public void log(String msg,
                int msgLevel)
Logs a message with the given priority.
Parameters:
msg - The message to be logged. Should not be null.
msgLevel - the message priority at which this message is to be logged.

setDescription

public void setDescription(String desc)
Sets a description of the current action. This may be used for logging purposes.
Parameters:
desc - Description of the current action. May be null, indicating that no description is available.

setLocation

public void setLocation(Location location)
Sets the file/location where this task was defined.
Parameters:
location - The file/location where this task was defined. Should not be null--use Location.UNKNOWN_LOCATION if the location isn't known.

setProject

public void setProject(Project project)
Sets the project object of this component. This method is used by Project when a component is added to it so that the component has access to the functions of the project. It should not be used for any other purpose.
Parameters:
project - Project in whose scope this component belongs. Must not be null.