Bug 252117 [DataBinding] ListBinding does not update from model to target in some cases
bundles/org.eclipse.core.databinding.beans/src/org/eclipse/core/internal/databinding/beans/JavaBeanPropertyObservableMap.java
import java.util.Map;
import java.util.Set;
import org.eclipse.core.databinding.BindingException;
import org.eclipse.core.databinding.beans.IBeanObservable;
import org.eclipse.core.databinding.observable.Diffs;
import org.eclipse.core.databinding.observable.Realm;
import org.eclipse.core.databinding.observable.map.ObservableMap;
import org.eclipse.core.internal.databinding.Util;
import org.eclipse.core.runtime.Assert;
/**
 * @since 1.0
 * 
 */
public class JavaBeanPropertyObservableMap extends ObservableMap implements
		IBeanObservable {
	private final Object object;
	private Object keyType;
	private Object valueType;
	private PropertyChangeListener mapListener = new PropertyChangeListener() {
		public void propertyChange(final PropertyChangeEvent event) {
			if (!updating) {
				getRealm().exec(new Runnable() {
					public void run() {
						Map oldValue = wrappedMap;
						Map newValue = (Map) event.getNewValue();
						wrappedMap = new HashMap(newValue);
						
						fireMapChange(Diffs.computeMapDiff(oldValue, newValue));
					}
				});