/** * Sets a value on a model object. If the feature is multi-valued, only the single value that * the wrapper represents is set. */ protected void setValue(IResource object, IReference property, Object value) { if (object.getApplicableCardinality(property).getSecond() != 1) { @SuppressWarnings("unchecked") List<Object> list = ((List<Object>) object.get(property)); list.set(index, value); } else { object.set(property, value); } }