|
Groovy Documentation | |||||||
FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object groovy.util.ObservableSet
public class ObservableSet extends java.lang.Object
Set 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 set = new ObservableSet( {!(it instanceof Closure)} ) <p/> // skip all properties whose name matches a regex def set = new ObservableSet( { 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
Bound properties
Nested Class Summary | |
---|---|
enum |
ObservableSet.ChangeType
|
static class |
ObservableSet.ElementAddedEvent
|
static class |
ObservableSet.ElementClearedEvent
|
static class |
ObservableSet.ElementEvent
|
static class |
ObservableSet.ElementRemovedEvent
|
static class |
ObservableSet.MultiElementAddedEvent
|
static class |
ObservableSet.MultiElementRemovedEvent
|
protected class |
ObservableSet.ObservableIterator
|
Field Summary | |
---|---|
static java.lang.String |
CONTENT_PROPERTY
|
static java.lang.String |
SIZE_PROPERTY
|
Constructor Summary | |
ObservableSet()
|
|
ObservableSet(java.util.Set delegate)
|
|
ObservableSet(Closure test)
|
|
ObservableSet(java.util.Set delegate, Closure test)
|
Method Summary | |
---|---|
boolean
|
add(E e)
|
boolean
|
addAll(java.util.Collection c)
|
void
|
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
|
void
|
addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
|
void
|
clear()
|
boolean
|
contains(java.lang.Object o)
|
boolean
|
containsAll(java.util.Collection objects)
|
protected void
|
fireElementAddedEvent(java.lang.Object element)
|
protected void
|
fireElementClearedEvent(java.util.List values)
|
protected void
|
fireElementEvent(ObservableSet.ElementEvent event)
|
protected void
|
fireElementRemovedEvent(java.lang.Object element)
|
protected void
|
fireMultiElementAddedEvent(java.util.List values)
|
protected void
|
fireMultiElementRemovedEvent(java.util.List values)
|
protected void
|
fireSizeChangedEvent(int oldValue, int newValue)
|
java.util.Set
|
getContent()
|
protected java.util.Set
|
getDelegateSet()
|
java.beans.PropertyChangeListener[]
|
getPropertyChangeListeners()
|
java.beans.PropertyChangeListener[]
|
getPropertyChangeListeners(java.lang.String propertyName)
|
protected Closure
|
getTest()
|
boolean
|
hasListeners(java.lang.String propertyName)
|
boolean
|
isEmpty()
|
java.util.Iterator
|
iterator()
|
boolean
|
remove(java.lang.Object o)
|
boolean
|
removeAll(java.util.Collection c)
|
void
|
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
|
void
|
removePropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
|
boolean
|
retainAll(java.util.Collection c)
|
int
|
size()
|
java.lang.Object[]
|
toArray()
|
java.lang.Object[]
|
toArray(java.lang.Object[] ts)
|
Methods inherited from class java.lang.Object | |
---|---|
java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll() |
Field Detail |
---|
public static final java.lang.String CONTENT_PROPERTY
public static final java.lang.String SIZE_PROPERTY
Constructor Detail |
---|
public ObservableSet()
public ObservableSet(java.util.Set delegate)
public ObservableSet(Closure test)
public ObservableSet(java.util.Set delegate, Closure test)
Method Detail |
---|
public boolean add(E e)
public boolean addAll(java.util.Collection c)
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
public void addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
public void clear()
public boolean contains(java.lang.Object o)
public boolean containsAll(java.util.Collection objects)
protected void fireElementAddedEvent(java.lang.Object element)
protected void fireElementClearedEvent(java.util.List values)
protected void fireElementEvent(ObservableSet.ElementEvent event)
protected void fireElementRemovedEvent(java.lang.Object element)
protected void fireMultiElementAddedEvent(java.util.List values)
protected void fireMultiElementRemovedEvent(java.util.List values)
protected void fireSizeChangedEvent(int oldValue, int newValue)
public java.util.Set getContent()
protected java.util.Set getDelegateSet()
public java.beans.PropertyChangeListener[] getPropertyChangeListeners()
public java.beans.PropertyChangeListener[] getPropertyChangeListeners(java.lang.String propertyName)
protected Closure getTest()
public boolean hasListeners(java.lang.String propertyName)
public boolean isEmpty()
public java.util.Iterator iterator()
public boolean remove(java.lang.Object o)
public boolean removeAll(java.util.Collection c)
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
public void removePropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
public boolean retainAll(java.util.Collection c)
public int size()
public java.lang.Object[] toArray()
public java.lang.Object[] toArray(java.lang.Object[] ts)
Groovy Documentation