Class StdXMLParser

java.lang.Object
net.n3.nanoxml.StdXMLParser
All Implemented Interfaces:
IXMLParser

public class StdXMLParser extends Object implements IXMLParser
StdXMLParser is the core parser of NanoXML.
Author:
Marc De Scheemaecker
  • Constructor Details

    • StdXMLParser

      public StdXMLParser()
      Creates a new parser.
  • Method Details

    • finalize

      protected void finalize() throws Throwable
      Cleans up the object when it's destroyed.
      Overrides:
      finalize in class Object
      Throws:
      Throwable
    • setBuilder

      public void setBuilder(IXMLBuilder builder)
      Sets the builder which creates the logical structure of the XML data.
      Specified by:
      setBuilder in interface IXMLParser
      Parameters:
      builder - the non-null builder
    • getBuilder

      public IXMLBuilder getBuilder()
      Returns the builder which creates the logical structure of the XML data.
      Specified by:
      getBuilder in interface IXMLParser
      Returns:
      the builder
    • setValidator

      public void setValidator(IXMLValidator validator)
      Sets the validator that validates the XML data.
      Specified by:
      setValidator in interface IXMLParser
      Parameters:
      validator - the non-null validator
    • getValidator

      public IXMLValidator getValidator()
      Returns the validator that validates the XML data.
      Specified by:
      getValidator in interface IXMLParser
      Returns:
      the validator
    • setResolver

      public void setResolver(IXMLEntityResolver resolver)
      Sets the entity resolver.
      Specified by:
      setResolver in interface IXMLParser
      Parameters:
      resolver - the non-null resolver
    • getResolver

      public IXMLEntityResolver getResolver()
      Returns the entity resolver.
      Specified by:
      getResolver in interface IXMLParser
      Returns:
      the non-null resolver
    • setReader

      public void setReader(IXMLReader reader)
      Sets the reader from which the parser retrieves its data.
      Specified by:
      setReader in interface IXMLParser
      Parameters:
      reader - the reader
    • getReader

      public IXMLReader getReader()
      Returns the reader from which the parser retrieves its data.
      Specified by:
      getReader in interface IXMLParser
      Returns:
      the reader
    • parse

      public Object parse() throws XMLException
      Parses the data and lets the builder create the logical data structure.
      Specified by:
      parse in interface IXMLParser
      Returns:
      the logical structure built by the builder
      Throws:
      XMLException - if an error occurred reading or parsing the data
      See Also:
    • scanData

      protected void scanData() throws Exception
      Scans the XML data for elements.
      Throws:
      Exception - if something went wrong
    • scanSomeTag

      protected void scanSomeTag(boolean allowCDATA, String defaultNamespace, Properties namespaces) throws Exception
      Scans an XML tag.
      Parameters:
      allowCDATA - true if CDATA sections are allowed at this point
      defaultNamespace - the default namespace URI (or null)
      namespaces - list of defined namespaces
      Throws:
      Exception - if something went wrong
    • processPI

      protected void processPI() throws Exception
      Processes a "processing instruction".
      Throws:
      Exception - if something went wrong
    • processSpecialTag

      protected void processSpecialTag(boolean allowCDATA) throws Exception
      Processes a tag that starts with a bang (<!...>).
      Parameters:
      allowCDATA - true if CDATA sections are allowed at this point
      Throws:
      Exception - if something went wrong
    • processCDATA

      protected void processCDATA() throws Exception
      Processes a CDATA section.
      Throws:
      Exception - if something went wrong
    • processDocType

      protected void processDocType() throws Exception
      Processes a document type declaration.
      Throws:
      Exception - if an error occurred reading or parsing the data
    • processElement

      protected void processElement(String defaultNamespace, Properties namespaces) throws Exception
      Processes a regular element.
      Parameters:
      defaultNamespace - the default namespace URI (or null)
      namespaces - list of defined namespaces
      Throws:
      Exception - if something went wrong
    • processAttribute

      protected void processAttribute(Vector attrNames, Vector attrValues, Vector attrTypes) throws Exception
      Processes an attribute of an element.
      Parameters:
      attrNames - contains the names of the attributes.
      attrValues - contains the values of the attributes.
      attrTypes - contains the types of the attributes.
      Throws:
      Exception - if something went wrong