Package groovy.util
Class ObservableList
- java.lang.Object
- 
- groovy.util.ObservableList
 
- 
- All Implemented Interfaces:
- Iterable,- Collection,- List
 
 public class ObservableList extends Object implements List List decorator that will trigger PropertyChangeEvents when a value changes.
 An optional Closure may be specified and will work as a filter, if it returns true the property will trigger an event (if the value indeed changed), otherwise it won't. The Closure may receive 1 or 2 parameters, the single one being the value, the other one both the key and value, for example:// skip all properties whose value is a closure def map = new ObservableList( {!(it instanceof Closure)} ) // skip all properties whose name matches a regex def map = new ObservableList( { name, value -> !(name =˜ /[A-Z+]/) } )The current implementation will trigger specialized events in the following scenarios, you need not register a different listener as those events extend from PropertyChangeEvent- ObservableList.ElementAddedEvent - a new element is added to the list
- ObservableList.ElementRemovedEvent - an element is removed from the list
- ObservableList.ElementUpdatedEvent - an element changes value (same as regular PropertyChangeEvent)
- ObservableList.ElementClearedEvent - all elements have been removed from the list
- ObservableList.MultiElementAddedEvent - triggered by calling list.addAll()
- ObservableList.MultiElementRemovedEvent - triggered by calling list.removeAll()/list.retainAll()
 Bound properties - content - read-only.
- size - read-only.
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classObservableList.ChangeTypestatic classObservableList.ElementAddedEventstatic classObservableList.ElementClearedEventstatic classObservableList.ElementEventstatic classObservableList.ElementRemovedEventstatic classObservableList.ElementUpdatedEventstatic classObservableList.MultiElementAddedEventstatic classObservableList.MultiElementRemovedEventprotected classObservableList.ObservableIteratorprotected classObservableList.ObservableListIterator
 - 
Field SummaryFields Modifier and Type Field Description static StringCONTENT_PROPERTYstatic StringSIZE_PROPERTY
 - 
Constructor SummaryConstructors Constructor Description ObservableList()ObservableList(Closure test)ObservableList(List delegate)ObservableList(List delegate, Closure test)
 - 
Method Summary- 
Methods inherited from class java.lang.Objectclone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 - 
Methods inherited from interface java.util.CollectionparallelStream, removeIf, stream, toArray
 - 
Methods inherited from interface java.util.ListreplaceAll, sort, spliterator
 
- 
 
- 
- 
- 
Field Detail- 
SIZE_PROPERTYpublic static final String SIZE_PROPERTY - See Also:
- Constant Field Values
 
 - 
CONTENT_PROPERTYpublic static final String CONTENT_PROPERTY - See Also:
- Constant Field Values
 
 
- 
 - 
Method Detail- 
getContentpublic List getContent() 
 - 
getDelegateListprotected List getDelegateList() 
 - 
getTestprotected Closure getTest() 
 - 
fireElementAddedEventprotected void fireElementAddedEvent(int index, Object element)
 - 
fireMultiElementAddedEventprotected void fireMultiElementAddedEvent(int index, List values)
 - 
fireElementClearedEventprotected void fireElementClearedEvent(List values) 
 - 
fireElementRemovedEventprotected void fireElementRemovedEvent(int index, Object element)
 - 
fireMultiElementRemovedEventprotected void fireMultiElementRemovedEvent(List values) 
 - 
fireElementUpdatedEventprotected void fireElementUpdatedEvent(int index, Object oldValue, Object newValue)
 - 
fireElementEventprotected void fireElementEvent(ObservableList.ElementEvent event) 
 - 
fireSizeChangedEventprotected void fireSizeChangedEvent(int oldValue, int newValue)
 - 
addpublic boolean add(Object o) - Specified by:
- addin interface- Collection
- Specified by:
- addin interface- List
 
 - 
addAllpublic boolean addAll(Collection c) - Specified by:
- addAllin interface- Collection
- Specified by:
- addAllin interface- List
 
 - 
addAllpublic boolean addAll(int index, Collection c)
 - 
clearpublic void clear() - Specified by:
- clearin interface- Collection
- Specified by:
- clearin interface- List
 
 - 
containspublic boolean contains(Object o) - Specified by:
- containsin interface- Collection
- Specified by:
- containsin interface- List
 
 - 
containsAllpublic boolean containsAll(Collection c) - Specified by:
- containsAllin interface- Collection
- Specified by:
- containsAllin interface- List
 
 - 
equalspublic boolean equals(Object o) 
 - 
hashCodepublic int hashCode() 
 - 
isEmptypublic boolean isEmpty() - Specified by:
- isEmptyin interface- Collection
- Specified by:
- isEmptyin interface- List
 
 - 
iteratorpublic Iterator iterator() 
 - 
lastIndexOfpublic int lastIndexOf(Object o) - Specified by:
- lastIndexOfin interface- List
 
 - 
listIteratorpublic ListIterator listIterator() - Specified by:
- listIteratorin interface- List
 
 - 
listIteratorpublic ListIterator listIterator(int index) - Specified by:
- listIteratorin interface- List
 
 - 
removepublic boolean remove(Object o) - Specified by:
- removein interface- Collection
- Specified by:
- removein interface- List
 
 - 
removeAllpublic boolean removeAll(Collection c) - Specified by:
- removeAllin interface- Collection
- Specified by:
- removeAllin interface- List
 
 - 
retainAllpublic boolean retainAll(Collection c) - Specified by:
- retainAllin interface- Collection
- Specified by:
- retainAllin interface- List
 
 - 
sizepublic int size() - Specified by:
- sizein interface- Collection
- Specified by:
- sizein interface- List
 
 - 
getSizepublic int getSize() 
 - 
toArraypublic Object[] toArray() - Specified by:
- toArrayin interface- Collection
- Specified by:
- toArrayin interface- List
 
 - 
toArraypublic Object[] toArray(Object[] a) - Specified by:
- toArrayin interface- Collection
- Specified by:
- toArrayin interface- List
 
 - 
addPropertyChangeListenerpublic void addPropertyChangeListener(PropertyChangeListener listener) 
 - 
addPropertyChangeListenerpublic void addPropertyChangeListener(String propertyName, PropertyChangeListener listener) 
 - 
getPropertyChangeListenerspublic PropertyChangeListener[] getPropertyChangeListeners() 
 - 
getPropertyChangeListenerspublic PropertyChangeListener[] getPropertyChangeListeners(String propertyName) 
 - 
removePropertyChangeListenerpublic void removePropertyChangeListener(PropertyChangeListener listener) 
 - 
removePropertyChangeListenerpublic void removePropertyChangeListener(String propertyName, PropertyChangeListener listener) 
 - 
hasListenerspublic boolean hasListeners(String propertyName) 
 
- 
 
-