Bug 315281 update copyrights for 3.6
bundles/org.eclipse.core.databinding.property/src/org/eclipse/core/internal/databinding/property/MapPropertyDetailValuesMap.java
}
	public Object getKeyType() {
		return masterProperty.getKeyType();
	}
	public Object getValueType() {
		return detailProperty.getValueType();
	}
	protected Map doGetMap(Object source) {
		Map masterMap = masterProperty.getMap(source);
		Map detailMap = new IdentityMap();
		for (Iterator it = masterMap.entrySet().iterator(); it.hasNext();) {
			Map.Entry entry = (Map.Entry) it.next();
			detailMap.put(entry.getKey(), detailProperty.getValue(entry
					.getValue()));
		}
		return detailMap;
	}
	protected void doUpdateMap(Object source, MapDiff diff) {
		if (!diff.getAddedKeys().isEmpty())
			throw new UnsupportedOperationException(toString()
					+ " does not support entry additions"); 
		if (!diff.getRemovedKeys().isEmpty())
			throw new UnsupportedOperationException(toString()
					+ " does not support entry removals"); 
		Map masterMap = masterProperty.getMap(source);
		for (Iterator it = diff.getChangedKeys().iterator(); it.hasNext();) {
			Object key = it.next();
			Object masterValue = masterMap.get(key);
			detailProperty.setValue(masterValue, diff.getNewValue(key));
		}