Bug 315698 'persistedState' feature not reconciled for existing contributions
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/XMLModelReconciler.java
Class<?> instanceClass = feature.getEType().getInstanceClass();
		if (instanceClass == String.class) {
			return featureValue;
		} else if (instanceClass == int.class) {
			return Integer.valueOf(featureValue);
		} else if (instanceClass == boolean.class) {
			return Boolean.valueOf(featureValue);
		} else if (feature == UiPackageImpl.eINSTANCE.getGenericTrimContainer_Side()) {
			return SideValue.getByName(featureValue);
		} else if (feature == MenuPackageImpl.eINSTANCE.getItem_Type()) {
			return ItemType.getByName(featureValue);
		}
		return null;
	}
	static Object findReference(List<Object> references, String id) {
		for (Object reference : references) {
			if (reference instanceof MApplicationElement && getLocalId(reference).equals(id)) {
				return reference;
			}
		}
		return null;
	}
	private boolean constructDeltas(Collection<ModelDelta> deltas, List<Object> references,
			EObject object, Element element, String id) {
		if (object instanceof MApplicationElement || object instanceof MKeyBinding) {
			if (getLocalId(object).equals(id)) {
				constructDeltas(deltas, references, object, element);
				return true;
			}
		}