public abstract class AbstractObservableValue extends AbstractObservable implements IObservableValue
This class is thread safe. All state accessing methods must be invoked from
the current realm
. Methods for adding and removing
listeners may be invoked from any thread.
Constructor and Description |
---|
AbstractObservableValue()
Constructs a new instance with the default realm.
|
AbstractObservableValue(Realm realm) |
Modifier and Type | Method and Description |
---|---|
protected void |
addListener(Object listenerType,
IObservablesListener listener) |
void |
addValueChangeListener(IValueChangeListener listener) |
protected Object |
clone() |
protected abstract Object |
doGetValue() |
protected void |
doSetValue(Object value)
Template method for setting the value of the observable.
|
protected void |
fireChange() |
protected void |
fireEvent(ObservableEvent event) |
protected void |
fireValueChange(ValueDiff diff) |
protected void |
firstListenerAdded() |
Realm |
getRealm() |
Object |
getValue()
Returns the value.
|
protected boolean |
hasListeners() |
boolean |
isStale()
Returns whether the state of this observable is stale and is expected to
change soon.
|
protected void |
lastListenerRemoved() |
protected void |
removeListener(Object listenerType,
IObservablesListener listener) |
void |
removeValueChangeListener(IValueChangeListener listener) |
void |
setValue(Object value)
Sets the value.
|
addChangeListener, addDisposeListener, addStaleListener, checkRealm, dispose, fireStale, isDisposed, removeChangeListener, removeDisposeListener, removeStaleListener
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getValueType
addChangeListener, addDisposeListener, addStaleListener, dispose, getRealm, isDisposed, removeChangeListener, removeDisposeListener, removeStaleListener
public AbstractObservableValue()
public AbstractObservableValue(Realm realm)
realm
- public void addValueChangeListener(IValueChangeListener listener)
addValueChangeListener
in interface IObservableValue
public void removeValueChangeListener(IValueChangeListener listener)
removeValueChangeListener
in interface IObservableValue
public final void setValue(Object value)
IObservableValue
Realm
of the observable.setValue
in interface IObservableValue
value
- the value to setprotected void doSetValue(Object value)
UnsupportedOperationException
.value
- protected void fireValueChange(ValueDiff diff)
public final Object getValue()
IObservableValue
Realm
of the observable.getValue
in interface IObservableValue
protected abstract Object doGetValue()
public boolean isStale()
IObservable
isStale
in interface IObservable
protected void fireChange()
fireChange
in class AbstractObservable
protected void addListener(Object listenerType, IObservablesListener listener)
listenerType
- listener
- protected void removeListener(Object listenerType, IObservablesListener listener)
listenerType
- listener
- protected boolean hasListeners()
protected void fireEvent(ObservableEvent event)
protected void firstListenerAdded()
protected void lastListenerRemoved()
public Realm getRealm()
protected Object clone() throws CloneNotSupportedException
clone
in class Object
CloneNotSupportedException
Copyright (c) 2000, 2015 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.