## com.saxonica.update
Class PendingUpdateAction

    java.lang.Object
      com.saxonica.update.PendingUpdateAction

Direct Known Subclasses:
  DeleteAction, InsertAction, InsertAttributeAction, PutAction, RenameAction, ReplaceAttributeAction, ReplaceNodeAction, ReplaceValueAction

    public abstract class PendingUpdateAction

extends Object

A pending update action, such as is found on a pending update list

Constructor Summary
`PendingUpdateAction()`

Method Summary
`abstract void` `apply(XPathContext context, Set affectedRootSet)` Apply the pending update action to the affected nodes
`abstract int` `getApplyPhase()` Get the phase of operation in which this pending update action is applied.
`Expression` `getOriginator()` Get the originating update expression.
`abstract NodeInfo` `getTargetNode()` Get the target node of the update action
`void` `setOriginator(Expression originator)` Set the originating update expression.

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

Constructor Detail

### PendingUpdateAction

    public PendingUpdateAction()

Method Detail

### setOriginator

    public void setOriginator(Expression originator)

  Set the originating update expression. This is used for diagnostics.

  Parameters:
    `originator` - the originating expression

### getOriginator

    public Expression getOriginator()

  Get the originating update expression. This is used for diagnostics.

  Returns:
    the originating expression

### apply

    public abstract void apply(XPathContext context,
                               Set affectedRootSet)
                        throws XPathException

  Apply the pending update action to the affected nodes

  Parameters:
    `context` - the XPath evaluation context
    `affectedRootSet` - the set of root nodes of trees that have been modified, which this action should add to as necessary
  Throws:
    `XPathException` - if any error occurs applying the update

### getTargetNode

    public abstract NodeInfo getTargetNode()

  Get the target node of the update action

  Returns:
    the target node, the node to which this update action applies. Returns null in the case of a delete action, which affects multiple nodes.

### getApplyPhase

    public abstract int getApplyPhase()

  Get the phase of operation in which this pending update action is applied. See 3.2.2 upd:applyUpdates, Semantics, rule 2.

  Returns:
    the phase of operation, an integer in the range 1 to 5 representing the stages labelled a-e in the specification, or 6 for a PutAction

Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.