## org.dom4j.tree
Class AbstractCharacterData

    java.lang.Object
      org.dom4j.tree.AbstractNode
          org.dom4j.tree.AbstractCharacterData

All Implemented Interfaces:
  CharacterData, Cloneable, Node, Serializable

Direct Known Subclasses:
  AbstractCDATA, AbstractComment, AbstractText

public abstract class AbstractCharacterData
extends AbstractNode
implements CharacterData

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

Version:
  $Revision: 1.12 $
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
`AbstractCharacterData()`

Method Summary
`void` `appendText(String text)` Appends the given text to this nodes text value.
`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.

Methods inherited from class org.dom4j.tree.AbstractNode

`asXPathResult, clone, createPattern, createXPath, createXPathFilter, createXPathResult, detach, getDocument, getDocumentFactory, getName, getNodeType, getNodeTypeName, getParent, getPath, getStringValue, getText, getUniquePath, hasContent, isReadOnly, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setName, setParent, setText, supportsParent, valueOf, write`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.dom4j.Node
`accept, asXML, asXPathResult, clone, createXPath, detach, getDocument, getName, getNodeType, getNodeTypeName, getParent, getPath, getStringValue, getText, getUniquePath, hasContent, isReadOnly, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setName, setParent, setText, supportsParent, valueOf, write`

Constructor Detail

### AbstractCharacterData

    public AbstractCharacterData()

Method Detail

### 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.

### appendText

    public void appendText(String text)

  Description copied from interface: `CharacterData`
  Appends the given text to this nodes text value. Calling this method is equivalent of the code `node.setText(node.getText() + text)` but allows for possible implementation optimisations (such as a text based node storing a StringBuffer internally

  Specified by:
    `appendText` in interface `CharacterData`
  Parameters:
    `text` - the text to append

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