Package org.gjt.xpp
Interface XmlPullNode
-
- All Superinterfaces:
XmlNode,XmlStartTag,XmlTag
- All Known Implementing Classes:
PullNode
public interface XmlPullNode extends XmlNode
This class represents pullable XML subtree - children are built on demand.- Author:
- Aleksander Slominski
- See Also:
XmlNode
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.Enumerationchildren()This is not recommened method to pull children when node is not finished (use readNextChild() instead) as Enumeration interface does not allow to throw XmlPullParserException so any parsing exeption is wrapped into RuntimeException making code more messy...intgetChildrenCountSoFar()XmlPullParsergetPullParser()Get parser that is use to build this node tree and this pull node becomes finished - the caller is responsibile to move pull parser state to the end tag of this node (or parent pull node will be left in unconsistent state!!!!).booleanisFinished()Is pull parsing of node finished.XmlNodenewNode()context sensitive factory method to create the same type of nodeXmlPullNodenewPullNode(XmlPullParser pp)voidreadChildren()Read all reminaing children up to end tag.java.lang.ObjectreadNextChild()This is preferred method to pull children (children() requires .wrapping object Enumeration).voidresetPullNode()voidsetPullParser(XmlPullParser pp)Reset pull node to use pull parser.voidskipChildren()-
Methods inherited from interface org.gjt.xpp.XmlNode
addDeclaredNamespaces, addNamespaceDeclaration, appendChild, ensureChildrenCapacity, ensureDeclaredNamespacesCapacity, getChildAt, getChildrenCount, getDeclaredNamespaceLength, getDefaultNamespaceUri, getParentNode, getQNameLocal, getQNameUri, insertChildAt, namespace2Prefix, newNode, prefix2Namespace, readDeclaredNamespaceUris, readDeclaredPrefixes, removeChildAt, removeChildren, removeDeclaredNamespaces, replaceChildAt, resetNode, setDefaultNamespaceUri, setParentNode
-
Methods inherited from interface org.gjt.xpp.XmlStartTag
addAttribute, addAttribute, ensureAttributesCapacity, getAttributeCount, getAttributeLocalName, getAttributeNamespaceUri, getAttributePrefix, getAttributeRawName, getAttributeValue, getAttributeValueFromName, getAttributeValueFromRawName, isAttributeNamespaceDeclaration, removeAttributeByName, removeAttributeByRawName, removeAttributes, resetStartTag
-
Methods inherited from interface org.gjt.xpp.XmlTag
getLocalName, getNamespaceUri, getPrefix, getRawName, modifyTag, resetTag
-
-
-
-
Method Detail
-
resetPullNode
void resetPullNode()
-
newNode
XmlNode newNode() throws XmlPullParserException
Description copied from interface:XmlNodecontext sensitive factory method to create the same type of node- Specified by:
newNodein interfaceXmlNode- Throws:
XmlPullParserException
-
newPullNode
XmlPullNode newPullNode(XmlPullParser pp) throws XmlPullParserException
- Throws:
XmlPullParserException
-
isFinished
boolean isFinished()
Is pull parsing of node finished.
-
getPullParser
XmlPullParser getPullParser() throws java.io.IOException, XmlPullParserException
Get parser that is use to build this node tree and this pull node becomes finished - the caller is responsibile to move pull parser state to the end tag of this node (or parent pull node will be left in unconsistent state!!!!). The returned pull parser position will be before start tag of next child or before final end tag and the caller should use next() to move parser to start reading children. The node state becomes finished and subsequent call to this method will throw exception until setPullParser() is called. The final effect should be equivalen to calling skipNode()!NOTE: this pull node must be in unfinished state or exception will be thrown
- Throws:
java.io.IOExceptionXmlPullParserException
-
setPullParser
void setPullParser(XmlPullParser pp) throws XmlPullParserException
Reset pull node to use pull parser. Pull Parser must be on START_TAG- Throws:
XmlPullParserException
-
getChildrenCountSoFar
int getChildrenCountSoFar()
-
children
java.util.Enumeration children()
This is not recommened method to pull children when node is not finished (use readNextChild() instead) as Enumeration interface does not allow to throw XmlPullParserException so any parsing exeption is wrapped into RuntimeException making code more messy...- Specified by:
childrenin interfaceXmlNode- See Also:
readNextChild()
-
readNextChild
java.lang.Object readNextChild() throws XmlPullParserException, java.io.IOExceptionThis is preferred method to pull children (children() requires .wrapping object Enumeration).- Returns:
- next child (which is String or XmlPullNode) or null if there is no re children
- Throws:
XmlPullParserExceptionjava.io.IOException- See Also:
children()
-
readChildren
void readChildren() throws XmlPullParserException, java.io.IOExceptionRead all reminaing children up to end tag.- Throws:
XmlPullParserExceptionjava.io.IOException
-
skipChildren
void skipChildren() throws XmlPullParserException, java.io.IOException- Throws:
XmlPullParserExceptionjava.io.IOException
-
-