Package org.gjt.xpp
Interface XmlPullNode
-
- All Superinterfaces:
XmlNode
,XmlStartTag
,XmlTag
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.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...int
getChildrenCountSoFar()
XmlPullParser
getPullParser()
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!!!!).boolean
isFinished()
Is pull parsing of node finished.XmlNode
newNode()
context sensitive factory method to create the same type of nodeXmlPullNode
newPullNode(XmlPullParser pp)
void
readChildren()
Read all reminaing children up to end tag.java.lang.Object
readNextChild()
This is preferred method to pull children (children() requires .wrapping object Enumeration).void
resetPullNode()
void
setPullParser(XmlPullParser pp)
Reset pull node to use pull parser.void
skipChildren()
-
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:XmlNode
context sensitive factory method to create the same type of node- Specified by:
newNode
in 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.IOException
XmlPullParserException
-
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:
children
in interfaceXmlNode
- See Also:
readNextChild()
-
readNextChild
java.lang.Object readNextChild() throws XmlPullParserException, java.io.IOException
This 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:
XmlPullParserException
java.io.IOException
- See Also:
children()
-
readChildren
void readChildren() throws XmlPullParserException, java.io.IOException
Read all reminaing children up to end tag.- Throws:
XmlPullParserException
java.io.IOException
-
skipChildren
void skipChildren() throws XmlPullParserException, java.io.IOException
- Throws:
XmlPullParserException
java.io.IOException
-
-