org.jfree.xml.parser
Class RootXmlReadHandler

java.lang.Object
  extended byorg.xml.sax.helpers.DefaultHandler
      extended byorg.jfree.xml.parser.RootXmlReadHandler
All Implemented Interfaces:
org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

public abstract class RootXmlReadHandler
extends org.xml.sax.helpers.DefaultHandler

A base root SAX handler.


Constructor Summary
RootXmlReadHandler()
          Creates a new root SAX handler.
 
Method Summary
protected  void addManualMapping(java.lang.Class classToRead, java.lang.Class handler)
          Adds a mapping between a class and the handler for the class.
protected  void addMultiplexMapping(java.lang.Class baseClass, java.lang.String typeAttr, MultiplexMappingEntry[] mdef)
           
 void characters(char[] ch, int start, int length)
           
 XmlReadHandler createHandler(java.lang.Class classToRead, java.lang.String tagName, org.xml.sax.Attributes atts)
          Creates a SAX handler for the specified class.
 void delegate(XmlReadHandler handler, java.lang.String tagName, org.xml.sax.Attributes attrs)
           
 void endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)
           
protected  XmlReadHandler getCurrentHandler()
           
abstract  ObjectFactory getFactoryLoader()
           
 org.xml.sax.Locator getLocator()
          Returns the current locator.
 java.lang.Object getObject(java.lang.String key)
           
protected  XmlReadHandler getRootHandler()
          Returns the root SAX handler.
protected  java.lang.Class loadClass(java.lang.String className)
          Loads the given class, and ignores all exceptions which may occur during the loading.
protected  XmlReadHandler loadHandlerClass(java.lang.String className)
          Loads the given class, and ignores all exceptions which may occur during the loading.
 void putObject(java.lang.String key, java.lang.Object value)
           
 void recurse(XmlReadHandler handler, java.lang.String tagName, org.xml.sax.Attributes attrs)
           
 void setDocumentLocator(org.xml.sax.Locator locator)
          Receive an object for locating the origin of SAX document events.
protected  void setRootHandler(XmlReadHandler handler)
          Sets the root SAX handler.
 void startDocument()
           
 void startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes)
           
 void unwind(java.lang.String tagName)
           
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, skippedEntity, startPrefixMapping, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RootXmlReadHandler

public RootXmlReadHandler()
Creates a new root SAX handler.

Method Detail

getFactoryLoader

public abstract ObjectFactory getFactoryLoader()

addManualMapping

protected void addManualMapping(java.lang.Class classToRead,
                                java.lang.Class handler)
Adds a mapping between a class and the handler for the class.

Parameters:
classToRead - the class.
handler - the handler class.

addMultiplexMapping

protected void addMultiplexMapping(java.lang.Class baseClass,
                                   java.lang.String typeAttr,
                                   MultiplexMappingEntry[] mdef)

putObject

public void putObject(java.lang.String key,
                      java.lang.Object value)

getObject

public java.lang.Object getObject(java.lang.String key)

createHandler

public XmlReadHandler createHandler(java.lang.Class classToRead,
                                    java.lang.String tagName,
                                    org.xml.sax.Attributes atts)
                             throws XmlReaderException
Creates a SAX handler for the specified class.

Parameters:
classToRead - the class.
tagName - the tag name.
Returns:
a SAX handler.
Throws:
XmlReaderException

setRootHandler

protected void setRootHandler(XmlReadHandler handler)
Sets the root SAX handler.

Parameters:
handler - the SAX handler.

getRootHandler

protected XmlReadHandler getRootHandler()
Returns the root SAX handler.

Returns:
the root SAX handler.

recurse

public void recurse(XmlReadHandler handler,
                    java.lang.String tagName,
                    org.xml.sax.Attributes attrs)
             throws XmlReaderException,
                    org.xml.sax.SAXException
Throws:
XmlReaderException
org.xml.sax.SAXException

delegate

public void delegate(XmlReadHandler handler,
                     java.lang.String tagName,
                     org.xml.sax.Attributes attrs)
              throws XmlReaderException,
                     org.xml.sax.SAXException
Throws:
XmlReaderException
org.xml.sax.SAXException

unwind

public void unwind(java.lang.String tagName)
            throws org.xml.sax.SAXException,
                   XmlReaderException
Throws:
org.xml.sax.SAXException
XmlReaderException

getCurrentHandler

protected XmlReadHandler getCurrentHandler()

startDocument

public void startDocument()
                   throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

startElement

public void startElement(java.lang.String uri,
                         java.lang.String localName,
                         java.lang.String qName,
                         org.xml.sax.Attributes attributes)
                  throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

characters

public void characters(char[] ch,
                       int start,
                       int length)
                throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

endElement

public void endElement(java.lang.String uri,
                       java.lang.String localName,
                       java.lang.String qName)
                throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

loadHandlerClass

protected XmlReadHandler loadHandlerClass(java.lang.String className)
                                   throws XmlReaderException
Loads the given class, and ignores all exceptions which may occur during the loading. If the class was invalid, null is returned instead.

Parameters:
className - the name of the class to be loaded.
Returns:
the class or null.
Throws:
XmlReaderException

loadClass

protected java.lang.Class loadClass(java.lang.String className)
                             throws XmlReaderException
Loads the given class, and ignores all exceptions which may occur during the loading. If the class was invalid, null is returned instead.

Parameters:
className - the name of the class to be loaded.
Returns:
the class or null.
Throws:
XmlReaderException

setDocumentLocator

public void setDocumentLocator(org.xml.sax.Locator locator)
Receive an object for locating the origin of SAX document events. The locator allows the application to determine the end position of any document-related event, even if the parser is not reporting an error. Typically, the application will use this information for reporting its own errors (such as character content that does not match an application's business rules). The information returned by the locator is probably not sufficient for use with a search engine.

Parameters:
locator - the locator.

getLocator

public org.xml.sax.Locator getLocator()
Returns the current locator.

Returns:
the locator.