ASPOSE home

com.aspose.words
Class Node

java.lang.Object
    extended by com.aspose.words.Node
All Implemented Interfaces:
java.lang.Iterable, java.lang.Cloneable
Direct Known Subclasses:
BookmarkEnd, BookmarkStart, CompositeNode, Inline

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
DocumentgetDocument()
           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.
NodegetAncestor(java.lang.Class ancestorType)
           Gets the first ancestor of the specified type.
java.lang.StringgetText()
           Gets the text of this node and of all its children.
java.util.Iteratoriterator()
          Provides support for the for each style iteration over child nodes of the node.
NodenextPreOrder(Node rootNode)
           Gets next node according to the pre-order tree traversal algorithm.
NodepreviousPreOrder(Node rootNode)
           Gets the previous node according to the pre-order tree traversal algorithm.
voidremove()
           Removes itself from the parent.
java.lang.StringtoTxt()
           Exports the content of the node into a string in TXT (plain text) format.
 

Property Getters/Setters Detail

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.


getDocument

public Document 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 yed added to the tree, or if it has been removed from the tree.


getPreviousSibling

public Node getPreviousSibling()
Gets the node immediately preceding this node.

If there is no preceding node, a null is returned.

Note: Calculating the value of this property iterates from the first child node of ParenNode to this node.

getNextSibling

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

isComposite

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

getRange

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

Method Detail

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.


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)
              throws java.lang.Exception
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 Node getAncestor(java.lang.Class ancestorType)
Gets the first ancestor of the specified type.

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

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

remove

public void remove()
           throws java.lang.Exception
Removes itself from the parent.

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.

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.

toTxt

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

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

Returns:
The content of the node in plain text format.

iterator

public java.util.Iterator iterator()
Provides support for the for each style iteration over child nodes of the node.

Non-CompositeNodes (like Run, SpecialChar and so on) return Empty non-null iterator used internally for XPath traversal.


See Also:
          Wiki - the home page for the Aspose.Words Product Documentation that includes Programmer's Guide, Knowledge Base and other articles.
          Aspose.Words Support Forum - our preferred method of support.
          Aspose.Words Team - contact Aspose.Words Team.


ASPOSE home