public class ElementImpl extends ParentNode implements Element, OMElement, OMConstants
| Modifier and Type | Field and Description |
|---|---|
protected String |
localName |
protected OMNamespace |
namespace |
firstChild, lastChildnextSibling, parentNode, previousSiblingbuilder, done, factory, FIRSTCHILD, flags, NORMALIZED, OWNED, ownerNode, READONLY, SPECIFIEDATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODECDATA_SECTION_NODE, COMMENT_NODE, DTD_NODE, ELEMENT_NODE, ENTITY_REFERENCE_NODE, PI_NODE, SPACE_NODE, TEXT_NODEARRAY_ITEM_LOCALNAME, ARRAY_ITEM_NS_PREFIX, ARRAY_ITEM_NSURI, ARRAY_ITEM_QNAME, DATA_HANDLER, DEFAULT_CHAR_SET_ENCODING, DEFAULT_DEFAULT_NAMESPACE, DEFAULT_XML_VERSION, IS_BINARY, IS_DATA_HANDLERS_AWARE, PULL_TYPE_BUILDER, PUSH_TYPE_BUILDER, XMLATTRTYPE_CDATA, XMLATTRTYPE_ENTITIES, XMLATTRTYPE_ENTITY, XMLATTRTYPE_ID, XMLATTRTYPE_IDREF, XMLATTRTYPE_IDREFS, XMLATTRTYPE_NMTOKEN, XMLATTRTYPE_NMTOKENS, XMLATTRTYPE_NOTATION, XMLNS_NS_PREFIX, XMLNS_NS_URI, XMLNS_PREFIX, XMLNS_URI| Constructor and Description |
|---|
ElementImpl(DocumentImpl ownerDocument,
String tagName,
NamespaceImpl ns,
OMFactory factory)
Creates a new element with the namespace.
|
ElementImpl(DocumentImpl ownerDocument,
String tagName,
NamespaceImpl ns,
OMXMLParserWrapper builder,
OMFactory factory) |
ElementImpl(DocumentImpl ownerDocument,
String tagName,
OMFactory factory) |
ElementImpl(OMFactory factory) |
ElementImpl(ParentNode parentNode,
String tagName,
NamespaceImpl ns,
OMFactory factory) |
ElementImpl(ParentNode parentNode,
String tagName,
NamespaceImpl ns,
OMXMLParserWrapper builder,
OMFactory factory) |
ElementImpl(String tagName,
NamespaceImpl ns,
OMXMLParserWrapper builder,
OMFactory factory) |
| Modifier and Type | Method and Description |
|---|---|
OMAttribute |
addAttribute(OMAttribute attr)
Adds an attribute to this element.
|
OMAttribute |
addAttribute(String localName,
String value,
OMNamespace ns)
Adds an attribute to this element.
|
void |
buildWithAttachments()
Parses this node and builds the object structure in memory.
|
Node |
cloneNode(boolean deep) |
OMElement |
cloneOMElement()
Creates a clone which belongs to a new document.
|
OMNamespace |
declareDefaultNamespace(String uri)
We use "" to store the default namespace of this element.
|
OMNamespace |
declareNamespace(OMNamespace namespace)
Allows overriding an existing declaration if the same prefix was used.
|
OMNamespace |
declareNamespace(String uri,
String prefix)
Allows overriding an existing declaration if the same prefix was used.
|
void |
discard()
Discards a node.
|
OMNamespace |
findNamespace(String uri,
String prefix)
Finds a namespace with the given uri and prefix, in the scope of the hierarchy.
|
OMNamespace |
findNamespaceURI(String prefix)
Checks for a namespace in the context of this element with the given prefix and returns the
relevant namespace object, if available.
|
Iterator |
getAllAttributes()
Returns a list of OMAttributes.
|
Iterator |
getAllDeclaredNamespaces()
Returns an iterator for all of the namespaces declared on this element.
|
OMAttribute |
getAttribute(QName qname)
Returns a named attribute if present.
|
String |
getAttribute(String name)
Looks in the local list of attributes and returns if found.
|
Attr |
getAttributeNode(String name)
Retrieves an attribute node by name.
|
Attr |
getAttributeNodeNS(String namespaceURI,
String localName)
Retrieves an attribute node by local name and namespace URI.
|
String |
getAttributeNS(String namespaceURI,
String localName)
Retrieves an attribute value by local name and namespace URI.
|
NamedNodeMap |
getAttributes()
Returns the set of attributes of this node and the namespace declarations available.
|
String |
getAttributeValue(QName qname)
Returns a named attribute's value, if present.
|
Iterator |
getChildElements()
Returns a filtered list of children - just the elements.
|
OMNamespace |
getDefaultNamespace()
This will retrieve the default namespace of this element, if available. null returned if none
is found.
|
NodeList |
getElementsByTagName(String name) |
NodeList |
getElementsByTagNameNS(String namespaceURI,
String localName) |
OMElement |
getFirstElement()
Returns the first Element node.
|
int |
getLineNumber() |
String |
getLocalName()
Returns the local name of this element node
|
OMNamespace |
getNamespace()
Returns the namespace of this element.
|
String |
getNamespaceURI()
Returns the value of the namespace URI.
|
String |
getNamespaceURI(String prefix)
Returns the namespace uri, given the prefix.
|
OMNode |
getNextOMSibling()
Default behavior returns null, overriden in ChildNode.
|
String |
getNodeName() |
short |
getNodeType() |
String |
getPrefix()
Returns the namespace prefix of this element node
|
QName |
getQName()
Returns the QName of this element.
|
TypeInfo |
getSchemaTypeInfo() |
String |
getTagName() |
String |
getText()
Gets all the text children and concatinates them to a single string.
|
QName |
getTextAsQName()
OMText can contain its information as a QName as well.
|
String |
getTrimmedText() |
int |
getType()
Returns the type of node.
|
boolean |
hasAttribute(String name) |
boolean |
hasAttributeNS(String namespaceURI,
String localName)
Returns whether the given attribute is available or not.
|
boolean |
hasAttributes()
Returns whether this element contains any attribute or not.
|
void |
internalSerialize(XMLStreamWriter writer,
boolean cache)
Serializes the node.
|
void |
removeAttribute(OMAttribute attr)
Removes an attribute from the element.
|
void |
removeAttribute(String name)
Removes an attribute by name.
|
Attr |
removeAttributeNode(Attr oldAttr)
Removes the specified attribute node.
|
void |
removeAttributeNS(String namespaceURI,
String localName) |
boolean |
removeNamespace(String prefix)
Removes a declared namespace given its prefix.
|
QName |
resolveQName(String qname)
Resolves a QName literal in the namespace context defined by this element and produces a
corresponding
QName object. |
void |
setAttribute(String name,
String value) |
Attr |
setAttributeNode(Attr attr)
Adds a new attribute node.
|
Attr |
setAttributeNodeNS(Attr attr) |
void |
setAttributeNS(String namespaceURI,
String qualifiedName,
String value)
Adds a new attribute.
|
void |
setBuilder(OMXMLParserWrapper wrapper)
Sets the OM builder.
|
void |
setIdAttribute(String name,
boolean isId) |
void |
setIdAttributeNode(Attr idAttr,
boolean isId) |
void |
setIdAttributeNS(String namespaceURI,
String localName,
boolean isId) |
void |
setLineNumber(int lineNumber) |
void |
setLocalName(String localName)
Sets the local name.
|
void |
setNamespace(OMNamespace namespace)
Sets the namespace.
|
void |
setNamespaceWithNoFindInCurrentScope(OMNamespace namespace)
This will not search the namespace in the scope nor will declare in the current element, as
in setNamespace(OMNamespace).
|
protected void |
setOwnerDocument(DocumentImpl document)
Sets the owner document.
|
void |
setText(QName text)
Set the content of this element to the given QName.
|
void |
setText(String text)
Creates a text node with the given value and adds it to the element.
|
void |
setType(int nodeType) |
String |
toString()
Overridden toString() for ease of debugging.
|
String |
toStringWithConsume()
This is a convenience method only.
|
addChild, buildNext, getBuilder, getChildNodes, getChildren, getChildrenWithLocalName, getChildrenWithName, getChildrenWithNamespaceURI, getFirstChild, getFirstChildWithName, getFirstOMChild, getFirstOMChildIfAvailable, getLastChild, getTextContent, getXMLStreamReader, getXMLStreamReader, getXMLStreamReaderWithoutCaching, hasChildNodes, importNode, insertBefore, removeChild, replaceChild, setFirstChild, setLastChild, setTextContentdetach, getNextOMSiblingIfAvailable, getNextSibling, getParent, getParentNode, getPreviousOMSibling, getPreviousSibling, insertSiblingAfter, insertSiblingBefore, setNextOMSibling, setParent, setPreviousOMSiblingappendChild, build, close, compareDocumentPosition, getBaseURI, getFeature, getLength, getNodeValue, getOMFactory, getOwnerDocument, getUserData, internalSerialize, internalSerializeAndConsume, isComplete, isDefaultNamespace, isEqualNode, isSameNode, isSupported, item, lookupNamespaceURI, lookupPrefix, normalize, serialize, serialize, serialize, serialize, serialize, serialize, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, setComplete, setNodeValue, setPrefix, setUserDataclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitappendChild, compareDocumentPosition, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getNextSibling, getNodeValue, getOwnerDocument, getParentNode, getPreviousSibling, getTextContent, getUserData, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserDataserialize, serialize, serialize, serialize, serializeAndConsume, serializeAndConsume, serializeAndConsume, serializeAndConsume, setFirstChilddetach, getParent, getPreviousOMSibling, insertSiblingAfter, insertSiblingBeforeaddChild, buildNext, getBuilder, getChildren, getChildrenWithLocalName, getChildrenWithName, getChildrenWithNamespaceURI, getFirstChildWithName, getFirstOMChild, getXMLStreamReader, getXMLStreamReader, getXMLStreamReaderWithoutCachingbuild, close, getOMFactory, isComplete, serialize, serialize, serializeAndConsumesetCompleteprotected OMNamespace namespace
protected String localName
public ElementImpl(DocumentImpl ownerDocument, String tagName, OMFactory factory)
ownerDocument - ownerDocumenttagName - tagNamefactory - OMFactorypublic ElementImpl(DocumentImpl ownerDocument, String tagName, NamespaceImpl ns, OMFactory factory)
ownerDocument - tagName - ns - factory - public ElementImpl(DocumentImpl ownerDocument, String tagName, NamespaceImpl ns, OMXMLParserWrapper builder, OMFactory factory)
public ElementImpl(ParentNode parentNode, String tagName, NamespaceImpl ns, OMFactory factory)
public ElementImpl(ParentNode parentNode, String tagName, NamespaceImpl ns, OMXMLParserWrapper builder, OMFactory factory)
public ElementImpl(String tagName, NamespaceImpl ns, OMXMLParserWrapper builder, OMFactory factory)
public ElementImpl(OMFactory factory)
public short getNodeType()
getNodeType in interface Nodepublic String getNodeName()
getNodeName in interface Nodepublic String getNamespaceURI()
getNamespaceURI in interface OMElementgetNamespaceURI in interface NodegetNamespaceURI in class NodeImplnull if the element has no namespacepublic int getType()
throws OMException
OMNodegetType in interface OMNodeOMNode.ELEMENT_NODE, OMNode.TEXT_NODE, OMNode.CDATA_SECTION_NODE,
OMNode.COMMENT_NODE, OMNode.DTD_NODE, OMNode.PI_NODE, OMNode.ENTITY_REFERENCE_NODE or OMNode.SPACE_NODE.OMExceptionpublic void setType(int nodeType)
throws OMException
setType in interface OMNodeExOMExceptionpublic String getTagName()
getTagName in interface Elementpublic void removeAttribute(String name) throws DOMException
removeAttribute in interface Elementname - The name of the attribute to removeDOMExceptionElement.removeAttribute(String)public void removeAttributeNS(String namespaceURI, String localName) throws DOMException
removeAttributeNS in interface ElementDOMExceptionpublic Attr removeAttributeNode(Attr oldAttr) throws DOMException
removeAttributeNode in interface ElementDOMExceptionElement.removeAttributeNode(org.w3c.dom.Attr)public boolean hasAttribute(String name)
hasAttribute in interface Elementpublic boolean hasAttributeNS(String namespaceURI, String localName)
hasAttributeNS in interface ElementElement.hasAttributeNS(String, String)public String getAttribute(String name)
getAttribute in interface ElementElement.getAttribute(String)public Attr getAttributeNode(String name)
getAttributeNode in interface ElementElement.getAttributeNode(String)public String getAttributeNS(String namespaceURI, String localName)
getAttributeNS in interface ElementElement.getAttributeNS(String, String)public Attr getAttributeNodeNS(String namespaceURI, String localName)
getAttributeNodeNS in interface ElementElement.getAttributeNodeNS(String, String)public Attr setAttributeNode(Attr attr) throws DOMException
setAttributeNode in interface ElementDOMExceptionElement.setAttributeNode(org.w3c.dom.Attr)public void setAttribute(String name, String value) throws DOMException
setAttribute in interface ElementDOMExceptionpublic Attr setAttributeNodeNS(Attr attr) throws DOMException
setAttributeNodeNS in interface ElementDOMExceptionpublic void setAttributeNS(String namespaceURI, String qualifiedName, String value) throws DOMException
setAttributeNS in interface ElementDOMExceptionElement.setAttributeNS(String, String, String)public boolean hasAttributes()
hasAttributes in interface NodehasAttributes in class NodeImplpublic NodeList getElementsByTagNameNS(String namespaceURI, String localName)
getElementsByTagNameNS in interface Elementpublic NodeList getElementsByTagName(String name)
getElementsByTagName in interface Elementpublic OMAttribute addAttribute(OMAttribute attr)
OMElement
If the attribute already has an owner, the attribute is cloned (i.e. its name, value and
namespace are copied to a new attribute) and the new attribute is added to the element.
Otherwise the existing instance specified by the attr parameter is added to
the element. In both cases the owner of the added attribute is set to be the particular
OMElement.
If there is already an attribute with the same name and namespace URI, it will be replaced
and its owner set to null.
In the particular case where the attribute specified by attr is already owned
by the element, calling this method has no effect.
Attributes are not stored in any particular order. In particular, there is no guarantee
that the added attribute will be returned as the last item by the iterator produced by
a subsequent call to OMElement.getAllAttributes().
If the attribute being added has a namespace, but no corresponding namespace declaration is in scope for the element (i.e. declared on the element or one of its ancestors), a new namespace declaration is added to the element. Note that both the namespace prefix and URI are taken into account when looking for an existing namespace declaration.
addAttribute in interface OMElementattr - The attribute to add.attr, depending on whether the attribute specified
by this parameter already has an owner or not.(org.apache.axiom.om.OMAttribute)public OMAttribute addAttribute(String localName, String value, OMNamespace ns)
OMElement
If the element already has an attribute with the same local name and namespace URI, then this
existing attribute will be removed from the element, i.e. this method will always create a
new OMAttribute instance and never update an existing one.
addAttribute in interface OMElementlocalName - The local name for the attribute.value - The string value of the attribute. This function does not check to make sure that
the given attribute value can be serialized directly as an XML value. The caller
may, for example, pass a string with the character 0x01.ns - The namespace has to be one of the in scope namespace. i.e. the passed namespace
must be declared in the parent element of this attribute or ancestors of the
parent element of the attribute.public OMNamespace declareNamespace(OMNamespace namespace)
declareNamespace in interface OMElementnamespace - The namespace to declare.(org.apache.axiom.om.OMNamespace)public OMNamespace declareNamespace(String uri, String prefix)
declareNamespace in interface OMElementuri - The namespace to declare in the current scope. The caller is expected to
ensure that the URI is a valid namespace name.prefix - The prefix to associate with the given namespace. The caller is expected to
ensure that this is a valid XML prefix. If "" is given, first this will check
for an existing namespace with the same uri. If not found, a prefix will be
auto-generated.OMElement.declareNamespace(String, String)public OMNamespace declareDefaultNamespace(String uri)
declareDefaultNamespace in interface OMElementuri - public OMNamespace getDefaultNamespace()
OMElementgetDefaultNamespace in interface OMElementpublic OMNamespace findNamespace(String uri, String prefix)
OMElementSearches from the current element and goes up the hiararchy until a match is found. If no match is found, returns null.
Either prefix or uri should be null. Results are undefined if both are specified.
findNamespace in interface OMElementuri - The namespace to look for. If this is specified, prefix should be
null.prefix - The prefix to look for. If this is specified, uri should be null.OMElement.findNamespace(String, String)public OMNamespace findNamespaceURI(String prefix)
OMElementfindNamespaceURI in interface OMElementpublic OMAttribute getAttribute(QName qname)
getAttribute in interface OMElementqname - the qualified name to search for(javax.xml.namespace.QName)public String getAttributeValue(QName qname)
getAttributeValue in interface OMElementqname - the qualified name to search forpublic OMElement getFirstElement()
getFirstElement in interface OMElementOMElement.getFirstElement()public OMNamespace getNamespace()
getNamespace in interface OMElementnull if the element has no namespaceOMElement.getNamespace()public QName getQName()
getQName in interface OMElementQName for the element.OMElement.getQName()public String getText()
getText in interface OMElementOMElement.getText()public QName getTextAsQName()
OMElementgetTextAsQName in interface OMElementpublic String getTrimmedText()
public void removeAttribute(OMAttribute attr)
removeAttribute in interface OMElement(org.apache.axiom.om.OMAttribute)public void setBuilder(OMXMLParserWrapper wrapper)
setBuilder in interface OMElement(org.apache.axiom.om.OMXMLParserWrapper)public void setLocalName(String localName)
setLocalName in interface OMElementOMElement.setLocalName(String)public void setNamespace(OMNamespace namespace)
setNamespace in interface OMElement(org.apache.axiom.om.OMNamespace)public void setNamespaceWithNoFindInCurrentScope(OMNamespace namespace)
OMElementsetNamespaceWithNoFindInCurrentScope in interface OMElementpublic void setText(String text)
setText in interface OMElementOMElement.setText(String)public void setText(QName text)
OMElementpublic void internalSerialize(XMLStreamWriter writer, boolean cache) throws XMLStreamException
OMNodeExOMSerializable.serialize(XMLStreamWriter, boolean) instead.internalSerialize in interface OMNodeExcache - indicates if caching should be enabledXMLStreamExceptionpublic String toStringWithConsume() throws XMLStreamException
OMElementtoStringWithConsume in interface OMElementXMLStreamExceptionpublic String toString()
toString in interface OMElementtoString in class ObjectObject.toString()public Iterator getChildElements()
OMElementgetChildElements in interface OMElementOMContainer.getChildren(),
OMContainer.getChildrenWithName(javax.xml.namespace.QName)public Iterator getAllDeclaredNamespaces() throws OMException
OMElementIf you're interested in all namespaces in scope, you need to call this function for all parent elements as well. Note that the iterator may be invalidated by any call to either declareNamespace function.
getAllDeclaredNamespaces in interface OMElementOMNamespace items declared on the current
element.OMExceptionOMElement.getAllDeclaredNamespaces()public Iterator getAllAttributes()
OMElementNote that the iterator returned by this function will be invalidated by any addAttribute call.
getAllAttributes in interface OMElementIterator of OMAttribute items associated with the
element.OMElement.getAllAttributes()public String getLocalName()
getLocalName in interface OMElementgetLocalName in interface NodegetLocalName in class NodeImplNode.getLocalName()public String getPrefix()
getPrefix in interface NodegetPrefix in class NodeImplNode.getPrefix()protected void setOwnerDocument(DocumentImpl document)
NodeImplsetOwnerDocument in class NodeImpl(org.apache.axiom.om.impl.dom.DocumentImpl)public QName resolveQName(String qname)
OMElementQName object. The implementation uses the algorithm defined by the XML
Schema specification. In particular, the namespace for an unprefixed QName is the default
namespace (not the null namespace), i.e. QNames are resolved in the same way as element
names.resolveQName in interface OMElementqname - the QName literal to resolveQName object, or null if the QName can't be resolved, i.e.
if the prefix is not bound in the namespace context of this elementpublic OMElement cloneOMElement()
cloneOMElement in interface OMElementOMElement.cloneOMElement()public void setLineNumber(int lineNumber)
setLineNumber in interface OMElementpublic int getLineNumber()
getLineNumber in interface OMElementpublic Node cloneNode(boolean deep)
cloneNode in interface NodecloneNode in class ParentNodepublic NamedNodeMap getAttributes()
getAttributes in interface NodegetAttributes in class NodeImplElementImplpublic String getNamespaceURI(String prefix)
prefix - public boolean removeNamespace(String prefix)
prefix - public OMNode getNextOMSibling() throws OMException
NodeImplgetNextOMSibling in interface OMNodegetNextOMSibling in class ChildNodeOMExceptionpublic void discard()
throws OMException
OMNodediscard in interface OMNodediscard in class ChildNodeOMExceptionpublic void setIdAttribute(String name, boolean isId) throws DOMException
setIdAttribute in interface ElementDOMExceptionpublic void setIdAttributeNS(String namespaceURI, String localName, boolean isId) throws DOMException
setIdAttributeNS in interface ElementDOMExceptionpublic void setIdAttributeNode(Attr idAttr, boolean isId) throws DOMException
setIdAttributeNode in interface ElementDOMExceptionpublic TypeInfo getSchemaTypeInfo()
getSchemaTypeInfo in interface Elementpublic void buildWithAttachments()
NodeImplbuildWithAttachments in interface OMNodebuildWithAttachments in class NodeImplCopyright © 2004–2016 The Apache Software Foundation. All rights reserved.