|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.xml.sax.helpers.DefaultHandler
org.onemind.commons.java.xml.digest.SaxDigesterHandler
public class SaxDigesterHandler
The SaxDigesterHandler use digesters to digest the elements in the xml. The digesters can be added using the addDigester(). By default the sequential digester list is used.
| Field Summary | |
|---|---|
private java.util.Map |
_digesters
the map contains subdigesters |
private java.util.List |
_elementPath
keep track of the path for current element |
private static java.util.logging.Logger |
_logger
the logger * |
| Constructor Summary | |
|---|---|
SaxDigesterHandler()
Constructor |
|
| Method Summary | |
|---|---|
void |
addDigester(ElementDigester dig)
Adding a digester to the root path |
void |
addDigester(java.lang.String path,
ElementDigester dig)
Add a digester for the path |
void |
addSubDigester(ElementDigester dig)
Add a subdigester to current element path |
void |
addSubDigester(java.lang.String prefixPath,
ElementDigester dig)
Add a sub digester at a path of current path + prefixPath |
private java.lang.String |
appendElementPath(java.lang.String name)
Append the name to the element path and return the new path string |
void |
characters(char[] ch,
int start,
int length)
|
void |
endDocument()
|
void |
endElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName)
|
java.lang.String |
getCurrentPath()
Get the current element path |
private ElementDigester |
getDigester(java.lang.String path)
Get the digester for particular path |
void |
parse(java.io.InputStream stream)
Parse an input |
private java.lang.String |
removeElementPath(java.lang.String qname)
Remove the element path |
private void |
startDigest(java.lang.String path,
org.xml.sax.Attributes attr)
Call start of particular element digester, if there's any |
void |
startDocument()
|
void |
startElement(java.lang.String namespaceURI,
java.lang.String lName,
java.lang.String qName,
org.xml.sax.Attributes attrs)
|
| 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 |
| Field Detail |
|---|
private static final java.util.logging.Logger _logger
private java.util.Map _digesters
private java.util.List _elementPath
| Constructor Detail |
|---|
public SaxDigesterHandler()
| Method Detail |
|---|
public void addDigester(ElementDigester dig)
dig - the digester
public void addDigester(java.lang.String path,
ElementDigester dig)
path - the pathdig - the digesterpublic void addSubDigester(ElementDigester dig)
dig - the digester
public void addSubDigester(java.lang.String prefixPath,
ElementDigester dig)
prefixPath - the prefix pathdig - the digesterprivate java.lang.String appendElementPath(java.lang.String name)
name - the name of new element
public void characters(char[] ch,
int start,
int length)
throws org.xml.sax.SAXException
characters in interface org.xml.sax.ContentHandlercharacters in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXException
public void endDocument()
throws org.xml.sax.SAXException
endDocument in interface org.xml.sax.ContentHandlerendDocument in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXException
public void endElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName)
throws org.xml.sax.SAXException
endElement in interface org.xml.sax.ContentHandlerendElement in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXExceptionpublic java.lang.String getCurrentPath()
private ElementDigester getDigester(java.lang.String path)
path - the path
private java.lang.String removeElementPath(java.lang.String qname)
qname - the element name is being removed
public void startDocument()
throws org.xml.sax.SAXException
startDocument in interface org.xml.sax.ContentHandlerstartDocument in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXException
private void startDigest(java.lang.String path,
org.xml.sax.Attributes attr)
throws org.xml.sax.SAXException
attr - the attributepath - the path
org.xml.sax.SAXException
public void startElement(java.lang.String namespaceURI,
java.lang.String lName,
java.lang.String qName,
org.xml.sax.Attributes attrs)
throws org.xml.sax.SAXException
startElement in interface org.xml.sax.ContentHandlerstartElement in class org.xml.sax.helpers.DefaultHandlerorg.xml.sax.SAXException
public void parse(java.io.InputStream stream)
throws javax.xml.parsers.ParserConfigurationException,
org.xml.sax.SAXException,
java.io.IOException
stream - the stream
javax.xml.parsers.ParserConfigurationException
org.xml.sax.SAXException
java.io.IOException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||