private void addInverseAttribute(Attribute attrib, EClass cls) { InverseAttribute inverseAttribute = (InverseAttribute) attrib; EReference eRef = eFactory.createEReference(); eRef.setUnsettable(true); // Inverses are always optional? eRef.getEAnnotations().add(createInverseAnnotation()); eRef.setName(attrib.getName());
EClass ifcProductIfc4 = schema.getEClass("ifc4", "IfcProduct"); EReference ifc2x3Geometry = schema.createEReference(ifcProductIfc2x3tc1, "geometry", geometryInfo); ifc2x3Geometry.setUnsettable(true); ifc2x3Geometry.getEAnnotations().add(createHiddenAnnotation()); EReference ifc4Geometry = schema.createEReference(ifcProductIfc4, "geometry", geometryInfo); ifc4Geometry.setUnsettable(true); ifc4Geometry.getEAnnotations().add(createHiddenAnnotation());
eReference.setName(attributeName.getName()); eReference.setDerived(true); eReference.setUnsettable(true); eReference.setEType(eType); eClass.getEStructuralFeatures().add(eReference);
eRef.setUnsettable(expAttrib.isOptional()); eRef.setEType(eType); cls.getEStructuralFeatures().add(eRef); eRef.setUnsettable(expAttrib.isOptional()); eRef.setEType(eType); eRef.setUnique(false);
eReference.setUnsettable(true); eReference.setUnsettable(true);
eReference.setUnsettable(true); eReference.setUnsettable(true);
if (needsHolder) ((EReference)result).setUnsettable(false); ((EReference)result).setResolveProxies(false);
if (needsHolder) ((EReference)result).setUnsettable(false); ((EReference)result).setResolveProxies(false);