org.dom4j.tree
Class AbstractProcessingInstruction

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

public abstract class AbstractProcessingInstruction
extends AbstractNode
implements ProcessingInstruction

AbstractProcessingInstruction is an abstract base class for tree implementors to use for implementation inheritence.

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

Field Summary
 
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
AbstractProcessingInstruction()
           
 
Method Summary
 void accept(Visitor visitor)
           accept is the method used in the Visitor Pattern.
 String asXML()
           asXML returns the textual XML representation of this node.
 String getName()
           getName returns the name of this node.
 short getNodeType()
          Returns the code according to the type of node.
 String getPath(Element context)
          Returns the relative XPath expression which will return a node set containing the given node such as a/b/@c.
 String getUniquePath(Element context)
           Returns the relative unique XPath expression from the given context which will return a nodeset of one node which is the current node.
protected  Map parseValues(String text)
           Parses the raw data of PI as a Map.
 boolean removeValue(String name)
           
 void setName(String name)
           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 data)
           
 String toString()
           
protected  String toString(Map values)
           This will convert the Map to a string representation.
 void write(Writer writer)
           write writes this node as the default XML notation for this node.
 
Methods inherited from class org.dom4j.tree.AbstractNode
asXPathResult, clone, createPattern, createXPath, createXPathFilter, createXPathResult, detach, getDocument, getDocumentFactory, getNodeTypeName, getParent, getPath, getStringValue, getText, getUniquePath, hasContent, isReadOnly, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setParent, setText, supportsParent, valueOf
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.dom4j.ProcessingInstruction
getTarget, getText, getValue, getValues, setTarget
 
Methods inherited from interface org.dom4j.Node
asXPathResult, clone, createXPath, detach, getDocument, getNodeTypeName, getParent, getPath, getStringValue, getUniquePath, hasContent, isReadOnly, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setParent, setText, supportsParent, valueOf
 

Constructor Detail

AbstractProcessingInstruction

public AbstractProcessingInstruction()
Method Detail

getNodeType

public short getNodeType()
Description copied from interface: Node
Returns the code according to the type of node. This makes processing nodes polymorphically much easier as the switch statement can be used instead of multiple if (instanceof) statements.

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

getPath

public String getPath(Element context)
Description copied from interface: Node
Returns the relative XPath expression which will return a node set containing the given node such as a/b/@c. No indexing will be used to restrict the path if multiple elements with the same name occur on the path.

Specified by:
getPath in interface Node
Parameters:
context - is the parent context from which the relative path should start. If the context is null or the context is not an ancestor of this node then the path will be absolute and start from the document and so begin with the '/' character.
Returns:
the XPath expression relative to the given context which will return a nodeset containing at least this node.

getUniquePath

public String getUniquePath(Element context)
Description copied from interface: Node

Returns the relative unique XPath expression from the given context which will return a nodeset of one node which is the current node. This method will use the XPath index operator to restrict the path if multiple elements with the same name occur on the path.

Specified by:
getUniquePath in interface Node
Parameters:
context - is the parent context from which the path should start. If the context is null or the context is not an ancestor of this node then the path will start from the document and so begin with the '/' character.
Returns:
the XPath expression relative to the given context which will return a nodeset containing just this node.

toString

public String toString()

asXML

public String asXML()
Description copied from interface: Node

asXML returns the textual XML representation of this node.

Specified by:
asXML in interface Node
Returns:
the XML representation of this node

write

public void write(Writer writer)
           throws IOException
Description copied from interface: Node

write writes this node as the default XML notation for this node. If you wish to control the XML output (such as for pretty printing, changing the indentation policy etc.) then please use XMLWriter or its derivations.

Specified by:
write in interface Node
Overrides:
write in class AbstractNode
Throws:
IOException

accept

public void accept(Visitor visitor)
Description copied from interface: Node

accept is the method used in the Visitor Pattern.

Specified by:
accept in interface Node
Parameters:
visitor - is the visitor in the Visitor Pattern

setValue

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

setValues

public void setValues(Map data)
Specified by:
setValues in interface ProcessingInstruction

getName

public String getName()
Description copied from interface: Node

getName returns the name of this node. This is the XML local name of the element, attribute, entity or processing instruction. For CDATA and Text nodes this method will return null.

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

setName

public void setName(String name)
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:
setName in interface Node
Overrides:
setName in class AbstractNode

removeValue

public boolean removeValue(String name)
Specified by:
removeValue in interface ProcessingInstruction

toString

protected String toString(Map values)

This will convert the Map to a string representation.

Parameters:
values - is a Map of PI data to convert
Returns:
DOCUMENT ME!

parseValues

protected Map parseValues(String text)

Parses the raw data of PI as a Map.

Parameters:
text - String PI data to parse
Returns:
DOCUMENT ME!


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