Bug 315281 update copyrights for 3.6
bundles/org.eclipse.core.databinding.property/src/org/eclipse/core/internal/databinding/property/value/SetSimpleValueObservableMap.java
import org.eclipse.core.databinding.property.value.SimpleValueProperty;
import org.eclipse.core.internal.databinding.identity.IdentityMap;
import org.eclipse.core.internal.databinding.identity.IdentitySet;
import org.eclipse.core.internal.databinding.property.Util;
/**
 * @since 1.2
 */
public class SetSimpleValueObservableMap extends ComputedObservableMap
		implements IPropertyObservable {
	private SimpleValueProperty detailProperty;
	private INativePropertyListener listener;
	private Map cachedValues;
	private Set staleKeys;
	private boolean updating;
	/**
	 * @param keySet
	 * @param valueProperty
	 */
	public SetSimpleValueObservableMap(IObservableSet keySet,
			SimpleValueProperty valueProperty) {
		super(keySet, valueProperty.getValueType());
		this.detailProperty = valueProperty;
	}
	protected void firstListenerAdded() {
		if (listener == null) {
			listener = detailProperty
					.adaptListener(new ISimplePropertyListener() {
						public void handleEvent(final SimplePropertyEvent event) {
							if (!isDisposed() && !updating) {
								getRealm().exec(new Runnable() {