public final class AttrImpl extends ParentNSNodeImpl implements Attr
Element
node.
Attributes are not real nodes, they are not children in their parent element. Siblings and parents are not accessible.
Attributes in XML documents support children, but only of the type Text
and EntityReference
.
The specified value of an attribute indicates whether it's value has been changed since it was constructed with the default value. The specified value is not used when cloning an attribute or testing for equality.
To speed up implementation, all attributes are implemented as double-linked
list using ParentNodeImpl
. Namespace support is provided by
ParentNSNodeImpl
.
Attr
,
ParentNSNodeImpl
,
ElementImpl
ATTLIST_DECL_NODE, ELEMENT_DECL_NODE, PARAM_ENTITY_NODE
ATTRIBUTE_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_NODE
Modifier and Type | Method and Description |
---|---|
protected NodeImpl |
castNewChild(Node newChild)
Assures that the children of an attribute are either
Text or EntityReference . |
Object |
clone() |
protected void |
cloneInto(NodeImpl into,
boolean deep)
This clone method is called after a new node has been constructed to
copy the contents of this node into the new one.
|
Node |
cloneNode(boolean deep) |
short |
compareDocumentPosition(Node other) |
String |
getBaseURI() |
Object |
getFeature(String feature,
String version) |
String |
getName() |
protected AttrImpl |
getNextAttr()
Return the next attribute following this one.
|
Node |
getNextSibling()
Returns the next sibling of this node.
|
short |
getNodeType()
Abstract method must be implemented by each node class.
|
Element |
getOwnerElement()
Returns the element node this attribute is attached to, or null if
attribute not in use in any element.
|
Node |
getParentNode()
Returns the parent node of this node.
|
Node |
getPreviousSibling()
Returns the previous sibling of this node.
|
TypeInfo |
getSchemaTypeInfo() |
boolean |
getSpecified() |
String |
getTextContent() |
Object |
getUserData(String key) |
String |
getValue() |
boolean |
hasAttributes() |
boolean |
isDefaultNamespace(String namespaceURI) |
boolean |
isEqualNode(Node arg) |
boolean |
isId() |
boolean |
isSameNode(Node other) |
boolean |
isSupported(String feature,
String version) |
String |
lookupNamespaceURI(String prefix) |
String |
lookupPrefix(String namespaceURI) |
void |
setNodeValue(String value)
Changes the value of the node.
|
void |
setTextContent(String textContent) |
Object |
setUserData(String key,
Object data,
UserDataHandler handler) |
void |
setValue(String value) |
String |
toString() |
equals, getLocalName, getNamespaceURI, getPrefix, setPrefix
appendChild, castOldChild, createNodeIterator, getChildNodes, getFirstChild, getLastChild, hasChildNodes, insertBefore, normalize, removeChild, removeInnerIterator, replaceChild
getAttributes, getNodeName, getNodeValue, getOwnerDocument, isReadOnly, makeReadOnly, setOwnerDocument, supports
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
appendChild, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNodeName, getNodeValue, getOwnerDocument, getPrefix, hasChildNodes, insertBefore, normalize, removeChild, replaceChild, setPrefix
public short getNodeType()
NodeImpl
getNodeType
in interface Node
getNodeType
in class NodeImpl
Node.getNodeType()
public boolean getSpecified()
getSpecified
in interface Attr
public void setNodeValue(String value)
NodeImpl
Element Not supported Attr Supported Text Supported CDATASection Supported EntityReference Not supported Entity Not supported ProcessingInstruction Supported Comment Supported Document Not supported DocumentType Not supported DocumentFragment Not supported Notation Not supportedFor most node types, if the value is set to null,
NodeImpl.getNodeValue()
will return an empty string instead.setNodeValue
in interface Node
setNodeValue
in class NodeImpl
value
- New value of nodepublic Node getParentNode()
NodeImpl
Document
node is always
parentless.getParentNode
in interface Node
getParentNode
in class NodeImpl
public Node getPreviousSibling()
NodeImpl
getPreviousSibling
in interface Node
getPreviousSibling
in class NodeImpl
public Node getNextSibling()
NodeImpl
getNextSibling
in interface Node
getNextSibling
in class NodeImpl
public Element getOwnerElement()
getOwnerElement
in interface Attr
protected AttrImpl getNextAttr()
getNextSibling()
returns null by definition of DOM, but outside classes (ElementImpl
and AttrNodeMap
) require traversal over attribute
list.protected void cloneInto(NodeImpl into, boolean deep)
NodeImpl
NodeImpl.equals(java.lang.Object)
).
into must be a valid node of the exact same class as this one. deep is true if deep cloning (includes all children nodes) is to be performed. If deep is false, the clone might not pass the equality test.
Derived classes override and call this method to add per-class variable
copying. This method is called by Node.cloneNode(boolean)
and the default
Object.clone()
method.
Contents cloning duplicates the node's name and value, and its children. It does not duplicate it's context, that is, the node's parent or sibling. Initially a clone node has no parents or siblings. However, the node does belong to the same document, since all nodes must belong to some document. The cloned node is never read-only.
cloneInto
in class ParentNSNodeImpl
into
- A node into which to duplicate this onedeep
- True if deep cloning is requiredprotected NodeImpl castNewChild(Node newChild) throws DOMException
Text
or EntityReference
.castNewChild
in class ParentNodeImpl
newChild
- New child nodeNodeImpl
DOMException
- HIERARCHY_REQUEST_ERR
newChild is null, does not belong to this DOM, or its node
type is not supported for this parentpublic TypeInfo getSchemaTypeInfo()
getSchemaTypeInfo
in interface Attr
public short compareDocumentPosition(Node other) throws DOMException
compareDocumentPosition
in interface Node
DOMException
public String getBaseURI()
getBaseURI
in interface Node
public Object getFeature(String feature, String version)
getFeature
in interface Node
public String getTextContent() throws DOMException
getTextContent
in interface Node
DOMException
public Object getUserData(String key)
getUserData
in interface Node
public boolean isDefaultNamespace(String namespaceURI)
isDefaultNamespace
in interface Node
public boolean isEqualNode(Node arg)
isEqualNode
in interface Node
public boolean isSameNode(Node other)
isSameNode
in interface Node
public String lookupNamespaceURI(String prefix)
lookupNamespaceURI
in interface Node
public String lookupPrefix(String namespaceURI)
lookupPrefix
in interface Node
public void setTextContent(String textContent) throws DOMException
setTextContent
in interface Node
DOMException
public Object setUserData(String key, Object data, UserDataHandler handler)
setUserData
in interface Node
public boolean hasAttributes()
hasAttributes
in interface Node
public boolean isSupported(String feature, String version)
isSupported
in interface Node
Phantom® and NetPhantom® are registered trademarks of Mindus SARL.
© © Mindus SARL, 2024. All rights reserved.