com.saxonica.update

## Class InsertAttributeAction

- java.lang.Object
- - com.saxonica.update.PendingUpdateAction
  - - com.saxonica.update.InsertAttributeAction

-     public class InsertAttributeAction
      extends PendingUpdateAction

  A pending update action representing the insert attribute action.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `InsertAttributeAction(NodeInfo element, NodeName name, SimpleType typeCode, CharSequence value, int properties)` Create a InsertAttributeAction

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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.
    `NodeName` | `getAttributeName()` Get the name of the attribute to be inserted
    `CharSequence` | `getNewStringValue()` Get the string value of the inserted attribute
    `SimpleType` | `getNewTypeCode()` Get the type code of the inserted attribute
    `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`

- - ### Constructor Detail

    - #### InsertAttributeAction

          public InsertAttributeAction(NodeInfo element,
                               NodeName name,
                               SimpleType typeCode,
                               CharSequence value,
                               int properties)

      Create a InsertAttributeAction
      Parameters:
        `element` - the element into which it is to be inserted
        `name` - the name of the new attribute
        `typeCode` - the type annotation of the new attribute
        `value` - the string value of the new attribute
        `properties` - properties including IS_ID and IS_IDREF properties

  - ### Method Detail

    - #### apply

          public void apply(XPathContext context,
                   Set affectedRootSet)
                     throws XPathException

      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
      Throws:
        `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`
      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.

    - #### getAttributeName

          public NodeName getAttributeName()

      Get the name of the attribute to be inserted
      Returns:
        the attribute name

    - #### getNewTypeCode

          public SimpleType getNewTypeCode()

      Get the type code of the inserted attribute
      Returns:
        the type annotation as an integer namecode of a type

    - #### getNewStringValue

          public CharSequence getNewStringValue()

      Get the string value of the inserted attribute
      Returns:
        the string value of the new 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`
      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-2013 Saxonica Limited. All rights reserved.