com.aspose.words
Class Node

java.lang.Object
    extended by com.aspose.words.Node
All Implemented Interfaces:
java.lang.Cloneable
Direct Known Subclasses:
BookmarkEnd, BookmarkStart, CommentRangeEnd, CommentRangeStart, CompositeNode, EditableRangeEnd, EditableRangeStart, Inline, SubDocument

public abstract class Node 
extends java.lang.Object

Base class for all nodes of a Word document.

A document is represented as a tree of nodes, similar to DOM or XmlDocument.

For more info see the Composite design pattern.

The Node class:


Property Getters/Setters Summary
DocumentBasegetDocument()
           Gets the document to which this node belongs.
booleanisComposite()
           Returns true if this node can contain other nodes.
NodegetNextSibling()
           Gets the node immediately following this node.
abstract intgetNodeType()
           Gets the type of this node. The value of the property is NodeType integer constant.
CompositeNodegetParentNode()
           Gets the immediate parent of this node.
NodegetPreviousSibling()
           Gets the node immediately preceding this node.
RangegetRange()
           Returns a Range object that represents the portion of a document that is contained in this node.
 
Method Summary
abstract booleanaccept(DocumentVisitor visitor)
           Accepts a visitor.
NodedeepClone(boolean isCloneChildren)
           Creates a duplicate of the node.
CompositeNodegetAncestor(int ancestorType)
           Gets the first ancestor of the specified NodeType.
CompositeNodegetAncestor(java.lang.Class ancestorType)
           Gets the first ancestor of the specified object type.
java.lang.StringgetText()
           Gets the text of this node and of all its children.
NodenextPreOrder(Node rootNode)
           Gets next node according to the pre-order tree traversal algorithm.
static java.lang.StringnodeTypeToString(int nodeType)
           A utility method that converts a node type enum value into a user friendly string.
NodepreviousPreOrder(Node rootNode)
           Gets the previous node according to the pre-order tree traversal algorithm.
voidremove()
           Removes itself from the parent.
java.lang.StringtoString(int saveFormat)
           Exports the content of the node into a string in the specified format.
java.lang.StringtoTxt()
           Exports the content of the node into a string in plain text format.
 

Property Getters/Setters Detail

getDocument

public DocumentBase getDocument()
Gets the document to which this node belongs.

The node always belongs to a document even if it has just been created and not yet added to the tree, or if it has been removed from the tree.


isComposite

public boolean isComposite()
Returns true if this node can contain other nodes. This method returns false as Node cannot have child nodes.

getNextSibling

public Node getNextSibling()
Gets the node immediately following this node. If there is no next node, a null is returned.

getNodeType

public abstract int getNodeType()
Gets the type of this node. The value of the property is NodeType integer constant.

getParentNode

public CompositeNode getParentNode()
Gets the immediate parent of this node.

If a node has just been created and not yet added to the tree, or if it has been removed from the tree, the parent is null.


getPreviousSibling

public Node getPreviousSibling()
Gets the node immediately preceding this node. If there is no preceding node, a null is returned.

getRange

public Range getRange()
Returns a Range object that represents the portion of a document that is contained in this node.

Method Detail

accept

public abstract boolean accept(DocumentVisitor visitor)
                            throws java.lang.Exception
Accepts a visitor.

Enumerates over this node and all of its children. Each node calls a corresponding method on DocumentVisitor.

For more info see the Visitor design pattern.

Parameters:
visitor - The visitor that will visit the nodes.
Returns:
True if all nodes were visited; false if DocumentVisitor stopped the operation before visiting all nodes.

deepClone

public Node deepClone(boolean isCloneChildren)
Creates a duplicate of the node.

This method serves as a copy constructor for nodes. The cloned node has no parent, but belongs to the same document as the original node.

This method always performs a deep copy of the node. The isCloneChildren parameter specifies whether to perform copy all child nodes as well.

Parameters:
isCloneChildren - True to recursively clone the subtree under the specified node; false to clone only the node itself.
Returns:
The cloned node.

getAncestor

public CompositeNode getAncestor(int ancestorType)
Gets the first ancestor of the specified NodeType.
Parameters:
ancestorType - A NodeType value. The node type of the ancestor to retrieve.
Returns:
The ancestor of the specified type or null if no ancestor of this type was found.

getAncestor

public CompositeNode getAncestor(java.lang.Class ancestorType)
Gets the first ancestor of the specified object type.

The ancestor type matches if it is equal to ancestorType or derived from ancestorType.

Parameters:
ancestorType - The object type of the ancestor to retrieve.
Returns:
The ancestor of the specified type or null if no ancestor of this type was found.

getText

public java.lang.String getText()
Gets the text of this node and of all its children.

The returned string includes all control and special characters as described in ControlChar.


nextPreOrder

public Node nextPreOrder(Node rootNode)
Gets next node according to the pre-order tree traversal algorithm.
Parameters:
rootNode - The top node (limit) of traversal.
Returns:
Next node in pre-order order. Null if reached the rootNode.

nodeTypeToString

public static java.lang.String nodeTypeToString(int nodeType)
A utility method that converts a node type enum value into a user friendly string.
Parameters:
nodeType - A NodeType value.

previousPreOrder

public Node previousPreOrder(Node rootNode)
Gets the previous node according to the pre-order tree traversal algorithm.
Parameters:
rootNode - The top node (limit) of traversal.
Returns:
Previous node in pre-order order. Null if reached the rootNode.

remove

public void remove()
Removes itself from the parent.

toString

public java.lang.String toString(int saveFormat)
               throws java.lang.Exception
Exports the content of the node into a string in the specified format.
Returns:
The content of the node in the specified format.
Parameters:
saveFormat - A SaveFormat value.

toTxt

public java.lang.String toTxt()
            throws java.lang.Exception
Exports the content of the node into a string in plain text format.

This method removes field codes and Microsoft Word control characters, uses CrLf (or any other) combination of characters to mark ends of paragraphs in the resulting string. It produces a different result from getText() which just gets the text from the node without removing field codes or special characters.

Returns:
The content of the node in plain text format.
See Also:
#Error Cref: P:Aspose.Words.Saving.TxtSaveOptions.ParagraphBreak, #Error Cref: P:Aspose.Words.Saving.TxtSaveOptions.ExportHeadersFooters

See Also:
          Aspose.Words Documentation - the home page for the Aspose.Words Product Documentation.
          Aspose.Words Support Forum - our preferred method of support.