## org.apache.tools.ant.helper
Class ProjectHelper2

    java.lang.Object
      org.apache.tools.ant.ProjectHelper
          org.apache.tools.ant.helper.ProjectHelper2

    public class ProjectHelper2

extends ProjectHelper

Sax2 based project reader

Nested Class Summary
`static class` `ProjectHelper2.AntHandler` The common superclass for all SAX event handlers used to parse the configuration file.
`static class` `ProjectHelper2.ElementHandler` Handler for all project elements ( tasks, data types )
`static class` `ProjectHelper2.MainHandler` The main handler - it handles the <project> tag.
`static class` `ProjectHelper2.ProjectHandler` Handler for the top level "project" element.
`static class` `ProjectHelper2.RootHandler` Handler for ant processing.
`static class` `ProjectHelper2.TargetHandler` Handler for "target" and "extension-point" elements.

Nested classes/interfaces inherited from class org.apache.tools.ant.ProjectHelper
`ProjectHelper.OnMissingExtensionPoint`

Field Summary
`static java.lang.String` `REFID_TARGETS` Reference holding the (ordered) target Vector

Fields inherited from class org.apache.tools.ant.ProjectHelper
`ANT_CORE_URI, ANT_CURRENT_URI, ANT_TYPE, ANTLIB_URI, HELPER_PROPERTY, PROJECTHELPER_REFERENCE, SERVICE_ID`

Constructor Summary
`ProjectHelper2()`

Method Summary
`boolean` `canParseAntlibDescriptor(Resource resource)` Whether this instance of ProjectHelper can parse an Antlib descriptor given by the URL and return its content as an UnknownElement ready to be turned into an Antlib task.
`protected static ProjectHelper2.AntHandler` `getElementHandler()` Returns element handler
`protected static ProjectHelper2.AntHandler` `getMainHandler()` Returns main handler
`protected static ProjectHelper2.AntHandler` `getProjectHandler()` Returns project handler
`protected static ProjectHelper2.AntHandler` `getTargetHandler()` Returns target handler
`void` `parse(Project project, java.lang.Object source)` Parse a source xml input.
`void` `parse(Project project, java.lang.Object source, ProjectHelper2.RootHandler handler)` Parses the project file, configuring the project as it goes.
`UnknownElement` `parseAntlibDescriptor(Project containingProject, Resource resource)` Parse the given URL as an antlib descriptor an return the content as something that can be turned into an Antlib task.
`UnknownElement` `parseUnknownElement(Project project, java.net.URL source)` Parse an unknown element from a url
`protected static void` `setElementHandler(ProjectHelper2.AntHandler handler)` Sets element handler
`protected static void` `setMainHandler(ProjectHelper2.AntHandler handler)` Sets main handler
`protected static void` `setProjectHandler(ProjectHelper2.AntHandler handler)` Sets project handler
`protected static void` `setTargetHandler(ProjectHelper2.AntHandler handler)` Sets target handler

Methods inherited from class org.apache.tools.ant.ProjectHelper

`addLocationToBuildException, addText, addText, canParseBuildFile, configure, configureProject, extractNameFromComponentName, extractUriFromComponentName, genComponentName, getContextClassLoader, getCurrentPrefixSeparator, getCurrentTargetPrefix, getDefaultBuildFile, getExtensionStack, getImportStack, getProjectHelper, isInIncludeMode, parsePropertyString, replaceProperties, replaceProperties, setCurrentPrefixSeparator, setCurrentTargetPrefix, setInIncludeMode, storeChild`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### REFID_TARGETS

    public static final java.lang.String REFID_TARGETS

  Reference holding the (ordered) target Vector

  See Also:
    Constant Field Values

Constructor Detail

### ProjectHelper2

    public ProjectHelper2()

Method Detail

### canParseAntlibDescriptor

    public boolean canParseAntlibDescriptor(Resource resource)

  Whether this instance of ProjectHelper can parse an Antlib descriptor given by the URL and return its content as an UnknownElement ready to be turned into an Antlib task.

  This implementation returns true.

  Overrides:
    `canParseAntlibDescriptor` in class `ProjectHelper`
  Since:
    Ant 1.8.0

### parseAntlibDescriptor

    public UnknownElement parseAntlibDescriptor(Project containingProject,
                                                Resource resource)

  Parse the given URL as an antlib descriptor an return the content as something that can be turned into an Antlib task.

  simply delegates to `parseUnknownElement` if the resource provides an URL and throws an exceptipn otherwise.

  Overrides:
    `parseAntlibDescriptor` in class `ProjectHelper`
  Since:
    Ant 1.8.0

### parseUnknownElement

    public UnknownElement parseUnknownElement(Project project,
                                              java.net.URL source)
                                       throws BuildException

  Parse an unknown element from a url

  Parameters:
    `project` - the current project
    `source` - the url containing the task
  Returns:
    a configured task
  Throws:
    `BuildException` - if an error occurs

### parse

    public void parse(Project project,
                      java.lang.Object source)
               throws BuildException

  Parse a source xml input.

  Overrides:
    `parse` in class `ProjectHelper`
  Parameters:
    `project` - the current project
    `source` - the xml source
  Throws:
    `BuildException` - if an error occurs

### parse

    public void parse(Project project,
                      java.lang.Object source,
                      ProjectHelper2.RootHandler handler)
               throws BuildException

  Parses the project file, configuring the project as it goes.

  Parameters:
    `project` - the current project
    `source` - the xml source
    `handler` - the root handler to use (contains the current context)
  Throws:
    `BuildException` - if the configuration is invalid or cannot be read

### getMainHandler

    protected static ProjectHelper2.AntHandler getMainHandler()

  Returns main handler

  Returns:
    main handler

### setMainHandler

    protected static void setMainHandler(ProjectHelper2.AntHandler handler)

  Sets main handler

  Parameters:
    `handler` - new main handler

### getProjectHandler

    protected static ProjectHelper2.AntHandler getProjectHandler()

  Returns project handler

  Returns:
    project handler

### setProjectHandler

    protected static void setProjectHandler(ProjectHelper2.AntHandler handler)

  Sets project handler

  Parameters:
    `handler` - new project handler

### getTargetHandler

    protected static ProjectHelper2.AntHandler getTargetHandler()

  Returns target handler

  Returns:
    target handler

### setTargetHandler

    protected static void setTargetHandler(ProjectHelper2.AntHandler handler)

  Sets target handler

  Parameters:
    `handler` - new target handler

### getElementHandler

    protected static ProjectHelper2.AntHandler getElementHandler()

  Returns element handler

  Returns:
    element handler

### setElementHandler

    protected static void setElementHandler(ProjectHelper2.AntHandler handler)

  Sets element handler

  Parameters:
    `handler` - new element handler