JDOM
0.0.5-BETA

org.jdom2
Class Text

java.lang.Object
  extended by org.jdom2.Content
      extended by org.jdom2.Text
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, NamespaceAware
Direct Known Subclasses:
CDATA, LocatedText

public class Text
extends Content

An XML character sequence. Provides a modular, parentable method of representing text. Text makes no guarantees about the underlying textual representation of character data, but does expose that data as a Java String.

Author:
Brett McLaughlin, Jason Hunter, Bradley S. Huffman
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jdom2.Content
Content.CType
 
Field Summary
protected  java.lang.String value
          The actual character content
 
Fields inherited from class org.jdom2.Content
ctype, parent
 
Constructor Summary
protected Text()
          This is the protected, no-args constructor standard in all JDOM classes.
protected Text(Content.CType ctype)
          CData type extends Text, and it needs to be able to change the Content type of this Content.
  Text(java.lang.String str)
          This constructor creates a new Text node, with the supplied string value as it's character content.
 
Method Summary
 void append(java.lang.String str)
          This will append character content to whatever content already exists within this Text node.
 void append(Text text)
          This will append the content of another Text node to this node.
 Text clone()
          Return a deep clone of this instance.
 Text detach()
          Detaches this child from its parent or does nothing if the child has no parent.
 Element getParent()
          Return this child's parent, or null if this child is currently not attached.
 java.lang.String getText()
          This returns the value of this Text node as a Java String.
 java.lang.String getTextNormalize()
          This returns the textual content with all surrounding whitespace removed and internal whitespace normalized to a single space.
 java.lang.String getTextTrim()
          This returns the textual content with all surrounding whitespace removed.
 java.lang.String getValue()
          Returns the XPath 1.0 string value of this element, which is the text itself.
static java.lang.String normalizeString(java.lang.String str)
          This returns a new string with all surrounding whitespace removed and internal whitespace normalized to a single space.
protected  Text setParent(Parent parent)
          Sets the parent of this Content.
 Text setText(java.lang.String str)
          This will set the value of this Text node.
 java.lang.String toString()
          This returns a String representation of the Text node, suitable for debugging.
 
Methods inherited from class org.jdom2.Content
equals, getCType, getDocument, getNamespacesInherited, getNamespacesInScope, getNamespacesIntroduced, getParentElement, hashCode
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

value

protected java.lang.String value
The actual character content

Constructor Detail

Text

protected Text(Content.CType ctype)
CData type extends Text, and it needs to be able to change the Content type of this Content.

Parameters:
ctype - The CType to set for this Text-based Content.

Text

protected Text()
This is the protected, no-args constructor standard in all JDOM classes. It allows subclassers to get a raw instance with no initialization.


Text

public Text(java.lang.String str)
This constructor creates a new Text node, with the supplied string value as it's character content.

Parameters:
str - the node's character content.
Throws:
IllegalDataException - if str contains an illegal character such as a vertical tab (as determined by Verifier.checkCharacterData(java.lang.String))
Method Detail

getText

public java.lang.String getText()
This returns the value of this Text node as a Java String.

Returns:
String - character content of this node.

getTextTrim

public java.lang.String getTextTrim()
This returns the textual content with all surrounding whitespace removed. If only whitespace exists, the empty string is returned.

Returns:
trimmed text content or empty string

getTextNormalize

public java.lang.String getTextNormalize()
This returns the textual content with all surrounding whitespace removed and internal whitespace normalized to a single space. If only whitespace exists, the empty string is returned.

Returns:
normalized text content or empty string

normalizeString

public static java.lang.String normalizeString(java.lang.String str)
This returns a new string with all surrounding whitespace removed and internal whitespace normalized to a single space. If only whitespace exists, the empty string is returned.

Per XML 1.0 Production 3 whitespace includes: #x20, #x9, #xD, #xA

Parameters:
str - string to be normalized.
Returns:
normalized string or empty string

setText

public Text setText(java.lang.String str)
This will set the value of this Text node.

Parameters:
str - value for node's content.
Returns:
the object on which the method was invoked
Throws:
IllegalDataException - if str contains an illegal character such as a vertical tab (as determined by Verifier.checkCharacterData(java.lang.String))

append

public void append(java.lang.String str)
This will append character content to whatever content already exists within this Text node.

Parameters:
str - character content to append.
Throws:
IllegalDataException - if str contains an illegal character such as a vertical tab (as determined by Verifier.checkCharacterData(java.lang.String))

append

public void append(Text text)
This will append the content of another Text node to this node.

Parameters:
text - Text node to append.

getValue

public java.lang.String getValue()
Returns the XPath 1.0 string value of this element, which is the text itself.

Specified by:
getValue in class Content
Returns:
the text

toString

public java.lang.String toString()
This returns a String representation of the Text node, suitable for debugging. If the XML representation of the Text node is desired, either getText() or XMLOutputter.outputString(Text) should be used.

Overrides:
toString in class java.lang.Object
Returns:
String - information about this node.

clone

public Text clone()
Return a deep clone of this instance. Even if this instance has a parent, the returned clone will not.

All JDOM core classes are Cloneable, and never throw CloneNotSupportedException. Additionally all Cloneable JDOM classes return the correct type of instance from this method and there is no need to cast the result (co-variant return vaue).

Subclasses of this should still call super.clone() in their clone method.

Overrides:
clone in class Content

detach

public Text detach()
Description copied from class: Content
Detaches this child from its parent or does nothing if the child has no parent.

This method can be overridden by particular Content subclasses to return a specific type of Content (co-variant return type). All overriding subclasses must call super.detach();

Overrides:
detach in class Content
Returns:
this child detached

setParent

protected Text setParent(Parent parent)
Description copied from class: Content
Sets the parent of this Content. The caller is responsible for removing any pre-existing parentage.

This method can be overridden by particular Content subclasses to return a specific type of Content (co-variant return type). All overriding subclasses must call super.setParent(Parent);

Overrides:
setParent in class Content
Parameters:
parent - new parent element
Returns:
the target element

getParent

public Element getParent()
Description copied from class: Content
Return this child's parent, or null if this child is currently not attached. The parent can be either an Element or a Document.

This method can be overridden by particular Content subclasses to return a specific type of Parent (co-variant return type). All overriding subclasses must call super.getParent();

Overrides:
getParent in class Content
Returns:
this child's parent or null if none

JDOM
0.0.5-BETA

Copyright � 2012 Jason Hunter, Brett McLaughlin. All Rights Reserved.