public void setValue(Object value) { checkRealm(); Object currentValue = getValue(); ValueDiff diff = Diffs.createValueDiff(currentValue, value); boolean okToProceed = fireValueChanging(diff); if (!okToProceed) { throw new ChangeVetoException("Change not permitted"); //$NON-NLS-1$ } super.setValue(value); }