Top Description Fields Constructors Methods
javafx.collections

public final Class WeakSetChangeListener<E>

extends Object
implements SetChangeListener<E>, WeakListener
Class Inheritance
All Implemented Interfaces
javafx.beans.WeakListener, javafx.collections.SetChangeListener
Type Parameters
<E>
The type of the observed value
Imports
javafx.beans.NamedArg, .WeakListener, java.lang.ref.WeakReference

A WeakSetChangeListener can be used, if an javafx.collections.ObservableSet 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.

WeakSetChangeListener are created by passing in the original SetChangeListener. The WeakSetChangeListener should then be registered to listen for changes of the observed object.

Note

You have to keep a reference to the SetChangeListener, that was passed in as long as it is in use, otherwise it will be garbage collected to soon.

Since
JavaFX 2.1
See Also
SetChangeListener, ObservableSet, javafx.beans.WeakListener

Field Summary

Modifier and TypeField and Description
private final WeakReference<SetChangeListener<E>>

Constructor Summary

AccessConstructor and Description
public
WeakSetChangeListener(SetChangeListener<E>
The original listener that should be notified
listener
)

The constructor of WeakSetChangeListener.

Method Summary

Modifier and TypeMethod and Description
public void
onChanged(SetChangeListener.Change<? extends E>
the change that was made
change
)

Implements javafx.collections.SetChangeListener.onChanged.

Called after a change has been made to an ObservableSet.

public boolean
wasGarbageCollected()

Implements javafx.beans.WeakListener.wasGarbageCollected.

Returns true if the linked listener was garbage-collected.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

refback to summary
private final WeakReference<SetChangeListener<E>> ref

Constructor Detail

WeakSetChangeListenerback to summary
public WeakSetChangeListener(SetChangeListener<E> listener)

The constructor of WeakSetChangeListener.

Parameters
listener:SetChangeListener<E>

The original listener that should be notified

Method Detail

onChangedback to summary
public void onChanged(SetChangeListener.Change<? extends E> change)

Implements javafx.collections.SetChangeListener.onChanged.

Doc from javafx.collections.SetChangeListener.onChanged.

Called after a change has been made to an ObservableSet. This method is called on every elementary change (add/remove) once. This means, complex changes like removeAll(Collection) or clear() may result in more than one call of onChanged method.

Parameters
change:SetChangeListener.Change<? extends E>

the change that was made

Annotations
@Override
wasGarbageCollectedback to summary
public boolean wasGarbageCollected()

Implements javafx.beans.WeakListener.wasGarbageCollected.

Doc from javafx.beans.WeakListener.wasGarbageCollected.

Returns true if the linked listener was garbage-collected. In this case, the listener can be removed from the observable.

Returns:boolean

true if the linked listener was garbage-collected.

Annotations
@Override