Bug 118516 [DataBinding] Asserts should provide meaningful messages
Currently we use JDK Assert in various places in the code. However, if an assert fails, there often is no indication of why it failed or what the assert failure means without looking at the code indicated by the stack trace. It would be nicer if we would log exceptions or throw RuntimeExceptions with useful error messages instead.
bundles/org.eclipse.core.databinding.observable/src/org/eclipse/core/databinding/observable/list/AbstractObservableList.java
protected void firstListenerAdded() {
				AbstractObservableList.this.firstListenerAdded();
			}
			protected void lastListenerRemoved() {
				AbstractObservableList.this.lastListenerRemoved();
			}
		};
	}
	/**
	 * 
	 */
	public AbstractObservableList() {
		this(Realm.getDefault());
	}
	
	public boolean isStale() {
		return false;
	}
	public synchronized void addListChangeListener(IListChangeListener listener) {
		changeSupport.addListener(ListChangeEvent.TYPE, listener);
	}
	public synchronized void removeListChangeListener(IListChangeListener listener) {
		changeSupport.removeListener(ListChangeEvent.TYPE, listener);
	}
	protected void fireListChange(ListDiff diff) {
		
		fireChange();
		changeSupport.fireEvent(new ListChangeEvent(this, diff));
	}
	public synchronized void addChangeListener(IChangeListener listener) {