org.dom4j.tree
Class DefaultProcessingInstruction

java.lang.Object
  extended byorg.dom4j.tree.AbstractNode
      extended byorg.dom4j.tree.AbstractProcessingInstruction
          extended byorg.dom4j.tree.FlyweightProcessingInstruction
              extended byorg.dom4j.tree.DefaultProcessingInstruction
All Implemented Interfaces:
Cloneable, Node, ProcessingInstruction, Serializable
Direct Known Subclasses:
DOMProcessingInstruction

public class DefaultProcessingInstruction
extends FlyweightProcessingInstruction

DefaultProcessingInstruction is the default Processing Instruction implementation. It is a doubly linked node which supports the parent relationship and can be modified in place.

Version:
$Revision: 1.13 $
Author:
James Strachan
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.dom4j.tree.FlyweightProcessingInstruction
target, text, values
 
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
DefaultProcessingInstruction(Element parent, String target, String values)
           This will create a new PI with the given target and values
DefaultProcessingInstruction(String target, Map values)
           This will create a new PI with the given target and values
DefaultProcessingInstruction(String target, String values)
           This will create a new PI with the given target and values
 
Method Summary
 Element getParent()
           getParent returns the parent Element 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 setTarget(String target)
          This method is the equivalent to the AbstractProcessingInstruction.setName(java.lang.String)method.
 void setText(String text)
           Sets the text data of this node or this method will throw an UnsupportedOperationException if it is read-only.
 void setValue(String name, String value)
           
 void setValues(Map values)
           
 boolean supportsParent()
           supportsParent returns true if this node supports the parent relationship.
 
Methods inherited from class org.dom4j.tree.FlyweightProcessingInstruction
createXPathResult, getTarget, getText, getValue, getValues
 
Methods inherited from class org.dom4j.tree.AbstractProcessingInstruction
accept, asXML, getName, getNodeType, getPath, getUniquePath, parseValues, removeValue, setName, toString, 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, 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, valueOf
 

Constructor Detail

DefaultProcessingInstruction

public DefaultProcessingInstruction(String target,
                                    Map values)

This will create a new PI with the given target and values

Parameters:
target - is the name of the PI
values - is the Map values for the PI

DefaultProcessingInstruction

public DefaultProcessingInstruction(String target,
                                    String values)

This will create a new PI with the given target and values

Parameters:
target - is the name of the PI
values - is the values for the PI

DefaultProcessingInstruction

public DefaultProcessingInstruction(Element parent,
                                    String target,
                                    String values)

This will create a new PI with the given target and values

Parameters:
parent - is the parent element
target - is the name of the PI
values - is the values for the PI
Method Detail

setTarget

public void setTarget(String target)
Description copied from interface: ProcessingInstruction
This method is the equivalent to the Node.setName(java.lang.String)method. It is added for clarity.

Specified by:
setTarget in interface ProcessingInstruction
Overrides:
setTarget in class FlyweightProcessingInstruction

setText

public void setText(String text)
Description copied from interface: Node

Sets the text data of this node or this method will throw an UnsupportedOperationException if it is read-only.

Specified by:
setText in interface Node
Overrides:
setText in class AbstractNode

setValues

public void setValues(Map values)
Specified by:
setValues in interface ProcessingInstruction
Overrides:
setValues in class AbstractProcessingInstruction

setValue

public void setValue(String name,
                     String value)
Specified by:
setValue in interface ProcessingInstruction
Overrides:
setValue in class AbstractProcessingInstruction

getParent

public Element getParent()
Description copied from interface: Node

getParent returns the parent Element 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 interface Node
Overrides:
getParent in class AbstractNode

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 interface Node
Overrides:
setParent in class AbstractNode

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 interface Node
Overrides:
supportsParent in class AbstractNode

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-only Node will result in an UnsupportedOperationException being thrown.

Specified by:
isReadOnly in interface Node
Overrides:
isReadOnly in class AbstractNode


Copyright © 2001-2005 MetaStuff Ltd.. All Rights Reserved.