Package org.apache.tools.ant

# Class ProjectHelperRepository

java.lang.Object
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

Modifier and Type | Method | Description
--- | --- | ---
`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 Details

### 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

Parameters:
  `buildFile` - Resource
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

Parameters:
  `antlib` - Resource
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`