Class DecoratingObservableValue<T>
java.lang.Object
org.eclipse.core.databinding.observable.AbstractObservable
org.eclipse.core.databinding.observable.DecoratingObservable
org.eclipse.core.databinding.observable.value.DecoratingObservableValue<T>
- Type Parameters:
T- the type of value being observed
- All Implemented Interfaces:
IDecoratingObservable,IObservable,IObservableValue<T>
- Direct Known Subclasses:
DecoratingVetoableValue
public class DecoratingObservableValue<T>
extends DecoratingObservable
implements IObservableValue<T>
An observable value which decorates another observable value.
- Since:
- 1.2
- Implementation Note:
- If methods are added to the interface which this class implements then implementations of those methods must be added to this class.
-
Constructor Summary
ConstructorsConstructorDescriptionDecoratingObservableValue(IObservableValue<T> decorated, boolean disposeDecoratedOnDispose) Constructs a DecoratingObservableValue which decorates the given observable. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddListener(Object listenerType, IObservablesListener listener) voidaddValueChangeListener(IValueChangeListener<? super T> listener) protected Objectclone()voiddispose()Disposes of this observable object, removing all listeners registered with this object, and all listeners this object might have registered on other objects.protected voidprotected voidfireEvent(ObservableEvent event) protected voidfireValueChange(ValueDiff<T> diff) protected voidgetRealm()getValue()Returns the value.The value type of this observable value, ornullif this observable value is untyped.protected voidhandleValueChange(ValueChangeEvent<? extends T> event) Called whenever a ValueChangeEvent is received from the decorated observable.protected booleanprotected voidprotected voidremoveListener(Object listenerType, IObservablesListener listener) voidremoveValueChangeListener(IValueChangeListener<? super T> listener) voidSets the value.Methods inherited from class org.eclipse.core.databinding.observable.DecoratingObservable
equals, getDecorated, getterCalled, handleStaleEvent, hashCode, isStaleMethods inherited from class org.eclipse.core.databinding.observable.AbstractObservable
addChangeListener, addDisposeListener, addStaleListener, checkRealm, fireStale, isDisposed, removeChangeListener, removeDisposeListener, removeStaleListenerMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.core.databinding.observable.IObservable
addChangeListener, addDisposeListener, addStaleListener, getRealm, isDisposed, isStale, removeChangeListener, removeDisposeListener, removeStaleListener
-
Constructor Details
-
DecoratingObservableValue
Constructs a DecoratingObservableValue which decorates the given observable.- Parameters:
decorated- the observable value being decorateddisposeDecoratedOnDispose- whether the decorated observable should be disposed when the decorator is disposed
-
-
Method Details
-
addValueChangeListener
- Specified by:
addValueChangeListenerin interfaceIObservableValue<T>- Parameters:
listener- the change listener to add; notnull
-
removeValueChangeListener
- Specified by:
removeValueChangeListenerin interfaceIObservableValue<T>- Parameters:
listener- the change listener to remove; notnull
-
fireValueChange
-
fireChange
protected void fireChange()- Overrides:
fireChangein classAbstractObservable
-
firstListenerAdded
protected void firstListenerAdded()- Overrides:
firstListenerAddedin classDecoratingObservable
-
lastListenerRemoved
protected void lastListenerRemoved()- Overrides:
lastListenerRemovedin classDecoratingObservable
-
handleValueChange
Called whenever a ValueChangeEvent is received from the decorated observable. By default, this method fires the value change event again, with the decorating observable as the event source. Subclasses may override to provide different behavior.- Parameters:
event- the change event received from the decorated observable
-
getValue
Description copied from interface:IObservableValueReturns the value. Must be invoked in theRealmof the observable.- Specified by:
getValuein interfaceIObservableValue<T>- Returns:
- the current value
-
setValue
Description copied from interface:IObservableValueSets the value. Must be invoked in theRealmof the observable.- Specified by:
setValuein interfaceIObservableValue<T>- Parameters:
value- the value to set
-
getValueType
Description copied from interface:IObservableValueThe value type of this observable value, ornullif this observable value is untyped.- Specified by:
getValueTypein interfaceIObservableValue<T>- Returns:
- the value type, or
null
-
dispose
public void dispose()Description copied from interface:IObservableDisposes of this observable object, removing all listeners registered with this object, and all listeners this object might have registered on other objects.- Specified by:
disposein interfaceIObservable- Overrides:
disposein classDecoratingObservable
-
addListener
- Parameters:
listenerType- arbitrary object to identify a type of the listenerlistener- the listener to add; notnull
-
removeListener
- Parameters:
listenerType- arbitrary object to identify a type of the listenerlistener- the listener to remove; notnull
-
hasListeners
protected boolean hasListeners() -
fireEvent
-
getRealm
- Returns:
- Returns the realm.
-
clone
- Overrides:
clonein classObject- Throws:
CloneNotSupportedException
-