|
Eclipse Platform Release 3.3 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.core.databinding.observable.AbstractObservable
org.eclipse.core.databinding.observable.value.AbstractObservableValue
org.eclipse.core.databinding.observable.value.ComputedValue
public abstract class ComputedValue
A Lazily calculated value that automatically computes and registers listeners on its dependencies as long as all of its dependencies are IObservable objects
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 Summary | |
---|---|
ComputedValue()
|
|
ComputedValue(java.lang.Object valueType)
|
|
ComputedValue(Realm realm)
|
|
ComputedValue(Realm realm,
java.lang.Object valueType)
|
Method Summary | |
---|---|
void |
addChangeListener(IChangeListener listener)
Adds the given change listener to the list of change listeners. |
protected void |
addListener(java.lang.Object listenerType,
IObservablesListener listener)
|
void |
addValueChangeListener(IValueChangeListener listener)
|
protected abstract java.lang.Object |
calculate()
Subclasses must override this method to provide the object's value. |
void |
dispose()
Disposes of this observable object, removing all listeners registered with this object, and all listeners this object might have registered on other objects. |
protected java.lang.Object |
doGetValue()
|
protected void |
fireEvent(ObservableEvent event)
|
protected void |
firstListenerAdded()
|
Realm |
getRealm()
|
java.lang.Object |
getValueType()
The value type of this observable value, or null if this
observable value is untyped. |
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 |
makeDirty()
|
protected void |
removeListener(java.lang.Object listenerType,
IObservablesListener listener)
|
Methods inherited from class org.eclipse.core.databinding.observable.value.AbstractObservableValue |
---|
doSetValue, fireChange, fireValueChange, getValue, removeValueChangeListener, setValue |
Methods inherited from class org.eclipse.core.databinding.observable.AbstractObservable |
---|
addStaleListener, checkRealm, fireStale, removeChangeListener, removeStaleListener |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.eclipse.core.databinding.observable.IObservable |
---|
addStaleListener, getRealm, removeChangeListener, removeStaleListener |
Constructor Detail |
---|
public ComputedValue()
public ComputedValue(java.lang.Object valueType)
valueType
- can be null
public ComputedValue(Realm realm)
realm
- public ComputedValue(Realm realm, java.lang.Object valueType)
realm
- valueType
- Method Detail |
---|
protected final java.lang.Object doGetValue()
doGetValue
in class AbstractObservableValue
protected abstract java.lang.Object calculate()
protected final void makeDirty()
public boolean isStale()
IObservable
isStale
in interface IObservable
isStale
in class AbstractObservableValue
public java.lang.Object getValueType()
IObservableValue
null
if this
observable value is untyped.
null
public void addChangeListener(IChangeListener listener)
IObservable
addChangeListener
in interface IObservable
addChangeListener
in class AbstractObservable
public void addValueChangeListener(IValueChangeListener listener)
addValueChangeListener
in interface IObservableValue
addValueChangeListener
in class AbstractObservableValue
public void dispose()
IObservable
dispose
in interface IObservable
dispose
in class AbstractObservableValue
protected void addListener(java.lang.Object listenerType, IObservablesListener listener)
listenerType
- listener
- protected void removeListener(java.lang.Object listenerType, IObservablesListener listener)
listenerType
- listener
- protected boolean hasListeners()
protected void fireEvent(ObservableEvent event)
protected void firstListenerAdded()
protected void lastListenerRemoved()
public Realm getRealm()
|
Eclipse Platform Release 3.3 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Guidelines for using Eclipse APIs.
Copyright (c) IBM Corp. and others 2000, 2007. All rights reserved.