|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.xml.sax.helpers.DefaultHandler
com.google.gdata.util.XmlParser
public class XmlParser
XML parser.
This is a thin layer on top of a SAX parser. The key concept necessary to understand this parser is Element Handler. Element handlers are type-specific parsers. Each handler instance contains an instance of the Java type corresponding to the XML type it parses. At any given time, one handler is active, and zero or more handlers are kept on the stack. This corresponds directly to the set of currently opened XML tags.
To use this parser, one must define an XmlParser.ElementHandler
type (usually one per XML schema type),
specify the root element handler, and pass a reader to the
parse(Reader, com.google.gdata.util.XmlParser.ElementHandler, String,
String)
method.
XmlParser.ElementHandler
Nested Class Summary | |
---|---|
static class |
XmlParser.ElementHandler
Base class for custom element handlers. |
Field Summary | |
---|---|
protected java.util.HashMap<java.lang.String,java.util.Stack<com.google.gdata.util.XmlParser.NamespaceDecl>> |
namespaceMap
Set of all namespace declarations valid at the current location. |
protected java.lang.String |
rootElementName
Root element name. |
protected XmlParser.ElementHandler |
rootHandler
Root element handler. |
protected java.lang.String |
rootNamespace
Root element namespace URI. |
Constructor Summary | |
---|---|
XmlParser()
|
Method Summary | |
---|---|
void |
characters(char[] text,
int start,
int len)
SAX callback. |
void |
endElement(java.lang.String namespace,
java.lang.String localName,
java.lang.String qName)
SAX callback. |
void |
endPrefixMapping(java.lang.String alias)
SAX callback. |
void |
ignorableWhitespace(char[] text,
int start,
int len)
SAX callback. |
protected void |
parse(org.xml.sax.InputSource is)
Parses XML. |
void |
parse(java.io.InputStream input,
XmlParser.ElementHandler rootHandler,
java.lang.String rootNamespace,
java.lang.String rootElementName)
Parses XML. |
void |
parse(java.io.Reader reader,
XmlParser.ElementHandler rootHandler,
java.lang.String rootNamespace,
java.lang.String rootElementName)
Parses XML. |
void |
parse(XmlParser.ElementHandler rootHandler,
java.lang.String rootNamespace,
java.lang.String rootElementName)
Parses XML from a content source provided to the parser at construction time. |
void |
setDocumentLocator(org.xml.sax.Locator locator)
SAX callback. |
void |
startElement(java.lang.String namespace,
java.lang.String localName,
java.lang.String qName,
org.xml.sax.Attributes attrs)
SAX callback. |
void |
startPrefixMapping(java.lang.String alias,
java.lang.String uri)
SAX callback. |
protected void |
throwParseException(ParseException e)
Throws a parse exception with line/column information. |
Methods inherited from class org.xml.sax.helpers.DefaultHandler |
---|
endDocument, error, fatalError, notationDecl, processingInstruction, resolveEntity, skippedEntity, startDocument, unparsedEntityDecl, warning |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected XmlParser.ElementHandler rootHandler
protected java.lang.String rootNamespace
protected java.lang.String rootElementName
protected java.util.HashMap<java.lang.String,java.util.Stack<com.google.gdata.util.XmlParser.NamespaceDecl>> namespaceMap
Constructor Detail |
---|
public XmlParser()
Method Detail |
---|
public void parse(java.io.Reader reader, XmlParser.ElementHandler rootHandler, java.lang.String rootNamespace, java.lang.String rootElementName) throws java.io.IOException, ParseException
reader
- Supplies the XML to parse.rootHandler
- The root element handler corresponding to the expected document
type.rootNamespace
- Root element namespace URI.rootElementName
- Root element name.
java.io.IOException
- Thrown by reader
.
ParseException
- XML failed to validate against the schema implemented by
rootHandler
.public void parse(java.io.InputStream input, XmlParser.ElementHandler rootHandler, java.lang.String rootNamespace, java.lang.String rootElementName) throws java.io.IOException, ParseException
input
- Supplies the XML to parse.rootHandler
- The root element handler corresponding to the expected document
type.rootNamespace
- Root element namespace URI.rootElementName
- Root element name.
java.io.IOException
- Thrown by input
.
ParseException
- XML failed to validate against the schema implemented by
rootHandler
.public void parse(XmlParser.ElementHandler rootHandler, java.lang.String rootNamespace, java.lang.String rootElementName) throws java.io.IOException, ParseException
rootHandler
- The root element handler corresponding to the expected document
type.rootNamespace
- Root element namespace URI.rootElementName
- Root element name.
java.io.IOException
- Thrown by reader
.
ParseException
- XML failed to validate against the schema implemented by
rootHandler
.protected void parse(org.xml.sax.InputSource is) throws java.io.IOException, ParseException
is
- Supplies the XML to parse.
java.io.IOException
- Thrown by is
.
ParseException
- XML failed to validate against the schema implemented by
rootHandler
.protected void throwParseException(ParseException e) throws ParseException
ParseException
public void startElement(java.lang.String namespace, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attrs) throws org.xml.sax.SAXException
startElement
in interface org.xml.sax.ContentHandler
startElement
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public void endElement(java.lang.String namespace, java.lang.String localName, java.lang.String qName) throws org.xml.sax.SAXException
endElement
in interface org.xml.sax.ContentHandler
endElement
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public void characters(char[] text, int start, int len) throws org.xml.sax.SAXException
characters
in interface org.xml.sax.ContentHandler
characters
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public void ignorableWhitespace(char[] text, int start, int len) throws org.xml.sax.SAXException
ignorableWhitespace
in interface org.xml.sax.ContentHandler
ignorableWhitespace
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public void setDocumentLocator(org.xml.sax.Locator locator)
setDocumentLocator
in interface org.xml.sax.ContentHandler
setDocumentLocator
in class org.xml.sax.helpers.DefaultHandler
public void startPrefixMapping(java.lang.String alias, java.lang.String uri)
startPrefixMapping
in interface org.xml.sax.ContentHandler
startPrefixMapping
in class org.xml.sax.helpers.DefaultHandler
public void endPrefixMapping(java.lang.String alias)
endPrefixMapping
in interface org.xml.sax.ContentHandler
endPrefixMapping
in class org.xml.sax.helpers.DefaultHandler
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |