ProjectHelper2 (Apache Ant API)
Date: 2018-03-24

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

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `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

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `REFID_TARGETS` Reference holding the (ordered) target Vector

    - ### Fields inherited from class org.apache.tools.ant.ProjectHelper

      `ANT_ATTRIBUTE_URI, ANT_CORE_URI, ANT_CURRENT_URI, ANT_TYPE, ANTLIB_URI, HELPER_PROPERTY, PROJECTHELPER_REFERENCE, SERVICE_ID, USE_PROJECT_NAME_AS_TARGET_PREFIX`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ProjectHelper2()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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 and 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, nsToComponentName, parsePropertyString, replaceProperties, replaceProperties, resolveExtensionOfAttributes, 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`
      Parameters:
        `resource` - Resource
      Returns:
        boolean
      Since:
        Ant 1.8.0

    - #### parseAntlibDescriptor

          public UnknownElement parseAntlibDescriptor(Project containingProject,
                                                      Resource resource)

      Parse the given URL as an antlib descriptor and 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 exception otherwise.

      Overrides:
        `parseAntlibDescriptor` in class `ProjectHelper`
      Parameters:
        `containingProject` - Project
        `resource` - Resource
      Returns:
        UnknownElement
      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