org.zkoss.util
Class NotableLinkedList<E>

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractList<E>
          extended by java.util.AbstractSequentialList<E>
              extended by org.zkoss.util.NotableLinkedList<E>
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<E>, java.util.Collection<E>, java.util.List<E>
Direct Known Subclasses:
AbstractGroup.ChildArray, Document.ChildArray, Element.AttrArray

public class NotableLinkedList<E>
extends java.util.AbstractSequentialList<E>
implements java.util.List<E>, java.lang.Cloneable, java.io.Serializable

Linked list implementation of the List interface that provides the callback methods such as onAdd(E, E), onSet(E, E) and onRemove(E).

Since:
5.0.8
Author:
tomyeh
See Also:
Serialized Form

Field Summary
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
NotableLinkedList()
           
 
Method Summary
 java.util.ListIterator<E> listIterator(int index)
           
protected  void onAdd(E newElement, E followingElement)
          Called each time an new element is about being added into the array.
protected  void onRemove(E element)
          Called each time an element is about being removed from the array.
protected  void onSet(E newElement, E replaced)
          Called each time an element is about being assigned into the array and replace an existence one (by ListIterator.set).
 int 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.List
add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, remove, remove, removeAll, retainAll, set, subList, toArray, toArray
 

Constructor Detail

NotableLinkedList

public NotableLinkedList()
Method Detail

size

public int size()
Specified by:
size in interface java.util.Collection<E>
Specified by:
size in interface java.util.List<E>
Specified by:
size in class java.util.AbstractCollection<E>

listIterator

public java.util.ListIterator<E> listIterator(int index)
Specified by:
listIterator in interface java.util.List<E>
Specified by:
listIterator in class java.util.AbstractSequentialList<E>

onAdd

protected void onAdd(E newElement,
                     E followingElement)
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.

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(E newElement,
                     E replaced)
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.

Parameters:
newElement - the element to be added
replaced - the element to be replaced

onRemove

protected void onRemove(E element)
Called each time an element is about being removed from the array. Deriving classes usually put checking codes here. And, throws exception if failure.



Copyright © 2005-2011 Potix Corporation. All Rights Reserved. SourceForge.net Logo