Bug 126839 [DataBinding] IObservable refactoring
bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/internal/provisional/databinding/AbstractUpdatableSet.java
ChangeEvent event;
        	
        	if (cachedRemoveEvent != null) {
        		event = cachedRemoveEvent;
        		event.newValue = removed;
        		
        		cachedRemoveEvent = null;
        	} else {
        		event = new ChangeEvent(this, ChangeEvent.REMOVE_MANY, null, removed);
        	}
        	
        	fireChangeEvent(event);
        	
        	cachedRemoveEvent = event;
        }
    }
	
	public void dispose() {
	}
	protected final void fireStale(boolean isStale) {
		fireChangeEvent(createStaleEvent(isStale));
	}
		
	public final Collection toCollection() {
		UpdatableTracker.getterCalled(this);
        return computeElements();
	}
	protected abstract Collection computeElements();
}