Class DefaultAttribute
- java.lang.Object
-
- org.dom4j.tree.AbstractNode
-
- org.dom4j.tree.AbstractAttribute
-
- org.dom4j.tree.FlyweightAttribute
-
- org.dom4j.tree.DefaultAttribute
-
- All Implemented Interfaces:
Serializable
,Cloneable
,Attribute
,Node
- Direct Known Subclasses:
DOMAttribute
,UserDataAttribute
public class DefaultAttribute extends FlyweightAttribute
DefaultAttribute
implements a doubly linked node which supports the parent relationship and is mutable.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.dom4j.tree.FlyweightAttribute
value
-
Fields inherited from class org.dom4j.tree.AbstractNode
NODE_TYPE_NAMES
-
Fields inherited from interface org.dom4j.Node
ANY_NODE, ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_REFERENCE_NODE, MAX_NODE_TYPE, NAMESPACE_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, UNKNOWN_NODE
-
-
Constructor Summary
Constructors Constructor Description DefaultAttribute(String name, String value)
Creates theAttribute
with the specified local name and value.DefaultAttribute(String name, String value, Namespace namespace)
Creates theAttribute
with the specified local name, value andNamespace
.DefaultAttribute(Element parent, String name, String value, Namespace namespace)
Creates theAttribute
with the specified local name, value andNamespace
.DefaultAttribute(Element parent, QName qname, String value)
DefaultAttribute(QName qname)
DefaultAttribute(QName qname, String value)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Element
getParent()
getParent
returns the parentElement
if this node supports the parent relationship or null if it is the root element or does not support the parent relationship.boolean
isReadOnly()
isReadOnly
returns true if this node is read only and cannot be modified.void
setParent(Element parent)
setParent
sets the parent relationship of this node if the parent relationship is supported or does nothing if the parent relationship is not supported.void
setValue(String value)
Sets the value of this attribute or this method will throw anUnsupportedOperationException
if it is read-only.boolean
supportsParent()
supportsParent
returns true if this node supports the parent relationship.-
Methods inherited from class org.dom4j.tree.FlyweightAttribute
getQName, getValue
-
Methods inherited from class org.dom4j.tree.AbstractAttribute
accept, asXML, createXPathResult, getData, getName, getNamespace, getNamespacePrefix, getNamespaceURI, getNodeType, getPath, getQualifiedName, getText, getUniquePath, setData, setNamespace, setText, toString, write
-
Methods inherited from class org.dom4j.tree.AbstractNode
asXPathResult, clone, createPattern, createXPath, createXPathFilter, detach, getDocument, getDocumentFactory, getNodeTypeName, getPath, getStringValue, getUniquePath, hasContent, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setName, valueOf
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.dom4j.Node
asXPathResult, clone, createXPath, detach, getDocument, getNodeTypeName, getPath, getStringValue, getUniquePath, hasContent, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setName, valueOf
-
-
-
-
Constructor Detail
-
DefaultAttribute
public DefaultAttribute(QName qname)
-
DefaultAttribute
public DefaultAttribute(String name, String value)
Creates theAttribute
with the specified local name and value.- Parameters:
name
- is the name of the attributevalue
- is the value of the attribute
-
DefaultAttribute
public DefaultAttribute(String name, String value, Namespace namespace)
Creates theAttribute
with the specified local name, value andNamespace
.- Parameters:
name
- is the name of the attributevalue
- is the value of the attributenamespace
- is the namespace of the attribute
-
DefaultAttribute
public DefaultAttribute(Element parent, String name, String value, Namespace namespace)
Creates theAttribute
with the specified local name, value andNamespace
.- Parameters:
parent
- is the parent elementname
- is the name of the attributevalue
- is the value of the attributenamespace
- is the namespace of the attribute
-
-
Method Detail
-
setValue
public void setValue(String value)
Description copied from interface:Attribute
Sets the value of this attribute or this method will throw anUnsupportedOperationException
if it is read-only.- Specified by:
setValue
in interfaceAttribute
- Overrides:
setValue
in classAbstractAttribute
- Parameters:
value
- is the new value of this attribute
-
getParent
public Element getParent()
Description copied from interface:Node
getParent
returns the parentElement
if this node supports the parent relationship or null if it is the root element or does not support the parent relationship.This method is an optional feature and may not be supported for all
Node
implementations.- Specified by:
getParent
in interfaceNode
- Overrides:
getParent
in classAbstractNode
- Returns:
- the parent of this node or null if it is the root of the tree or the parent relationship is not supported.
-
setParent
public void setParent(Element parent)
Description copied from interface:Node
setParent
sets the parent relationship of this node if the parent relationship is supported or does nothing if the parent relationship is not supported.This method should only be called from inside an
Element
implementation method and is not intended for general use.- Specified by:
setParent
in interfaceNode
- Overrides:
setParent
in classAbstractNode
- Parameters:
parent
- is the new parent of this node.
-
supportsParent
public boolean supportsParent()
Description copied from interface:Node
supportsParent
returns true if this node supports the parent relationship.Some XML tree implementations are singly linked and only support downward navigation through children relationships. The default case is that both parent and children relationships are supported though for memory and performance reasons the parent relationship may not be supported.
- Specified by:
supportsParent
in interfaceNode
- Overrides:
supportsParent
in classAbstractNode
- Returns:
- true if this node supports the parent relationship or false it is not supported
-
isReadOnly
public boolean isReadOnly()
Description copied from interface:Node
isReadOnly
returns true if this node is read only and cannot be modified. Any attempt to modify a read-onlyNode
will result in anUnsupportedOperationException
being thrown.- Specified by:
isReadOnly
in interfaceNode
- Overrides:
isReadOnly
in classAbstractNode
- Returns:
- true if this
Node
is read only and cannot be modified otherwise false.
-
-