## com.saxonica.update
Class PendingUpdateListImpl

    java.lang.Object
      com.saxonica.update.PendingUpdateListImpl

All Implemented Interfaces:
  PendingUpdateList

    public class PendingUpdateListImpl

extends Object
implements PendingUpdateList

Concrete implementation of the Pending Update List

Constructor Summary
`PendingUpdateListImpl(Configuration config)` Create a Pending Update List

Method Summary
`void` `add(PendingUpdateAction action)` Add an action to the pending update list
`void` `addPutAction(NodeInfo node, String uri, Expression originator)` Add a put() action to the pending update list
`void` `apply(XPathContext context, int validationMode)` Apply the pending updates
`Set` `getAffectedTrees()` Get the root nodes of the trees that are affected by updates in the pending update list

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

Constructor Detail

### PendingUpdateListImpl

    public PendingUpdateListImpl(Configuration config)

  Create a Pending Update List

Method Detail

### add

    public void add(PendingUpdateAction action)
             throws XPathException

  Add an action to the pending update list

  Parameters:
    `action` - the Pending Update Action to be added to the list
  Throws:
    `XPathException` - if the pending update action conflicts with an action that is already on the list

### addPutAction

    public void addPutAction(NodeInfo node,
                             String uri,
                             Expression originator)
                      throws XPathException

  Add a put() action to the pending update list

  Specified by:
    `addPutAction` in interface `PendingUpdateList`
  Parameters:
    `node` - (the first argument of put())
    `uri` - (the second argument of put())
    `originator` - the originating put() expression, for diagnostics
  Throws:
    `XPathException`

### apply

    public void apply(XPathContext context,
                      int validationMode)
               throws XPathException

  Apply the pending updates

  Specified by:
    `apply` in interface `PendingUpdateList`
  Parameters:
    `context` - the XPath dynamic evaluation context
    `validationMode` - the revalidation mode from the static context
  Throws:
    `XPathException`

### getAffectedTrees

    public Set getAffectedTrees()

  Get the root nodes of the trees that are affected by updates in the pending update list

  Specified by:
    `getAffectedTrees` in interface `PendingUpdateList`
  Returns:
    the root nodes of affected trees, as a Set. Note that this includes all trees that have been updated; this is a superset of the trees that need to be revalidated, but updates that don't require revalidation are sufficiently unusual that we don't trouble with the distinction.

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