Class ReplaceAttributeAction

  • public class ReplaceAttributeAction
    extends PendingUpdateAction
    A pending update action representing a replace node expression applied to an attribute. Note that the replacement attribute may be absent; this is not quite the same as a delete operation, because the consistency rules on the pending update list are different.
    • Method Detail

      • isInheritNamespaces

        public boolean isInheritNamespaces()
      • apply

        public void apply​(XPathContext context,
                          java.util.Set<MutableNodeInfo> affectedRootSet)
                   throws XPathException
        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 this action should add to as necessary
        XPathException - if any error occurs applying the update
      • 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.
      • getOldAttribute

        public NodeInfo getOldAttribute()
        Get the replaced attribute node
        the attribute being replaced
      • getNewAttributes

        public AttributeMap getNewAttributes()
        Get the attribute collection containing the new (replacement) attributes
        the new attributes to be added in place of the old attribute
      • 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.
        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