K
- the key element typeV
- the value element typepublic final class WeakMapChangeListener<K,V> extends java.lang.Object implements MapChangeListener<K,V>
WeakMapChangeListener
can be used, if an ObservableMap
should only maintain a weak reference to the listener. This helps to avoid
memory leaks, that can occur if observers are not unregistered from observed
objects after use.
WeakMapChangeListener
are created by passing in the original
MapChangeListener
. The WeakMapChangeListener
should then be
registered to listen for changes of the observed object.
Note: You have to keep a reference to the MapChangeListener
, that
was passed in as long as it is in use, otherwise it will be garbage collected
to soon.
MapChangeListener
,
ObservableMap
,
javafx.beans.WeakListener
MapChangeListener.Change<K,V>
Modifier and Type | Field and Description |
---|---|
private java.lang.ref.WeakReference<MapChangeListener<K,V>> |
ref |
Constructor and Description |
---|
WeakMapChangeListener(MapChangeListener<K,V> listener)
The constructor of
WeakMapChangeListener . |
Modifier and Type | Method and Description |
---|---|
void |
onChanged(MapChangeListener.Change<? extends K,? extends V> change)
Called after a change has been made to an ObservableMap.
|
boolean |
wasGarbageCollected() |
private final java.lang.ref.WeakReference<MapChangeListener<K,V>> ref
public WeakMapChangeListener(MapChangeListener<K,V> listener)
WeakMapChangeListener
.listener
- The original listener that should be notifiedpublic boolean wasGarbageCollected()
public void onChanged(MapChangeListener.Change<? extends K,? extends V> change)
onChanged
in interface MapChangeListener<K,V>
change
- the change that was made