T
- the type of value being observedpublic abstract class AbstractVetoableValue<T> extends AbstractObservableValue<T> implements IVetoableValue<T>
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 |
---|
AbstractVetoableValue()
Creates a new vetoable value.
|
AbstractVetoableValue(Realm realm) |
Modifier and Type | Method and Description |
---|---|
protected void |
addListener(Object listenerType,
IObservablesListener listener) |
void |
addValueChangingListener(IValueChangingListener<T> listener) |
protected Object |
clone() |
protected abstract void |
doSetApprovedValue(T value)
Sets the value.
|
protected void |
doSetValue(T value)
Template method for setting the value of the observable.
|
protected void |
fireEvent(ObservableEvent event) |
protected boolean |
fireValueChanging(ValueDiff<T> diff)
Notifies listeners about a pending change, and returns true if no
listener vetoed the change.
|
protected void |
firstListenerAdded() |
Realm |
getRealm() |
protected boolean |
hasListeners() |
protected void |
lastListenerRemoved() |
protected void |
removeListener(Object listenerType,
IObservablesListener listener) |
void |
removeValueChangingListener(IValueChangingListener<T> listener) |
addValueChangeListener, doGetValue, fireChange, fireValueChange, getValue, isStale, removeValueChangeListener, setValue
addChangeListener, addDisposeListener, addStaleListener, checkRealm, dispose, fireStale, isDisposed, removeChangeListener, removeDisposeListener, removeStaleListener
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addValueChangeListener, getValue, getValueType, removeValueChangeListener, setValue
addChangeListener, addDisposeListener, addStaleListener, dispose, getRealm, isDisposed, isStale, removeChangeListener, removeDisposeListener, removeStaleListener
public AbstractVetoableValue()
public AbstractVetoableValue(Realm realm)
realm
- protected final void doSetValue(T value)
AbstractObservableValue
UnsupportedOperationException
.doSetValue
in class AbstractObservableValue<T>
protected abstract void doSetApprovedValue(T value)
value
- public void addValueChangingListener(IValueChangingListener<T> listener)
addValueChangingListener
in interface IVetoableValue<T>
public void removeValueChangingListener(IValueChangingListener<T> listener)
removeValueChangingListener
in interface IVetoableValue<T>
protected boolean fireValueChanging(ValueDiff<T> diff)
diff
- 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, 2016 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.