Bug 167204 [DataBinding] Ensure that getterCalled() is invoked correctly in WritableList
We need to clean up WritableList as its getterCalled() invocation is somewhat sporatic. Changes that need to be made: * setters should not invoke getterCalled(); this means all add(..) and remove(...) methods. * iterator() should invoke getterCalled() (ObservableList) * next() and hasNext() on the iterator should not invoke getterCalled() (ObservableList) The idea was previously that because add*(...) and remove*(...) returned a value then the state was retrieved thus getterCalled() should be invoked. But for the sake of simplicity these will be removed; we can always add them back later. But in removing the calls to getterCalled() we need to ensure that the current realm is still checked.
bundles/org.eclipse.core.databinding.observable/src/org/eclipse/core/databinding/observable/list/WritableList.java
public WritableList(Realm realm) {
		this(realm, Object.class);
	}
	
	/**
	 * Creates an empty writable list in the default realm, containing elements of the given type.
	 * @param realm 
	 * 
	 * @param elementType
	 */
	public WritableList(Object elementType) {
		this(Realm.getDefault(), new ArrayList(), elementType);
	}
	/**
	 * Creates an empty writable list containing elements of the given type.
	 * @param realm 
	 * 
	 * @param elementType
	 */
	public WritableList(Realm realm, Object elementType) {
		super(realm, new ArrayList(), elementType);
	}
	
	/**
	 * Creates a writable list containing elements of the given type,
	 * wrapping an existing client-supplied list.
	 * @param realm 
	 * 
	 * @param toWrap The java.utilList to wrap
	 * @param elementType