Class RenameAction

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

      • isInheritNamespaces

        public boolean isInheritNamespaces()
      • apply

        public void apply​(XPathContext context,
                          java.util.Set<MutableNodeInfo> affectedRootSet)
        Apply the pending update action to the affected nodes
        Specified by:
        apply in class PendingUpdateAction
        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
        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
        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
        the phase of operation, an integer in the range 1 to 5 representing the stages labelled a-e in the specification