org.apache.tools.ant
Class ProjectHelperRepository

java.lang.Object
  extended by org.apache.tools.ant.ProjectHelperRepository

public class ProjectHelperRepository
extends java.lang.Object

Repository of ProjectHelper found in the classpath or via some System properties.

See the ProjectHelper documentation in the manual.

Since:
Ant 1.8.0

Method Summary
 java.util.Iterator<ProjectHelper> getHelpers()
          Get an iterator on the list of project helpers configured.
static ProjectHelperRepository getInstance()
           
 ProjectHelper getProjectHelperForAntlib(Resource antlib)
          Get the helper that will be able to parse the specified antlib.
 ProjectHelper getProjectHelperForBuildFile(Resource buildFile)
          Get the helper that will be able to parse the specified build file.
 void registerProjectHelper(java.lang.Class<? extends ProjectHelper> helperClass)
          Register the specified project helper into the repository.
 void registerProjectHelper(java.lang.String helperClassName)
          Register the specified project helper into the repository.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static ProjectHelperRepository getInstance()

registerProjectHelper

public void registerProjectHelper(java.lang.String helperClassName)
                           throws BuildException
Register the specified project helper into the repository.

The helper will be added after all the already registered helpers, but before the default one (ProjectHelper2)

Parameters:
helperClassName - the fully qualified name of the helper
Throws:
BuildException - if the class cannot be loaded or if there is no constructor with no argument
Since:
Ant 1.8.2

registerProjectHelper

public void registerProjectHelper(java.lang.Class<? extends ProjectHelper> helperClass)
                           throws BuildException
Register the specified project helper into the repository.

The helper will be added after all the already registered helpers, but before the default one (ProjectHelper2)

Parameters:
helperClass - the class of the helper
Throws:
BuildException - if there is no constructor with no argument
Since:
Ant 1.8.2

getProjectHelperForBuildFile

public ProjectHelper getProjectHelperForBuildFile(Resource buildFile)
                                           throws BuildException
Get the helper that will be able to parse the specified build file. The helper will be chosen among the ones found in the classpath

Returns:
the first ProjectHelper that fit the requirement (never null).
Throws:
BuildException

getProjectHelperForAntlib

public ProjectHelper getProjectHelperForAntlib(Resource antlib)
                                        throws BuildException
Get the helper that will be able to parse the specified antlib. The helper will be chosen among the ones found in the classpath

Returns:
the first ProjectHelper that fit the requirement (never null).
Throws:
BuildException

getHelpers

public java.util.Iterator<ProjectHelper> getHelpers()
Get an iterator on the list of project helpers configured. The iterator will always return at least one element as there will always be the default project helper configured.

Returns:
an iterator of ProjectHelper