Class ProjectHelper2.RootHandler

java.lang.Object
org.xml.sax.helpers.DefaultHandler
org.apache.tools.ant.helper.ProjectHelper2.RootHandler
All Implemented Interfaces:
ContentHandler, DTDHandler, EntityResolver, ErrorHandler
Enclosing class:
ProjectHelper2

public static class ProjectHelper2.RootHandler extends DefaultHandler
Handler for ant processing. Uses a stack of AntHandlers to implement each element (the original parser used a recursive behavior, with the implicit execution stack)
  • Constructor Details

    • RootHandler

      public RootHandler(AntXMLContext context, ProjectHelper2.AntHandler rootHandler)
      Creates a new RootHandler instance.
      Parameters:
      context - The context for the handler.
      rootHandler - The handler for the root element.
  • Method Details

    • getCurrentAntHandler

      public ProjectHelper2.AntHandler getCurrentAntHandler()
      Returns the current ant handler object.
      Returns:
      the current ant handler.
    • resolveEntity

      public InputSource resolveEntity(String publicId, String systemId)
      Resolves file: URIs relative to the build file.
      Specified by:
      resolveEntity in interface EntityResolver
      Overrides:
      resolveEntity in class DefaultHandler
      Parameters:
      publicId - The public identifier, or null if none is available. Ignored in this implementation.
      systemId - The system identifier provided in the XML document. Will not be null.
      Returns:
      an inputsource for this identifier
    • startElement

      public void startElement(String uri, String tag, String qname, Attributes attrs) throws SAXParseException
      Handles the start of a project element. A project handler is created and initialised with the element name and attributes.
      Specified by:
      startElement in interface ContentHandler
      Overrides:
      startElement in class DefaultHandler
      Parameters:
      uri - The namespace uri for this element.
      tag - The name of the element being started. Will not be null.
      qname - The qualified name for this element.
      attrs - Attributes of the element being started. Will not be null.
      Throws:
      SAXParseException - if the tag given is not "project"
    • setDocumentLocator

      public void setDocumentLocator(Locator locator)
      Sets the locator in the project helper for future reference.
      Specified by:
      setDocumentLocator in interface ContentHandler
      Overrides:
      setDocumentLocator in class DefaultHandler
      Parameters:
      locator - The locator used by the parser. Will not be null.
    • endElement

      public void endElement(String uri, String name, String qName) throws SAXException
      Handles the end of an element. Any required clean-up is performed by the onEndElement() method and then the original handler is restored to the parser.
      Specified by:
      endElement in interface ContentHandler
      Overrides:
      endElement in class DefaultHandler
      Parameters:
      uri - The namespace URI for this element.
      name - The name of the element which is ending. Will not be null.
      qName - The qualified name for this element.
      Throws:
      SAXException - in case of error (not thrown in this implementation)
    • characters

      public void characters(char[] buf, int start, int count) throws SAXParseException
      Handle text within an element, calls currentHandler.characters.
      Specified by:
      characters in interface ContentHandler
      Overrides:
      characters in class DefaultHandler
      Parameters:
      buf - A character array of the test.
      start - The start offset in the array.
      count - The number of characters to read.
      Throws:
      SAXParseException - if an error occurs
    • startPrefixMapping

      public void startPrefixMapping(String prefix, String uri)
      Start a namespace prefix to uri mapping
      Specified by:
      startPrefixMapping in interface ContentHandler
      Overrides:
      startPrefixMapping in class DefaultHandler
      Parameters:
      prefix - the namespace prefix
      uri - the namespace uri
    • endPrefixMapping

      public void endPrefixMapping(String prefix)
      End a namespace prefix to uri mapping
      Specified by:
      endPrefixMapping in interface ContentHandler
      Overrides:
      endPrefixMapping in class DefaultHandler
      Parameters:
      prefix - the prefix that is not mapped anymore