Package org.zkoss.idom

## Class Element.AttrArray

- java.lang.Object
- - java.util.AbstractCollection<E>
  - - java.util.AbstractList<E>
    - - java.util.AbstractSequentialList<E>
      - - org.zkoss.util.NotableLinkedList<Attribute>
        - - org.zkoss.idom.Element.AttrArray

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Cloneable`, `java.lang.Iterable<Attribute>`, `java.util.Collection<Attribute>`, `java.util.List<Attribute>`
  Enclosing class:
    Element

      protected class Element.AttrArray
      extends NotableLinkedList<Attribute>

  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class java.util.AbstractList

      `modCount`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `AttrArray()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `onAdd​(Attribute newElement, Attribute followingElement)` | Called each time an new element is about being added into the array.
    `protected void` | `onRemove​(Attribute item)` | Called each time an element is about being removed from the array.
    `protected void` | `onSet​(Attribute newElement, Attribute replaced)` | Called each time an element is about being assigned into the array and replace an existence one (by ListIterator.set).

    - ### Methods inherited from class org.zkoss.util.NotableLinkedList

      `listIterator, size`

    - ### Methods inherited from class java.util.AbstractSequentialList

      `add, addAll, get, iterator, remove, set`

    - ### Methods inherited from class java.util.AbstractList

      `add, clear, equals, hashCode, indexOf, lastIndexOf, listIterator, removeRange, subList`

    - ### Methods inherited from class java.util.AbstractCollection

      `addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.util.Collection

      `parallelStream, removeIf, stream, toArray`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach`

    - ### Methods inherited from interface java.util.List

      `add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, remove, remove, removeAll, replaceAll, retainAll, set, sort, spliterator, subList, toArray, toArray`

- - ### Constructor Detail

    - #### AttrArray

          protected AttrArray()

  - ### Method Detail

    - #### onAdd

          protected void onAdd​(Attribute newElement,
                               Attribute followingElement)

      Description copied from class: `NotableLinkedList`
      Called each time an new element is about being added into the array.

      Deriving classes usually put checking codes here. And, throws exception if failure and nothing will be affected.

      Overrides:
        `onAdd` in class `NotableLinkedList<Attribute>`
      Parameters:
        `newElement` - the element to be added
        `followingElement` - the element that will 'follow' the new element. In other words, newElement will be inserted before followingElement. If null, it means newElement is appended at the end

    - #### onSet

          protected void onSet​(Attribute newElement,
                               Attribute replaced)

      Description copied from class: `NotableLinkedList`
      Called each time an element is about being assigned into the array and replace an existence one (by ListIterator.set).

      Deriving classes usually put checking codes here. And, throws exception if failure and nothing will be affected.

      Overrides:
        `onSet` in class `NotableLinkedList<Attribute>`
      Parameters:
        `newElement` - the element to be added
        `replaced` - the element to be replaced

    - #### onRemove

          protected void onRemove​(Attribute item)

      Description copied from class: `NotableLinkedList`
      Called each time an element is about being removed from the array. Deriving classes usually put checking codes here. And, throws exception if failure.
      Overrides:
        `onRemove` in class `NotableLinkedList<Attribute>`