Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.xpath.axes
Class AxesWalker

    java.lang.Object
      |
      +--org.apache.xpath.Expression
            |
            +--org.apache.xpath.patterns.NodeTest
                  |
                  +--org.apache.xpath.axes.AxesWalker

Direct Known Subclasses:
  AttributeWalker, AttributeWalkerOneStep, ChildWalker, ChildWalkerMultiStep, ChildWalkerOneStep, DescendantWalker, FilterExprWalker, FollowingSiblingWalker, FollowingWalker, NamespaceWalker, ParentWalker, ReverseAxesWalker, RootWalker, SelfWalker, SelfWalkerOneStep

public abstract class AxesWalker
extends NodeTest
implements java.lang.Cloneable, TreeWalker, NodeFilter, SubContextList

Serves as common interface for axes Walkers, and stores common state variables.

Fields inherited from class org.apache.xpath.patterns.NodeTest
`SCORE_NONE, SHOW_BYFUNCTION, SHOW_NAMESPACE, WILD`

Constructor Summary
`AxesWalker(LocPathIterator locPathIterator)` Construct an AxesWalker using a LocPathIterator.

Method Summary
`short` | `acceptNode(Node n)` Test whether a specified node is visible in the logical view of a TreeWalker or NodeIterator.
`java.lang.Object` | `clone()` Get a cloned AxesWalker.
`Node` | `firstChild()` Moves the `TreeWalker` to the first visible child of the current node, and returns the new node.
`Node` | `getCurrentNode()` The node at which the TreeWalker is currently positioned.
`boolean` | `getExpandEntityReferences()` The value of this flag determines whether the children of entity reference nodes are visible to the TreeWalker.
`NodeFilter` | `getFilter()` The filter used to screen nodes.
`int` | `getLastPos(XPathContext xctxt)`
`LocPathIterator` | `getLocPathIterator()`
`AxesWalker` | `getNextWalker()`
`int` | `getPredicateCount()` Get the number of predicates that this walker has.
`int` | `getPredicateIndex()` Get which predicate is executing.
`AxesWalker` | `getPrevWalker()`
`int` | `getProximityPosition()` Get the current sub-context position.
`int` | `getProximityPosition(XPathContext xctxt)` Get the current sub-context position.
`Node` | `getRoot()` The root node of the TreeWalker, as specified in setRoot(Node root).
`void` | `init(Compiler compiler, int opPos, int stepType)` Init an AxesWalker.
`void` | `initProximityPosition(int i)` Init the proximity position to zero for a forward axes.
`boolean` | `isReverseAxes()` Tells if this is a reverse axes.
`Node` | `lastChild()` Moves the `TreeWalker` to the last visible child of the current node, and returns the new node.
`Node` | `nextNode()` Moves the `TreeWalker` to the next visible node in document order relative to the current node, and returns the new node.
`Node` | `nextSibling()` Moves the `TreeWalker` to the next sibling of the current node, and returns the new node.
`Node` | `parentNode()` Moves to and returns the closest visible ancestor node of the current node.
`Node` | `previousNode()` Moves the `TreeWalker` to the previous visible node in document order relative to the current node, and returns the new node.
`Node` | `previousSibling()` Moves the `TreeWalker` to the previous sibling of the current node, and returns the new node.
`void` | `reset()` Reset the Walker.
`void` | `resetProximityPositions()` Reset the proximity positions counts.
`void` | `setCurrentNode(Node currentNode)` Set the current node.
`void` | `setLocPathIterator(LocPathIterator li)`
`void` | `setNextWalker(AxesWalker walker)`
`void` | `setPredicateCount(int count)` Set the number of predicates that this walker has.
`void` | `setPrevWalker(AxesWalker walker)`
`void` | `setRoot(Node root)` Set the root node of the TreeWalker.
`java.lang.String` | `toString()` Diagnostics.

Methods inherited from class org.apache.xpath.patterns.NodeTest
`debugWhatToShow, execute, getDefaultScore, getLocalName, getNamespace, getWhatToShow, initNodeTest, initNodeTest`

Methods inherited from class org.apache.xpath.Expression
`assert, error, warn`

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

Constructor Detail

### AxesWalker

    public AxesWalker(LocPathIterator locPathIterator)

  Construct an AxesWalker using a LocPathIterator.

Method Detail

### getLocPathIterator

    public LocPathIterator getLocPathIterator()

### setLocPathIterator

    public void setLocPathIterator(LocPathIterator li)

### init

    public void init(Compiler compiler,
                     int opPos,
                     int stepType)
              throws SAXException

  Init an AxesWalker.

### clone

    public java.lang.Object clone()
                           throws java.lang.CloneNotSupportedException

  Get a cloned AxesWalker.

### reset

    public void reset()

  Reset the Walker.

### getProximityPosition

    public int getProximityPosition()

  Get the current sub-context position.

### getProximityPosition

    public int getProximityPosition(XPathContext xctxt)

  Get the current sub-context position.
  Specified by:
    getProximityPosition in interface SubContextList

### resetProximityPositions

    public void resetProximityPositions()
                                 throws SAXException

  Reset the proximity positions counts.

### initProximityPosition

    public void initProximityPosition(int i)
                               throws SAXException

  Init the proximity position to zero for a forward axes.

### isReverseAxes

    public boolean isReverseAxes()

  Tells if this is a reverse axes.

### getPredicateIndex

    public int getPredicateIndex()

  Get which predicate is executing. Returns -1 if no predicate is executing.

### getPredicateCount

    public int getPredicateCount()

  Get the number of predicates that this walker has.

### setPredicateCount

    public void setPredicateCount(int count)

  Set the number of predicates that this walker has.

### getRoot

    public Node getRoot()

  The root node of the TreeWalker, as specified in setRoot(Node root). Note that this may actually be below the current node.
  Specified by:
    getRoot in interface TreeWalker

### setRoot

    public void setRoot(Node root)

  Set the root node of the TreeWalker. (Not part of the DOM2 TreeWalker interface).

### getCurrentNode

    public final Node getCurrentNode()

  The node at which the TreeWalker is currently positioned.
  The value must not be null. Alterations to the DOM tree may cause the current node to no longer be accepted by the TreeWalker's associated filter. currentNode may also be explicitly set to any node, whether or not it is within the subtree specified by the root node or would be accepted by the filter and whatToShow flags. Further traversal occurs relative to currentNode even if it is not part of the current view by applying the filters in the requested direction (not changing currentNode where no traversal is possible).
  Specified by:
    getCurrentNode in interface TreeWalker
  Throws:
    DOMException - NOT_SUPPORTED_ERR: Raised if the specified `currentNode` is`null` .

### setCurrentNode

    public void setCurrentNode(Node currentNode)
                        throws DOMException

  Set the current node.
  Specified by:
    setCurrentNode in interface TreeWalker

### getFilter

    public NodeFilter getFilter()

  The filter used to screen nodes.
  Specified by:
    getFilter in interface TreeWalker

### getExpandEntityReferences

    public boolean getExpandEntityReferences()

  The value of this flag determines whether the children of entity reference nodes are visible to the TreeWalker. If false, they will be skipped over.
  To produce a view of the document that has entity references expanded and does not expose the entity reference node itself, use the whatToShow flags to hide the entity reference node and set expandEntityReferences to true when creating the TreeWalker. To produce a view of the document that has entity reference nodes but no entity expansion, use the whatToShow flags to show the entity reference node and set expandEntityReferences to false.
  Specified by:
    getExpandEntityReferences in interface TreeWalker

### parentNode

    public Node parentNode()

  Moves to and returns the closest visible ancestor node of the current node. If the search for parentNode attempts to step upward from the TreeWalker's root node, or if it fails to find a visible ancestor node, this method retains the current position and returns null.
  Specified by:
    parentNode in interface TreeWalker
  Returns:
    The new parent node, or null if the current node has no parent in the TreeWalker's logical view.

### firstChild

    public Node firstChild()

  Moves the `TreeWalker` to the first visible child of the current node, and returns the new node. If the current node has no visible children, returns `null` , and retains the current node.
  Specified by:
    firstChild in interface TreeWalker
  Returns:
    The new node, or `null` if the current node has no visible children in the TreeWalker's logical view.

### nextSibling

    public Node nextSibling()

  Moves the `TreeWalker` to the next sibling of the current node, and returns the new node. If the current node has no visible next sibling, returns `null` , and retains the current node.
  Specified by:
    nextSibling in interface TreeWalker
  Returns:
    The new node, or `null` if the current node has no next sibling in the TreeWalker's logical view.

### lastChild

    public Node lastChild()

  Moves the `TreeWalker` to the last visible child of the current node, and returns the new node. If the current node has no visible children, returns `null` , and retains the current node.
  Specified by:
    lastChild in interface TreeWalker
  Returns:
    The new node, or `null` if the current node has no children in the TreeWalker's logical view.

### previousSibling

    public Node previousSibling()

  Moves the `TreeWalker` to the previous sibling of the current node, and returns the new node. If the current node has no visible previous sibling, returns `null` , and retains the current node.
  Specified by:
    previousSibling in interface TreeWalker
  Returns:
    The new node, or `null` if the current node has no previous sibling in the TreeWalker's logical view.

### previousNode

    public Node previousNode()

  Moves the `TreeWalker` to the previous visible node in document order relative to the current node, and returns the new node. If the current node has no previous node, or if the search for previousNode attempts to step upward from the TreeWalker's root node, returns `null` , and retains the current node.
  Specified by:
    previousNode in interface TreeWalker
  Returns:
    The new node, or `null` if the current node has no previous node in the TreeWalker's logical view.

### setNextWalker

    public void setNextWalker(AxesWalker walker)

### getNextWalker

    public AxesWalker getNextWalker()

### setPrevWalker

    public void setPrevWalker(AxesWalker walker)

### getPrevWalker

    public AxesWalker getPrevWalker()

### toString

    public java.lang.String toString()

  Diagnostics.
  Overrides:
    toString in class java.lang.Object

### nextNode

    public Node nextNode()

  Moves the `TreeWalker` to the next visible node in document order relative to the current node, and returns the new node. If the current node has no next node, or if the search for nextNode attempts to step upward from the TreeWalker's root node, returns `null` , and retains the current node.
  Specified by:
    nextNode in interface TreeWalker
  Returns:
    The new node, or `null` if the current node has no next node in the TreeWalker's logical view.

### getLastPos

    public int getLastPos(XPathContext xctxt)

  Specified by:
    getLastPos in interface SubContextList

### acceptNode

    public short acceptNode(Node n)

  Test whether a specified node is visible in the logical view of a TreeWalker or NodeIterator. This function will be called by the implementation of TreeWalker and NodeIterator; it is not intended to be called directly from user code.
  Specified by:
    acceptNode in interface NodeFilter
  Parameters:
    `n` - The node to check to see if it passes the filter or not.
  Returns:
    a constant to determine whether the node is accepted, rejected, or skipped, as defined above .

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000 Apache XML Project. All Rights Reserved.