## com.saxonica.update
Class RenameAction

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

    public class RenameAction

extends PendingUpdateAction

A pending update action representing the effect of a rename expression

Field Summary
`static int` `PHASE`

Constructor Summary
`RenameAction(NodeInfo node, int nameCode)` Create a RenameAction

Method Summary
`void` `apply(XPathContext context, Set affectedRootSet)` Apply the pending update action to the affected nodes
`int` `getApplyPhase()` Get the phase of operation in which this pending update action is applied.
`int` `getNewNameCode()` Get the new name as an integer namecode
`NodeInfo` `getTargetNode()` Get the target node of the update action

Methods inherited from class com.saxonica.update.PendingUpdateAction
`getOriginator, setOriginator`

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

Field Detail

### PHASE

    public static final int PHASE

See Also:
  Constant Field Values

Constructor Detail

### RenameAction

    public RenameAction(NodeInfo node,
                        int nameCode)

  Create a RenameAction

  Parameters:
    `node` - the node to be renamed
    `nameCode` - the namecode of the new name

Method Detail

### apply

    public void apply(XPathContext context,
                      Set affectedRootSet)

  Apply the pending update action to the affected nodes

  Specified by:
    `apply` in class `PendingUpdateAction`
  Parameters:
    `context` - the XPath evaluation context
    `affectedRootSet` - the set of roots of trees that have been modified, which this action should add to as necessary

### getTargetNode

    public NodeInfo getTargetNode()

  Get the target node of the update action

  Specified by:
    `getTargetNode` in class `PendingUpdateAction`
  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.

### getNewNameCode

    public int getNewNameCode()

  Get the new name as an integer namecode

  Returns:
    the new name as an integer namecode

### getApplyPhase

    public int getApplyPhase()

  Get the phase of operation in which this pending update action is applied. See 3.2.2 upd:applyUpdates, Semantics, rule 2. However, the spec does rename, and insert as a single phase; we split it so that rename is phase 0, while insert is phase 1. This ensures that old attributes are renamed before new attributes are inserted, avoiding spurious conflicts.

  Specified by:
    `getApplyPhase` in class `PendingUpdateAction`
  Returns:
    the phase of operation, an integer in the range 1 to 5 representing the stages labelled a-e in the specification

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