Package org.gjt.xpp
Interface XmlNode
-
- All Superinterfaces:
XmlStartTag,XmlTag
- All Known Subinterfaces:
XmlPullNode
public interface XmlNode extends XmlStartTag
This class represents XML subtree. XmlNode is extension of XmlStartTag adding support for children (some of them may be also XmlNode so we get recursively built tree) and namespaces declarations associated with this node. When node has no children and namespaces declared it is essentially equivalent to XmlStartTag.When XmlNode user does not need namespaces then namespace related methods may be ignored. However to use namespaces it is required to:
- call setDefaultNamespaceUri() to associate default namespace in which this node is declared
- and to declare additional namespaces (as of xmlns:prefix="...") with calling first removeNamespaces() and then addNamespaces()
- Author:
- Aleksander Slominski
- See Also:
XmlStartTag
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddDeclaredNamespaces(java.lang.String[] prefix, int off, int len, java.lang.String[] namespaceUri)NOTE: node SHOULD NOT keep references to passed arrays!voidaddNamespaceDeclaration(java.lang.String prefix, java.lang.String namespaceUri)voidappendChild(java.lang.Object child)java.util.Enumerationchildren()voidensureChildrenCapacity(int minCapacity)voidensureDeclaredNamespacesCapacity(int minCapacity)java.lang.ObjectgetChildAt(int pos)intgetChildrenCount()it may need to reconsruct whole subtree to get count ...intgetDeclaredNamespaceLength()java.lang.StringgetDefaultNamespaceUri()Namesapce URI associated with default namesapce prefix (xmlns='....')XmlNodegetParentNode()java.lang.StringgetQNameLocal(java.lang.String qName)Return local part of qname.java.lang.StringgetQNameUri(java.lang.String qName)Return uri part of qname.voidinsertChildAt(int pos, java.lang.Object child)java.lang.Stringnamespace2Prefix(java.lang.String namespaceUri)return prefix for namesapce searching node tree upward.XmlNodenewNode()context sensitive factory method to create the same type of nodeXmlNodenewNode(java.lang.String amespaceUri, java.lang.String localName)java.lang.Stringprefix2Namespace(java.lang.String prefix)return namespace for prefix searching node tree upward.voidreadDeclaredNamespaceUris(java.lang.String[] uris, int off, int len)voidreadDeclaredPrefixes(java.lang.String[] prefixes, int off, int len)voidremoveChildAt(int pos)voidremoveChildren()Removes all children - every child that was implementing XmlNode will have set parent to null.voidremoveDeclaredNamespaces()voidreplaceChildAt(int pos, java.lang.Object child)voidresetNode()Clear all Tag state to default values.voidsetDefaultNamespaceUri(java.lang.String defaultNamespaceUri)Set default namesapce URI (xmlns='....')voidsetParentNode(XmlNode parent)-
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
-
resetNode
void resetNode()
Clear all Tag state to default values.
-
newNode
XmlNode newNode() throws XmlPullParserException
context sensitive factory method to create the same type of node- Throws:
XmlPullParserException
-
newNode
XmlNode newNode(java.lang.String amespaceUri, java.lang.String localName) throws XmlPullParserException
- Throws:
XmlPullParserException
-
getParentNode
XmlNode getParentNode()
-
setParentNode
void setParentNode(XmlNode parent) throws XmlPullParserException
- Throws:
XmlPullParserException
-
children
java.util.Enumeration children()
-
getChildrenCount
int getChildrenCount()
it may need to reconsruct whole subtree to get count ...
-
getChildAt
java.lang.Object getChildAt(int pos)
-
appendChild
void appendChild(java.lang.Object child) throws XmlPullParserException- Throws:
XmlPullParserException
-
insertChildAt
void insertChildAt(int pos, java.lang.Object child) throws XmlPullParserException- Throws:
XmlPullParserException
-
removeChildAt
void removeChildAt(int pos) throws XmlPullParserException- Throws:
XmlPullParserException
-
replaceChildAt
void replaceChildAt(int pos, java.lang.Object child) throws XmlPullParserException- Throws:
XmlPullParserException
-
ensureChildrenCapacity
void ensureChildrenCapacity(int minCapacity) throws XmlPullParserException- Throws:
XmlPullParserException
-
removeChildren
void removeChildren() throws XmlPullParserExceptionRemoves all children - every child that was implementing XmlNode will have set parent to null.- Throws:
XmlPullParserException
-
getQNameLocal
java.lang.String getQNameLocal(java.lang.String qName) throws XmlPullParserExceptionReturn local part of qname. For example for 'xsi:type' it returns 'type'.- Throws:
XmlPullParserException
-
getQNameUri
java.lang.String getQNameUri(java.lang.String qName) throws XmlPullParserExceptionReturn uri part of qname. The return value is dependent on declared namespaces in this node and possible when looking for value in parent node. For example for 'xsi:type' if xsi namespace prefix was declared to 'http://foo' it will return 'http://foo'.- Throws:
XmlPullParserException
-
prefix2Namespace
java.lang.String prefix2Namespace(java.lang.String prefix) throws XmlPullParserExceptionreturn namespace for prefix searching node tree upward.- Throws:
XmlPullParserException
-
namespace2Prefix
java.lang.String namespace2Prefix(java.lang.String namespaceUri) throws XmlPullParserExceptionreturn prefix for namesapce searching node tree upward.- Throws:
XmlPullParserException
-
getDefaultNamespaceUri
java.lang.String getDefaultNamespaceUri()
Namesapce URI associated with default namesapce prefix (xmlns='....')
-
setDefaultNamespaceUri
void setDefaultNamespaceUri(java.lang.String defaultNamespaceUri) throws XmlPullParserExceptionSet default namesapce URI (xmlns='....')- Throws:
XmlPullParserException
-
getDeclaredNamespaceLength
int getDeclaredNamespaceLength()
-
readDeclaredNamespaceUris
void readDeclaredNamespaceUris(java.lang.String[] uris, int off, int len) throws XmlPullParserException- Throws:
XmlPullParserException
-
readDeclaredPrefixes
void readDeclaredPrefixes(java.lang.String[] prefixes, int off, int len) throws XmlPullParserException- Throws:
XmlPullParserException
-
ensureDeclaredNamespacesCapacity
void ensureDeclaredNamespacesCapacity(int minCapacity) throws XmlPullParserException- Throws:
XmlPullParserException
-
addNamespaceDeclaration
void addNamespaceDeclaration(java.lang.String prefix, java.lang.String namespaceUri) throws XmlPullParserException- Throws:
XmlPullParserException
-
addDeclaredNamespaces
void addDeclaredNamespaces(java.lang.String[] prefix, int off, int len, java.lang.String[] namespaceUri) throws XmlPullParserExceptionNOTE: node SHOULD NOT keep references to passed arrays!- Throws:
XmlPullParserException
-
removeDeclaredNamespaces
void removeDeclaredNamespaces() throws XmlPullParserException- Throws:
XmlPullParserException
-
-