public final class WeakInvalidationListener extends Object implements InvalidationListener, WeakListener
WeakInvalidationListener can be used, if an Observable
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.
WeakInvalidationListener are created by passing in the original
InvalidationListener. The WeakInvalidationListener should
then be registered to listen for changes of the observed object.
Note: You have to keep a reference to the InvalidationListener, that
was passed in as long as it is in use, otherwise it will be garbage collected
to soon.
InvalidationListener,
Observable| Constructor and Description |
|---|
WeakInvalidationListener(InvalidationListener listener)
The constructor of
WeakInvalidationListener. |
| Modifier and Type | Method and Description |
|---|---|
void |
invalidated(Observable observable)
This method needs to be provided by an implementation of
InvalidationListener. |
boolean |
wasGarbageCollected()
Returns
true if the linked listener was garbage-collected. |
public WeakInvalidationListener(InvalidationListener listener)
WeakInvalidationListener.listener - The original listener that should be notifiedpublic boolean wasGarbageCollected()
true if the linked listener was garbage-collected.
In this case, the listener can be removed from the observable.wasGarbageCollected in interface WeakListenertrue if the linked listener was garbage-collected.public void invalidated(Observable observable)
InvalidationListener. It is called if an Observable
becomes invalid.
In general is is considered bad practice to modify the observed value in this method.
invalidated in interface InvalidationListenerobservable - The Observable that became invalidCopyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.