jAudioFeatureExtractor.ACE.XMLParsers
Class ParseTaxonomyFileHandler

java.lang.Object
  extended by org.xml.sax.helpers.DefaultHandler
      extended by jAudioFeatureExtractor.ACE.XMLParsers.ParseFileHandler
          extended by jAudioFeatureExtractor.ACE.XMLParsers.ParseTaxonomyFileHandler
All Implemented Interfaces:
org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

public class ParseTaxonomyFileHandler
extends ParseFileHandler

An extension of the Xerces XML DefaultHandler class that implements the SAX ContentHandler. The methods of this class are called by an instance of an XMLReaderwhile it is parsing an XML document.

This particular implementation is custom designed to parse XML files of the taxonomy_file type used by the ACE classification system. A custom exception is thrown if the file is not of this type. At the end of parsing, the contents of the file elements are stored in the parsed_file_contents field as a one element array holding a DefaultTreeModel.

Author:
Cory McKay

Field Summary
 
Fields inherited from class jAudioFeatureExtractor.ACE.XMLParsers.ParseFileHandler
comments, parsed_file_contents
 
Constructor Summary
ParseTaxonomyFileHandler()
           
 
Method Summary
 void characters(char[] ch, int start, int length)
          This method creates a new node of the tree and places the textual content of the element in the new node.
 void endDocument()
          This method is called when the end of the XML file being parsed is reached.
 void endElement(java.lang.String namespace, java.lang.String name, java.lang.String qName)
          This method is called when the end tag of an XML element is encountered.
 void startDocument()
          This method is called when the start of the XML file to be parsed is reached.
 void startElement(java.lang.String namespace, java.lang.String name, java.lang.String qName, org.xml.sax.Attributes atts)
          This method is called when the start of an XML element is encountered.
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startPrefixMapping, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ParseTaxonomyFileHandler

public ParseTaxonomyFileHandler()
Method Detail

startDocument

public void startDocument()
This method is called when the start of the XML file to be parsed is reached. Initializes the fields.

Specified by:
startDocument in interface org.xml.sax.ContentHandler
Overrides:
startDocument in class org.xml.sax.helpers.DefaultHandler

endDocument

public void endDocument()
This method is called when the end of the XML file being parsed is reached. Puts the parsed file contents into the parsed_file_contents array in the form of a DefaultTreeModel.

Specified by:
endDocument in interface org.xml.sax.ContentHandler
Overrides:
endDocument in class org.xml.sax.helpers.DefaultHandler

startElement

public void startElement(java.lang.String namespace,
                         java.lang.String name,
                         java.lang.String qName,
                         org.xml.sax.Attributes atts)
                  throws org.xml.sax.SAXException
This method is called when the start of an XML element is encountered. Throws an exception if the XML document is the wrong type of XML document.

Specified by:
startElement in interface org.xml.sax.ContentHandler
Overrides:
startElement in class org.xml.sax.helpers.DefaultHandler
Parameters:
name - Name of the element that is encountered.
Throws:
org.xml.sax.SAXException - Exception thrown if is wrong type of XML file.

endElement

public void endElement(java.lang.String namespace,
                       java.lang.String name,
                       java.lang.String qName)
This method is called when the end tag of an XML element is encountered. Moves the tree pointer to the root of the tree if this is the last element. Moves the tree pointer to the parent node of where it is currently pointing if this is not the end tag of a category_name element.

Specified by:
endElement in interface org.xml.sax.ContentHandler
Overrides:
endElement in class org.xml.sax.helpers.DefaultHandler
Parameters:
name - Name of the element that is encountered.

characters

public void characters(char[] ch,
                       int start,
                       int length)
This method creates a new node of the tree and places the textual content of the element in the new node. The tree pointer is then moved to this new child.

Specified by:
characters in interface org.xml.sax.ContentHandler
Overrides:
characters in class org.xml.sax.helpers.DefaultHandler