org.jfree.xml.parser

Class RootXmlReadHandler

public abstract class RootXmlReadHandler extends FrontendDefaultHandler

A base root SAX handler.
Constructor Summary
RootXmlReadHandler()
Creates a new root SAX handler.
Method Summary
protected voidaddDefaultMappings()
protected voidaddManualMapping(Class classToRead, Class handler)
Adds a mapping between a class and the handler for the class.
protected voidaddMultiplexMapping(Class baseClass, String typeAttr, MultiplexMappingEntry[] mdef)
Adds a multiplex mapping.
voidcharacters(char[] ch, int start, int length)
Process character data.
XmlReadHandlercreateHandler(Class classToRead, String tagName, Attributes atts)
Creates a SAX handler for the specified class.
voiddelegate(XmlReadHandler handler, String tagName, Attributes attrs)
Delegate to another handler.
voidendElement(String uri, String localName, String qName)
Finish processing an element.
protected XmlReadHandlergetCurrentHandler()
Returns the current handler.
abstract ObjectFactorygetFactoryLoader()
Returns the object factory.
ObjectgetHelperObject(String key)
Returns an object from the registry.
ObjectgetResult()
protected XmlReadHandlergetRootHandler()
Returns the root SAX handler.
protected ClassloadClass(String className)
Loads the given class, and ignores all exceptions which may occur during the loading.
protected XmlReadHandlerloadHandlerClass(String className)
Loads the given class, and ignores all exceptions which may occur during the loading.
voidrecurse(XmlReadHandler handler, String tagName, Attributes attrs)
Start a new handler stack and delegate to another handler.
voidsetHelperObject(String key, Object value)
Adds an object to the registry.
protected voidsetRootHandler(XmlReadHandler handler)
Sets the root SAX handler.
voidstartDocument()
Starts processing a document.
voidstartElement(String uri, String localName, String qName, Attributes attributes)
Starts processing an element.
voidunwind(String tagName)
Hand control back to the previous handler.

Constructor Detail

RootXmlReadHandler

public RootXmlReadHandler()
Creates a new root SAX handler.

Method Detail

addDefaultMappings

protected void addDefaultMappings()

addManualMapping

protected void addManualMapping(Class classToRead, 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(Class baseClass, String typeAttr, MultiplexMappingEntry[] mdef)
Adds a multiplex mapping.

Parameters: baseClass the base class. typeAttr the type attribute. mdef the mapping entry.

characters

public void characters(char[] ch, int start, int length)
Process character data.

Parameters: ch the character buffer. start the start index. length the length of the character data.

Throws: SAXException if there is a parsing error.

createHandler

public XmlReadHandler createHandler(Class classToRead, String tagName, Attributes atts)
Creates a SAX handler for the specified class.

Parameters: classToRead the class. tagName the tag name. atts the attributes.

Returns: a SAX handler.

Throws: XmlReaderException if there is a problem with the reader.

delegate

public void delegate(XmlReadHandler handler, String tagName, Attributes attrs)
Delegate to another handler.

Parameters: handler the new handler. tagName the tag name. attrs the attributes.

Throws: XmlReaderException if there is a problem with the reader. SAXException if there is a problem with the parser.

endElement

public void endElement(String uri, String localName, String qName)
Finish processing an element.

Parameters: uri the URI. localName the local name. qName the qName.

Throws: SAXException if there is a parsing error.

getCurrentHandler

protected XmlReadHandler getCurrentHandler()
Returns the current handler.

Returns: The current handler.

getFactoryLoader

public abstract ObjectFactory getFactoryLoader()
Returns the object factory.

Returns: The object factory.

getHelperObject

public Object getHelperObject(String key)
Returns an object from the registry.

Parameters: key the key.

Returns: The object.

getResult

public Object getResult()

getRootHandler

protected XmlReadHandler getRootHandler()
Returns the root SAX handler.

Returns: the root SAX handler.

loadClass

protected Class loadClass(String className)
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 if there is a reader error.

loadHandlerClass

protected XmlReadHandler loadHandlerClass(String className)
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 if there is a reader error.

recurse

public void recurse(XmlReadHandler handler, String tagName, Attributes attrs)
Start a new handler stack and delegate to another handler.

Parameters: handler the handler. tagName the tag name. attrs the attributes.

Throws: XmlReaderException if there is a problem with the reader. SAXException if there is a problem with the parser.

setHelperObject

public void setHelperObject(String key, Object value)
Adds an object to the registry.

Parameters: key the key. value the object.

setRootHandler

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

Parameters: handler the SAX handler.

startDocument

public void startDocument()
Starts processing a document.

Throws: SAXException not in this implementation.

startElement

public void startElement(String uri, String localName, String qName, Attributes attributes)
Starts processing an element.

Parameters: uri the URI. localName the local name. qName the qName. attributes the attributes.

Throws: SAXException if there is a parsing problem.

unwind

public void unwind(String tagName)
Hand control back to the previous handler.

Parameters: tagName the tagname.

Throws: SAXException if there is a problem with the parser. XmlReaderException if there is a problem with the reader.