Google

Project (Apache Ant API)

org.apache.tools.ant
Class Project


java.lang.Object

  |

  +--org.apache.tools.ant.Project


public class Project
extends java.lang.Object

Central representation of an Ant project. This class defines an Ant project with all of its targets, tasks and various other properties. It also provides the mechanism to kick off a build using a particular target name.

This class also encapsulates methods which allow files to be referred to using abstract path names which are translated to native system file paths at runtime.

Version:
$Revision: 1.108.2.7 $
Author:
duncan@x180.com

Field Summary
static java.lang.String JAVA_1_0
          Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead
static java.lang.String JAVA_1_1
          Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead
static java.lang.String JAVA_1_2
          Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead
static java.lang.String JAVA_1_3
          Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead
static java.lang.String JAVA_1_4
          Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead
static int MSG_DEBUG
          Message priority of "debug".
static int MSG_ERR
          Message priority of "error".
static int MSG_INFO
          Message priority of "information".
static int MSG_VERBOSE
          Message priority of "verbose".
static int MSG_WARN
          Message priority of "warning".
static java.lang.String TOKEN_END
          Default filter end token.
static java.lang.String TOKEN_START
          Default filter start token.
 
Constructor Summary
Project()
          Creates a new Ant project.
 
Method Summary
 void addBuildListener(BuildListener listener)
          Adds a build listener to the list.
 void addDataTypeDefinition(java.lang.String typeName, java.lang.Class typeClass)
          Adds a new datatype definition.
 void addFilter(java.lang.String token, java.lang.String value)
          Deprecated. Use getGlobalFilterSet().addFilter(token,value)
 void addOrReplaceTarget(java.lang.String targetName, Target target)
          Adds a target to the project, or replaces one with the same name.
 void addOrReplaceTarget(Target target)
          Adds a target to the project, or replaces one with the same name.
 void addReference(java.lang.String name, java.lang.Object value)
          Adds a reference to the project.
 void addTarget(java.lang.String targetName, Target target)
          Adds a new target to the project.
 void addTarget(Target target)
          Adds a new target to the project.
 void addTaskDefinition(java.lang.String taskName, java.lang.Class taskClass)
          Adds a new task definition to the project.
 void checkTaskClass(java.lang.Class taskClass)
          Checks whether or not a class is suitable for serving as Ant task.
 void copyFile(java.io.File sourceFile, java.io.File destFile)
          Deprecated.  
 void copyFile(java.io.File sourceFile, java.io.File destFile, boolean filtering)
          Deprecated.  
 void copyFile(java.io.File sourceFile, java.io.File destFile, boolean filtering, boolean overwrite)
          Deprecated.  
 void copyFile(java.io.File sourceFile, java.io.File destFile, boolean filtering, boolean overwrite, boolean preserveLastModified)
          Deprecated.  
 void copyFile(java.lang.String sourceFile, java.lang.String destFile)
          Deprecated.  
 void copyFile(java.lang.String sourceFile, java.lang.String destFile, boolean filtering)
          Deprecated.  
 void copyFile(java.lang.String sourceFile, java.lang.String destFile, boolean filtering, boolean overwrite)
          Deprecated.  
 void copyFile(java.lang.String sourceFile, java.lang.String destFile, boolean filtering, boolean overwrite, boolean preserveLastModified)
          Deprecated.  
 void copyInheritedProperties(Project other)
          Copies all user properties that have not been set on the command line or a GUI tool from this instance to the Project instance given as the argument.
 void copyUserProperties(Project other)
          Copies all user properties that have been set on the command line or a GUI tool from this instance to the Project instance given as the argument.
 java.lang.Object createDataType(java.lang.String typeName)
          Creates a new instance of a data type.
 Task createTask(java.lang.String taskType)
          Creates a new instance of a task.
 void demuxOutput(java.lang.String line, boolean isError)
          Demultiplexes output so that each task receives the appropriate messages.
 void executeTarget(java.lang.String targetName)
          Executes the specified target and any targets it depends on.
 void executeTargets(java.util.Vector targetNames)
          Execute the specified sequence of targets, and the targets they depend on.
 void fireBuildFinished(java.lang.Throwable exception)
          Sends a "build finished" event to the build listeners for this project.
 void fireBuildStarted()
          Sends a "build started" event to the build listeners for this project.
protected  void fireMessageLogged(Project project, java.lang.String message, int priority)
          Sends a "message logged" project level event to the build listeners for this project.
protected  void fireMessageLogged(Target target, java.lang.String message, int priority)
          Sends a "message logged" target level event to the build listeners for this project.
protected  void fireMessageLogged(Task task, java.lang.String message, int priority)
          Sends a "message logged" task level event to the build listeners for this project.
protected  void fireTargetFinished(Target target, java.lang.Throwable exception)
          Sends a "target finished" event to the build listeners for this project.
protected  void fireTargetStarted(Target target)
          Sends a "target started" event to the build listeners for this project.
protected  void fireTaskFinished(Task task, java.lang.Throwable exception)
          Sends a "task finished" event to the build listeners for this project.
protected  void fireTaskStarted(Task task)
          Sends a "task started" event to the build listeners for this project.
 java.io.File getBaseDir()
          Returns the base directory of the project as a file object.
 java.util.Vector getBuildListeners()
          Returns a list of build listeners for the project.
 java.lang.ClassLoader getCoreLoader()
          Returns the core classloader to use for this project.
 java.util.Hashtable getDataTypeDefinitions()
          Returns the current datatype definition hashtable.
 java.lang.String getDefaultTarget()
          Returns the name of the default target of the project.
 java.lang.String getDescription()
          Returns the project description, if one has been set.
 java.lang.String getElementName(java.lang.Object element)
          Returns a description of the type of the given element, with special handling for instances of tasks and data types.
 java.util.Hashtable getFilters()
          Deprecated. Use getGlobalFilterSet().getFilterHash()
 FilterSet getGlobalFilterSet()
          Returns the set of global filters.
 InputHandler getInputHandler()
          Retrieves the current input handler.
static java.lang.String getJavaVersion()
          Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead
 java.lang.String getName()
          Returns the project name, if one has been set.
 java.util.Hashtable getProperties()
          Returns a copy of the properties table.
 java.lang.String getProperty(java.lang.String name)
          Returns the value of a property, if it is set.
 java.lang.Object getReference(java.lang.String key)
          Looks up a reference by its key (ID).
 java.util.Hashtable getReferences()
          Returns a map of the references in the project (String to Object).
 java.util.Hashtable getTargets()
          Returns the hashtable of targets.
 java.util.Hashtable getTaskDefinitions()
          Returns the current task definition hashtable.
 Task getThreadTask(java.lang.Thread thread)
          Get the current task assopciated with a thread, if any
 java.util.Hashtable getUserProperties()
          Returns a copy of the user property hashtable
 java.lang.String getUserProperty(java.lang.String name)
          Returns the value of a user property, if it is set.
 void init()
          Initialises the project.
 void log(java.lang.String message)
          Writes a message to the log with the default log level of MSG_INFO
 void log(java.lang.String message, int msgLevel)
          Writes a project level message to the log with the given log level.
 void log(Target target, java.lang.String message, int msgLevel)
          Writes a target level message to the log with the given log level.
 void log(Task task, java.lang.String message, int msgLevel)
          Writes a task level message to the log with the given log level.
 void registerThreadTask(java.lang.Thread thread, Task task)
          Register a task as the current task for a thread.
 void removeBuildListener(BuildListener listener)
          Removes a build listener from the list.
 java.lang.String replaceProperties(java.lang.String value)
          Replaces ${} style constructions in the given value with the string value of the corresponding data types.
 java.io.File resolveFile(java.lang.String fileName)
          Returns the canonical form of a filename.
 java.io.File resolveFile(java.lang.String fileName, java.io.File rootDir)
          Deprecated.  
 void setBaseDir(java.io.File baseDir)
          Sets the base directory for the project, checking that the given file exists and is a directory.
 void setBasedir(java.lang.String baseD)
          Sets the base directory for the project, checking that the given filename exists and is a directory.
 void setCoreLoader(java.lang.ClassLoader coreLoader)
          Sets the core classloader for the project.
 void setDefault(java.lang.String defaultTarget)
          Sets the default target of the project.
 void setDefaultTarget(java.lang.String defaultTarget)
          Deprecated. use setDefault
 void setDescription(java.lang.String description)
          Sets the project description.
 void setFileLastModified(java.io.File file, long time)
          Deprecated.  
 void setInheritedProperty(java.lang.String name, java.lang.String value)
          Sets a user property, which cannot be overwritten by set/unset property calls.
 void setInputHandler(InputHandler handler)
          Sets the input handler
 void setJavaVersionProperty()
          Sets the ant.java.version property and tests for unsupported JVM versions.
 void setName(java.lang.String name)
          Sets the name of the project, also setting the user property ant.project.name.
 void setNewProperty(java.lang.String name, java.lang.String value)
          Sets a property if no value currently exists.
 void setProperty(java.lang.String name, java.lang.String value)
          Sets a property.
 void setSystemProperties()
          Adds all system properties which aren't already defined as user properties to the project properties.
 void setUserProperty(java.lang.String name, java.lang.String value)
          Sets a user property, which cannot be overwritten by set/unset property calls.
static boolean toBoolean(java.lang.String s)
          Returns the boolean equivalent of a string, which is considered true if either "on", "true", or "yes" is found, ignoring case.
 java.util.Vector topoSort(java.lang.String root, java.util.Hashtable targets)
          Topologically sorts a set of targets.
static java.lang.String translatePath(java.lang.String toProcess)
          Translates a path into its native (platform specific) format.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MSG_ERR


public static final int MSG_ERR
Message priority of "error".

See Also:
Constant Field Values

MSG_WARN


public static final int MSG_WARN
Message priority of "warning".

See Also:
Constant Field Values

MSG_INFO


public static final int MSG_INFO
Message priority of "information".

See Also:
Constant Field Values

MSG_VERBOSE


public static final int MSG_VERBOSE
Message priority of "verbose".

See Also:
Constant Field Values

MSG_DEBUG


public static final int MSG_DEBUG
Message priority of "debug".

See Also:
Constant Field Values

JAVA_1_0


public static final java.lang.String JAVA_1_0
Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead

Version constant for Java 1.0

See Also:
Constant Field Values

JAVA_1_1


public static final java.lang.String JAVA_1_1
Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead

Version constant for Java 1.1

See Also:
Constant Field Values

JAVA_1_2


public static final java.lang.String JAVA_1_2
Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead

Version constant for Java 1.2

See Also:
Constant Field Values

JAVA_1_3


public static final java.lang.String JAVA_1_3
Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead

Version constant for Java 1.3

See Also:
Constant Field Values

JAVA_1_4


public static final java.lang.String JAVA_1_4
Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead

Version constant for Java 1.4

See Also:
Constant Field Values

TOKEN_START


public static final java.lang.String TOKEN_START
Default filter start token.

See Also:
Constant Field Values

TOKEN_END


public static final java.lang.String TOKEN_END
Default filter end token.

See Also:
Constant Field Values
Constructor Detail

Project


public Project()
Creates a new Ant project.

Method Detail

setInputHandler


public void setInputHandler(InputHandler handler)
Sets the input handler


getInputHandler


public InputHandler getInputHandler()
Retrieves the current input handler.


init


public void init()
          throws BuildException
Initialises the project. This involves setting the default task definitions and loading the system properties.

Throws:
BuildException - if the default task list cannot be loaded

setCoreLoader


public void setCoreLoader(java.lang.ClassLoader coreLoader)
Sets the core classloader for the project. If a null classloader is specified, the parent classloader should be used.

Parameters:
coreLoader - The classloader to use for the project. May be null.

getCoreLoader


public java.lang.ClassLoader getCoreLoader()
Returns the core classloader to use for this project. This may be null, indicating that the parent classloader should be used.

Returns:
the core classloader to use for this project.

addBuildListener


public void addBuildListener(BuildListener listener)
Adds a build listener to the list. This listener will be notified of build events for this project.

Parameters:
listener - The listener to add to the list. Must not be null.

removeBuildListener


public void removeBuildListener(BuildListener listener)
Removes a build listener from the list. This listener will no longer be notified of build events for this project.

Parameters:
listener - The listener to remove from the list. Should not be null.

getBuildListeners


public java.util.Vector getBuildListeners()
Returns a list of build listeners for the project.

Returns:
a list of build listeners for the project

log


public void log(java.lang.String message)
Writes a message to the log with the default log level of MSG_INFO

Parameters:
message - The text to log. Should not be null.

log


public void log(java.lang.String message,
                int msgLevel)
Writes a project level message to the log with the given log level.

Parameters:
message - The text to log. Should not be null.
msgLevel - The priority level to log at.

log


public void log(Task task,
                java.lang.String message,
                int msgLevel)
Writes a task level message to the log with the given log level.

Parameters:
task - The task to use in the log. Must not be null.
message - The text to log. Should not be null.
msgLevel - The priority level to log at.

log


public void log(Target target,
                java.lang.String message,
                int msgLevel)
Writes a target level message to the log with the given log level.

Parameters:
target - The target to use in the log. Must not be null.
message - The text to log. Should not be null.
msgLevel - The priority level to log at.

getGlobalFilterSet


public FilterSet getGlobalFilterSet()
Returns the set of global filters.

Returns:
the set of global filters

setProperty


public void setProperty(java.lang.String name,
                        java.lang.String value)
Sets a property. Any existing property of the same name is overwritten, unless it is a user property.

Parameters:
name - The name of property to set. Must not be null.
value - The new value of the property. Must not be null.

setNewProperty


public void setNewProperty(java.lang.String name,
                           java.lang.String value)
Sets a property if no value currently exists. If the property exists already, a message is logged and the method returns with no other effect.

Parameters:
name - The name of property to set. Must not be null.
value - The new value of the property. Must not be null.
Since:
1.5

setUserProperty


public void setUserProperty(java.lang.String name,
                            java.lang.String value)
Sets a user property, which cannot be overwritten by set/unset property calls. Any previous value is overwritten.

Parameters:
name - The name of property to set. Must not be null.
value - The new value of the property. Must not be null.
See Also:
setProperty(String,String)

setInheritedProperty


public void setInheritedProperty(java.lang.String name,
                                 java.lang.String value)
Sets a user property, which cannot be overwritten by set/unset property calls. Any previous value is overwritten. Also marks these properties as properties that have not come from the command line.

Parameters:
name - The name of property to set. Must not be null.
value - The new value of the property. Must not be null.
See Also:
setProperty(String,String)

getProperty


public java.lang.String getProperty(java.lang.String name)
Returns the value of a property, if it is set.

Parameters:
name - The name of the property. May be null, in which case the return value is also null.
Returns:
the property value, or null for no match or if a null name is provided.

replaceProperties


public java.lang.String replaceProperties(java.lang.String value)
                                   throws BuildException
Replaces ${} style constructions in the given value with the string value of the corresponding data types.

Parameters:
value - The string to be scanned for property references. May be null.
Returns:
the given string with embedded property names replaced by values, or null if the given string is null.
Throws:
BuildException - if the given value has an unclosed property name, e.g. ${xxx

getUserProperty


public java.lang.String getUserProperty(java.lang.String name)
Returns the value of a user property, if it is set.

Parameters:
name - The name of the property. May be null, in which case the return value is also null.
Returns:
the property value, or null for no match or if a null name is provided.

getProperties


public java.util.Hashtable getProperties()
Returns a copy of the properties table.

Returns:
a hashtable containing all properties (including user properties).

getUserProperties


public java.util.Hashtable getUserProperties()
Returns a copy of the user property hashtable

Returns:
a hashtable containing just the user properties

copyUserProperties


public void copyUserProperties(Project other)
Copies all user properties that have been set on the command line or a GUI tool from this instance to the Project instance given as the argument.

To copy all "user" properties, you will also have to call copyInheritedProperties.

Parameters:
other - the project to copy the properties to. Must not be null.
Since:
Ant 1.5

copyInheritedProperties


public void copyInheritedProperties(Project other)
Copies all user properties that have not been set on the command line or a GUI tool from this instance to the Project instance given as the argument.

To copy all "user" properties, you will also have to call copyUserProperties.

Parameters:
other - the project to copy the properties to. Must not be null.
Since:
Ant 1.5

setDefaultTarget


public void setDefaultTarget(java.lang.String defaultTarget)
Deprecated. use setDefault

Sets the default target of the project.

Parameters:
defaultTarget - The name of the default target for this project. May be null, indicating that there is no default target.
See Also:
setDefault(String)

getDefaultTarget


public java.lang.String getDefaultTarget()
Returns the name of the default target of the project.

Returns:
name of the default target or null if no default has been set.

setDefault


public void setDefault(java.lang.String defaultTarget)
Sets the default target of the project.

Parameters:
defaultTarget - The name of the default target for this project. May be null, indicating that there is no default target.

setName


public void setName(java.lang.String name)
Sets the name of the project, also setting the user property ant.project.name.

Parameters:
name - The name of the project. Must not be null.

getName


public java.lang.String getName()
Returns the project name, if one has been set.

Returns:
the project name, or null if it hasn't been set.

setDescription


public void setDescription(java.lang.String description)
Sets the project description.

Parameters:
description - The description of the project. May be null.

getDescription


public java.lang.String getDescription()
Returns the project description, if one has been set.

Returns:
the project description, or null if it hasn't been set.

addFilter


public void addFilter(java.lang.String token,
                      java.lang.String value)
Deprecated. Use getGlobalFilterSet().addFilter(token,value)

Adds a filter to the set of global filters.

Parameters:
token - The token to filter. Must not be null.
value - The replacement value. Must not be null.
See Also:
getGlobalFilterSet(), FilterSet.addFilter(String,String)

getFilters


public java.util.Hashtable getFilters()
Deprecated. Use getGlobalFilterSet().getFilterHash()

Returns a hashtable of global filters, mapping tokens to values.

Returns:
a hashtable of global filters, mapping tokens to values (String to String).
See Also:
getGlobalFilterSet(), FilterSet.getFilterHash()

setBasedir


public void setBasedir(java.lang.String baseD)
                throws BuildException
Sets the base directory for the project, checking that the given filename exists and is a directory.

Parameters:
baseD - The project base directory. Must not be null.
Throws:
BuildException - if the directory if invalid

setBaseDir


public void setBaseDir(java.io.File baseDir)
                throws BuildException
Sets the base directory for the project, checking that the given file exists and is a directory.

Parameters:
baseDir - The project base directory. Must not be null.
Throws:
BuildException - if the specified file doesn't exist or isn't a directory

getBaseDir


public java.io.File getBaseDir()
Returns the base directory of the project as a file object.

Returns:
the project base directory, or null if the base directory has not been successfully set to a valid value.

getJavaVersion


public static java.lang.String getJavaVersion()
Deprecated. use org.apache.tools.ant.util.JavaEnvUtils instead

Returns the version of Java this class is running under.

Returns:
the version of Java as a String, e.g. "1.1"
See Also:
JavaEnvUtils.getJavaVersion()

setJavaVersionProperty


public void setJavaVersionProperty()
                            throws BuildException
Sets the ant.java.version property and tests for unsupported JVM versions. If the version is supported, verbose log messages are generated to record the Java version and operating system name.

Throws:
BuildException - if this Java version is not supported
See Also:
JavaEnvUtils.getJavaVersion()

setSystemProperties


public void setSystemProperties()
Adds all system properties which aren't already defined as user properties to the project properties.


addTaskDefinition


public void addTaskDefinition(java.lang.String taskName,
                              java.lang.Class taskClass)
                       throws BuildException
Adds a new task definition to the project. Attempting to override an existing definition with an equivalent one (i.e. with the same classname) results in a verbose log message. Attempting to override an existing definition with a different one results in a warning log message and invalidates any tasks which have already been created with the old definition.

Parameters:
taskName - The name of the task to add. Must not be null.
taskClass - The full name of the class implementing the task. Must not be null.
Throws:
BuildException - if the class is unsuitable for being an Ant task. An error level message is logged before this exception is thrown.
See Also:
checkTaskClass(Class)

checkTaskClass


public void checkTaskClass(java.lang.Class taskClass)
                    throws BuildException
Checks whether or not a class is suitable for serving as Ant task. Ant task implementation classes must be public, concrete, and have a no-arg constructor.

Parameters:
taskClass - The class to be checked. Must not be null.
Throws:
BuildException - if the class is unsuitable for being an Ant task. An error level message is logged before this exception is thrown.

getTaskDefinitions


public java.util.Hashtable getTaskDefinitions()
Returns the current task definition hashtable. The returned hashtable is "live" and so should not be modified.

Returns:
a map of from task name to implementing class (String to Class).

addDataTypeDefinition


public void addDataTypeDefinition(java.lang.String typeName,
                                  java.lang.Class typeClass)
Adds a new datatype definition. Attempting to override an existing definition with an equivalent one (i.e. with the same classname) results in a verbose log message. Attempting to override an existing definition with a different one results in a warning log message, but the definition is changed.

Parameters:
typeName - The name of the datatype. Must not be null.
typeClass - The full name of the class implementing the datatype. Must not be null.

getDataTypeDefinitions


public java.util.Hashtable getDataTypeDefinitions()
Returns the current datatype definition hashtable. The returned hashtable is "live" and so should not be modified.

Returns:
a map of from datatype name to implementing class (String to Class).

addTarget


public void addTarget(Target target)
               throws BuildException
Adds a new target to the project.

Parameters:
target - The target to be added to the project. Must not be null.
Throws:
BuildException - if the target already exists in the project
See Also:
addOrReplaceTarget(org.apache.tools.ant.Target)

addTarget


public void addTarget(java.lang.String targetName,
                      Target target)
               throws BuildException
Adds a new target to the project.

Parameters:
targetName - The name to use for the target. Must not be null.
target - The target to be added to the project. Must not be null.
Throws:
BuildException - if the target already exists in the project
See Also:
addOrReplaceTarget(org.apache.tools.ant.Target)

addOrReplaceTarget


public void addOrReplaceTarget(Target target)
Adds a target to the project, or replaces one with the same name.

Parameters:
target - The target to be added or replaced in the project. Must not be null.

addOrReplaceTarget


public void addOrReplaceTarget(java.lang.String targetName,
                               Target target)
Adds a target to the project, or replaces one with the same name.

Parameters:
targetName - The name to use for the target. Must not be null.
target - The target to be added or replaced in the project. Must not be null.

getTargets


public java.util.Hashtable getTargets()
Returns the hashtable of targets. The returned hashtable is "live" and so should not be modified.

Returns:
a map from name to target (String to Target).

createTask


public Task createTask(java.lang.String taskType)
                throws BuildException
Creates a new instance of a task.

Parameters:
taskType - The name of the task to create an instance of. Must not be null.
Returns:
an instance of the specified task, or null if the task name is not recognised.
Throws:
BuildException - if the task name is recognised but task creation fails.

createDataType


public java.lang.Object createDataType(java.lang.String typeName)
                                throws BuildException
Creates a new instance of a data type.

Parameters:
typeName - The name of the data type to create an instance of. Must not be null.
Returns:
an instance of the specified data type, or null if the data type name is not recognised.
Throws:
BuildException - if the data type name is recognised but instance creation fails.

executeTargets


public void executeTargets(java.util.Vector targetNames)
                    throws BuildException
Execute the specified sequence of targets, and the targets they depend on.

Parameters:
targetNames - A vector of target name strings to execute. Must not be null.
Throws:
BuildException - if the build failed

demuxOutput


public void demuxOutput(java.lang.String line,
                        boolean isError)
Demultiplexes output so that each task receives the appropriate messages. If the current thread is not currently executing a task, the message is logged directly.

Parameters:
line - Message to handle. Should not be null.
isError - Whether the text represents an error (true) or information (false).

executeTarget


public void executeTarget(java.lang.String targetName)
                   throws BuildException
Executes the specified target and any targets it depends on.

Parameters:
targetName - The name of the target to execute. Must not be null.
Throws:
BuildException - if the build failed

resolveFile


public java.io.File resolveFile(java.lang.String fileName,
                                java.io.File rootDir)
Deprecated.  

Returns the canonical form of a filename.

If the specified file name is relative it is resolved with respect to the given root directory.

Parameters:
fileName - The name of the file to resolve. Must not be null.
rootDir - The directory to resolve relative file names with respect to. May be null, in which case the current directory is used.
Returns:
the resolved File.

resolveFile


public java.io.File resolveFile(java.lang.String fileName)
Returns the canonical form of a filename.

If the specified file name is relative it is resolved with respect to the project's base directory.

Parameters:
fileName - The name of the file to resolve. Must not be null.
Returns:
the resolved File.

translatePath


public static java.lang.String translatePath(java.lang.String toProcess)
Translates a path into its native (platform specific) format.

This method uses PathTokenizer to separate the input path into its components. This handles DOS style paths in a relatively sensible way. The file separators are then converted to their platform specific versions.

Parameters:
toProcess - The path to be translated. May be null.
Returns:
the native version of the specified path or an empty string if the path is null or empty.
See Also:
PathTokenizer

copyFile


public void copyFile(java.lang.String sourceFile,
                     java.lang.String destFile)
              throws java.io.IOException
Deprecated.  

Convenience method to copy a file from a source to a destination. No filtering is performed.

Parameters:
sourceFile - Name of file to copy from. Must not be null.
destFile - Name of file to copy to. Must not be null.
Throws:
java.io.IOException - if the copying fails

copyFile


public void copyFile(java.lang.String sourceFile,
                     java.lang.String destFile,
                     boolean filtering)
              throws java.io.IOException
Deprecated.  

Convenience method to copy a file from a source to a destination specifying if token filtering should be used.

Parameters:
sourceFile - Name of file to copy from. Must not be null.
destFile - Name of file to copy to. Must not be null.
filtering - Whether or not token filtering should be used during the copy.
Throws:
java.io.IOException - if the copying fails

copyFile


public void copyFile(java.lang.String sourceFile,
                     java.lang.String destFile,
                     boolean filtering,
                     boolean overwrite)
              throws java.io.IOException
Deprecated.  

Convenience method to copy a file from a source to a destination specifying if token filtering should be used and if source files may overwrite newer destination files.

Parameters:
sourceFile - Name of file to copy from. Must not be null.
destFile - Name of file to copy to. Must not be null.
filtering - Whether or not token filtering should be used during the copy.
overwrite - Whether or not the destination file should be overwritten if it already exists.
Throws:
java.io.IOException - if the copying fails

copyFile


public void copyFile(java.lang.String sourceFile,
                     java.lang.String destFile,
                     boolean filtering,
                     boolean overwrite,
                     boolean preserveLastModified)
              throws java.io.IOException
Deprecated.  

Convenience method to copy a file from a source to a destination specifying if token filtering should be used, if source files may overwrite newer destination files, and if the last modified time of the resulting file should be set to that of the source file.

Parameters:
sourceFile - Name of file to copy from. Must not be null.
destFile - Name of file to copy to. Must not be null.
filtering - Whether or not token filtering should be used during the copy.
overwrite - Whether or not the destination file should be overwritten if it already exists.
preserveLastModified - Whether or not the last modified time of the resulting file should be set to that of the source file.
Throws:
java.io.IOException - if the copying fails

copyFile


public void copyFile(java.io.File sourceFile,
                     java.io.File destFile)
              throws java.io.IOException
Deprecated.  

Convenience method to copy a file from a source to a destination. No filtering is performed.

Parameters:
sourceFile - File to copy from. Must not be null.
destFile - File to copy to. Must not be null.
Throws:
java.io.IOException - if the copying fails

copyFile


public void copyFile(java.io.File sourceFile,
                     java.io.File destFile,
                     boolean filtering)
              throws java.io.IOException
Deprecated.  

Convenience method to copy a file from a source to a destination specifying if token filtering should be used.

Parameters:
sourceFile - File to copy from. Must not be null.
destFile - File to copy to. Must not be null.
filtering - Whether or not token filtering should be used during the copy.
Throws:
java.io.IOException - if the copying fails

copyFile


public void copyFile(java.io.File sourceFile,
                     java.io.File destFile,
                     boolean filtering,
                     boolean overwrite)
              throws java.io.IOException
Deprecated.  

Convenience method to copy a file from a source to a destination specifying if token filtering should be used and if source files may overwrite newer destination files.

Parameters:
sourceFile - File to copy from. Must not be null.
destFile - File to copy to. Must not be null.
filtering - Whether or not token filtering should be used during the copy.
overwrite - Whether or not the destination file should be overwritten if it already exists.
Throws:
java.io.IOException - if the file cannot be copied.

copyFile


public void copyFile(java.io.File sourceFile,
                     java.io.File destFile,
                     boolean filtering,
                     boolean overwrite,
                     boolean preserveLastModified)
              throws java.io.IOException
Deprecated.  

Convenience method to copy a file from a source to a destination specifying if token filtering should be used, if source files may overwrite newer destination files, and if the last modified time of the resulting file should be set to that of the source file.

Parameters:
sourceFile - File to copy from. Must not be null.
destFile - File to copy to. Must not be null.
filtering - Whether or not token filtering should be used during the copy.
overwrite - Whether or not the destination file should be overwritten if it already exists.
preserveLastModified - Whether or not the last modified time of the resulting file should be set to that of the source file.
Throws:
java.io.IOException - if the file cannot be copied.

setFileLastModified


public void setFileLastModified(java.io.File file,
                                long time)
                         throws BuildException
Deprecated.  

Calls File.setLastModified(long time) on Java above 1.1, and logs a warning on Java 1.1.

Parameters:
file - The file to set the last modified time on. Must not be null.
time - the required modification time.
Throws:
BuildException - if the last modified time cannot be set despite running on a platform with a version above 1.1.

toBoolean


public static boolean toBoolean(java.lang.String s)
Returns the boolean equivalent of a string, which is considered true if either "on", "true", or "yes" is found, ignoring case.

Parameters:
s - The string to convert to a boolean value. Must not be null.
Returns:
true if the given string is "on", "true" or "yes", or false otherwise.

topoSort


public final java.util.Vector topoSort(java.lang.String root,
                                       java.util.Hashtable targets)
                                throws BuildException
Topologically sorts a set of targets.

Parameters:
root - The name of the root target. The sort is created in such a way that the sequence of Targets up to the root target is the minimum possible such sequence. Must not be null.
targets - A map of names to targets (String to Target). Must not be null.
Returns:
a vector of strings with the names of the targets in sorted order.
Throws:
BuildException - if there is a cyclic dependency among the targets, or if a named target does not exist.

addReference


public void addReference(java.lang.String name,
                         java.lang.Object value)
Adds a reference to the project.

Parameters:
name - The name of the reference. Must not be null.
value - The value of the reference. Must not be null.

getReferences


public java.util.Hashtable getReferences()
Returns a map of the references in the project (String to Object). The returned hashtable is "live" and so must not be modified.

Returns:
a map of the references in the project (String to Object).

getReference


public java.lang.Object getReference(java.lang.String key)
Looks up a reference by its key (ID).

Parameters:
key - The key for the desired reference. Must not be null.
Returns:
the reference with the specified ID, or null if there is no such reference in the project.

getElementName


public java.lang.String getElementName(java.lang.Object element)
Returns a description of the type of the given element, with special handling for instances of tasks and data types.

This is useful for logging purposes.

Parameters:
element - The element to describe. Must not be null.
Returns:
a description of the element type
Since:
1.95, Ant 1.5

fireBuildStarted


public void fireBuildStarted()
Sends a "build started" event to the build listeners for this project.


fireBuildFinished


public void fireBuildFinished(java.lang.Throwable exception)
Sends a "build finished" event to the build listeners for this project.

Parameters:
exception - an exception indicating a reason for a build failure. May be null, indicating a successful build.

fireTargetStarted


protected void fireTargetStarted(Target target)
Sends a "target started" event to the build listeners for this project.

Parameters:
target - The target which is starting to build. Must not be null.

fireTargetFinished


protected void fireTargetFinished(Target target,
                                  java.lang.Throwable exception)
Sends a "target finished" event to the build listeners for this project.

Parameters:
target - The target which has finished building. Must not be null.
exception - an exception indicating a reason for a build failure. May be null, indicating a successful build.

fireTaskStarted


protected void fireTaskStarted(Task task)
Sends a "task started" event to the build listeners for this project.

Parameters:
task - The target which is starting to execute. Must not be null.

fireTaskFinished


protected void fireTaskFinished(Task task,
                                java.lang.Throwable exception)
Sends a "task finished" event to the build listeners for this project.

Parameters:
task - The task which has finished executing. Must not be null.
exception - an exception indicating a reason for a build failure. May be null, indicating a successful build.

fireMessageLogged


protected void fireMessageLogged(Project project,
                                 java.lang.String message,
                                 int priority)
Sends a "message logged" project level event to the build listeners for this project.

Parameters:
project - The project generating the event. Should not be null.
message - The message to send. Should not be null.
priority - The priority of the message.

fireMessageLogged


protected void fireMessageLogged(Target target,
                                 java.lang.String message,
                                 int priority)
Sends a "message logged" target level event to the build listeners for this project.

Parameters:
target - The target generating the event. Must not be null.
message - The message to send. Should not be null.
priority - The priority of the message.

fireMessageLogged


protected void fireMessageLogged(Task task,
                                 java.lang.String message,
                                 int priority)
Sends a "message logged" task level event to the build listeners for this project.

Parameters:
task - The task generating the event. Must not be null.
message - The message to send. Should not be null.
priority - The priority of the message.

registerThreadTask


public void registerThreadTask(java.lang.Thread thread,
                               Task task)
Register a task as the current task for a thread. If the task is null, the thread's entry is removed.

Parameters:
thread - the thread on which the task is registered.
task - the task to be registered.
Since:
Ant 1.5

getThreadTask


public Task getThreadTask(java.lang.Thread thread)
Get the current task assopciated with a thread, if any

Parameters:
thread - the thread for which the task is required.
Returns:
the task which is currently registered for the given thread or null if no task is registered.


Copyright 2000-2002 Apache Software Foundation. All Rights Reserved.