Class RenameAction


public class RenameAction extends PendingUpdateAction
A pending update action representing the effect of a rename expression
  • Method Details

    • apply

      public void apply(XPathContext context, Set<MutableNodeInfo> 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
    • 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.
    • getNewName

      public NodeName getNewName()
      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
    • isInheritNamespaces

      public boolean isInheritNamespaces()