org.jfree.xml

Class Parser

public abstract class Parser extends FrontendDefaultHandler

The Parser handles the SAXEvents and forwards the event call to the currently active ElementDefinitionHandler. Contains methods to manage and configure the parsing process.

An initial report definition handler must be set before the parser can be used.

Author: Thomas Morgner

Field Summary
static StringCONTENTBASE_KEY
A key for the content base.
Constructor Summary
Parser()
Creates a new parser.
Method Summary
voidcharacters(char[] ch, int start, int length)
Receive notification of character data inside an element.
voidendDocument()
Receive notification of the end of the document.
voidendElement(String uri, String localName, String qName)
Receive notification of the end of an element.
String[]getComments()
Returns the currently collected comments.
ObjectgetHelperObject(String key)
Returns a helper object.
ElementDefinitionHandlergetInitialFactory()
Returns the initial handler.
abstract ParsergetInstance()
Returns a new instance of the parser.
abstract ObjectgetResult()
Returns the parsed result object after the parsing is complete.
FrontendDefaultHandlernewInstance()
ElementDefinitionHandlerpeekFactory()
Reads a handler off the stack without removing it.
ElementDefinitionHandlerpopFactory()
Pops a handler from the stack.
voidpushFactory(ElementDefinitionHandler factory)
Pushes a handler onto the stack.
voidsetHelperObject(String key, Object value)
Sets a helper object.
voidsetInitialFactory(ElementDefinitionHandler factory)
Sets the initial handler.
voidstartDocument()
Receive notification of the beginning of the document.
voidstartElement(String uri, String localName, String qName, Attributes attributes)
Receive notification of the start of an element.

Field Detail

CONTENTBASE_KEY

public static final String CONTENTBASE_KEY
A key for the content base.

Constructor Detail

Parser

public Parser()
Creates a new parser.

Method Detail

characters

public void characters(char[] ch, int start, int length)
Receive notification of character data inside an element.

By default, do nothing. Application writers may override this method to take specific actions for each chunk of character data (such as adding the data to a node or buffer, or printing it to a file).

Parameters: ch the characters. start the start position in the character array. length the number of characters to use from the character array.

Throws: SAXException Any SAX exception, possibly wrapping another exception.

See Also: org.xml.sax.ContentHandler#characters

endDocument

public void endDocument()
Receive notification of the end of the document.

By default, do nothing. Application writers may override this method in a subclass to take specific actions at the end of a document (such as finalising a tree or closing an output file).

Throws: SAXException Any SAX exception, possibly wrapping another exception.

See Also: org.xml.sax.ContentHandler#endDocument

endElement

public void endElement(String uri, String localName, String qName)
Receive notification of the end of an element.

By default, do nothing. Application writers may override this method in a subclass to take specific actions at the end of each element (such as finalising a tree node or writing output to a file).

Parameters: uri the URI. localName the element type name. qName the name.

Throws: SAXException Any SAX exception, possibly wrapping another exception.

See Also: org.xml.sax.ContentHandler#endElement

getComments

public String[] getComments()
Returns the currently collected comments.

Returns: the comments.

getHelperObject

public Object getHelperObject(String key)
Returns a helper object.

Parameters: key the key.

Returns: The object.

getInitialFactory

public ElementDefinitionHandler getInitialFactory()
Returns the initial handler.

Returns: The initial handler.

getInstance

public abstract Parser getInstance()
Returns a new instance of the parser.

Returns: a new instance of the parser.

getResult

public abstract Object getResult()
Returns the parsed result object after the parsing is complete. Calling this function during the parsing is undefined and may result in an IllegalStateException.

Returns: the parsed result.

newInstance

public final FrontendDefaultHandler newInstance()

peekFactory

public ElementDefinitionHandler peekFactory()
Reads a handler off the stack without removing it.

Returns: The handler.

popFactory

public ElementDefinitionHandler popFactory()
Pops a handler from the stack.

Returns: The handler.

pushFactory

public void pushFactory(ElementDefinitionHandler factory)
Pushes a handler onto the stack.

Parameters: factory the handler.

setHelperObject

public void setHelperObject(String key, Object value)
Sets a helper object.

Parameters: key the key. value the value.

setInitialFactory

public void setInitialFactory(ElementDefinitionHandler factory)
Sets the initial handler.

Parameters: factory the initial handler.

startDocument

public void startDocument()
Receive notification of the beginning of the document.

By default, do nothing. Application writers may override this method in a subclass to take specific actions at the beginning of a document (such as allocating the root node of a tree or creating an output file).

Throws: SAXException Any SAX exception, possibly wrapping another exception.

See Also: org.xml.sax.ContentHandler#startDocument

startElement

public void startElement(String uri, String localName, String qName, Attributes attributes)
Receive notification of the start of an element.

By default, do nothing. Application writers may override this method in a subclass to take specific actions at the start of each element (such as allocating a new tree node or writing output to a file).

Parameters: uri the URI. localName the element type name. qName the name. attributes the specified or defaulted attributes.

Throws: SAXException Any SAX exception, possibly wrapping another exception.

See Also: org.xml.sax.ContentHandler#startElement