nu.validator.saxtree
Class ParentNode

java.lang.Object
  extended by nu.validator.saxtree.Node
      extended by nu.validator.saxtree.ParentNode
All Implemented Interfaces:
Locator
Direct Known Subclasses:
CDATA, Document, DocumentFragment, DTD, Element, Entity

public abstract class ParentNode
extends Node

Common superclass for parent nodes.

Version:
$Id: ParentNode.java 499 2009-02-24 11:51:51Z hsivonen $
Author:
hsivonen

Field Summary
protected  Locator endLocator
          The end locator.
private  Node firstChild
          The first child.
private  Node lastChild
          The last child (for efficiency).
 
Constructor Summary
ParentNode(Locator locator)
          The constuctor.
 
Method Summary
 Node appendChild(Node child)
          Append a child to this node and return the child.
 void appendChildren(Node parent)
          Append the children of another node to this node removing them from the other node .
 void copyEndLocator(ParentNode another)
          Copies the endLocator from another node.
 Node getFirstChild()
          Returns the firstChild.
 Node getLastChild()
          Returns the lastChild.
 Node insertBefore(Node child, Node sibling)
          Insert a new child before a pre-existing child and return the newly inserted child.
 Node insertBetween(Node child, Node prev, Node next)
           
(package private)  void removeChild(Node node)
          Remove a child from this node.
 void setEndLocator(Locator endLocator)
          Sets the endLocator.
 
Methods inherited from class nu.validator.saxtree.Node
detach, getAttributes, getColumnNumber, getData, getLineNumber, getLocalName, getName, getNextSibling, getNodeType, getParentNode, getPrefixMappings, getPreviousSibling, getPublicId, getPublicIdentifier, getQName, getSystemId, getSystemIdentifier, getTarget, getUri, revisit, setNextSibling, setParentNode, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

endLocator

protected Locator endLocator
The end locator.


firstChild

private Node firstChild
The first child.


lastChild

private Node lastChild
The last child (for efficiency).

Constructor Detail

ParentNode

ParentNode(Locator locator)
The constuctor.

Parameters:
locator - the locator
Method Detail

setEndLocator

public void setEndLocator(Locator endLocator)
Sets the endLocator.

Parameters:
endLocator - the endLocator to set

copyEndLocator

public void copyEndLocator(ParentNode another)
Copies the endLocator from another node.

Parameters:
another - the another node

getFirstChild

public final Node getFirstChild()
Returns the firstChild.

Overrides:
getFirstChild in class Node
Returns:
the firstChild

getLastChild

public final Node getLastChild()
Returns the lastChild.

Returns:
the lastChild

insertBefore

public Node insertBefore(Node child,
                         Node sibling)
Insert a new child before a pre-existing child and return the newly inserted child.

Parameters:
child - the new child
sibling - the existing child before which to insert (must be a child of this node) or null to append
Returns:
child

insertBetween

public Node insertBetween(Node child,
                          Node prev,
                          Node next)

appendChild

public Node appendChild(Node child)
Append a child to this node and return the child.

Parameters:
child - the child to append.
Returns:
child

appendChildren

public void appendChildren(Node parent)
Append the children of another node to this node removing them from the other node .

Parameters:
parent - the other node whose children to append to this one

removeChild

void removeChild(Node node)
Remove a child from this node.

Parameters:
node - the child to remove