protected EClass getEClass(String className) { for (EPackage ePackage : packages) { if (ePackage.getEClassifier(className) != null) { return (EClass)ePackage.getEClassifier(className); } } return null; }
private EClass getOrCreateEClass(String name) { EClassifier eClassifier = schemaPack.getEClassifier(name); if (eClassifier == null) { eClassifier = eFactory.createEClass(); eClassifier.setName(name); schemaPack.getEClassifiers().add(eClassifier); } return (EClass) eClassifier; }
public EClass getEClass(String name) { return (EClass) ePackage.getEClassifier(name); }
public EEnum getEEnum(String name) { return (EEnum) ePackage.getEClassifier(name); }
public EClass getEClassForName(String packageName, String className) { EPackage ePackage = emfPackages.get(packageName); if (ePackage.getEClassifier(className) != null) { return (EClass) ePackage.getEClassifier(className); } return null; }
public EEnum getEEnum(String packageName, String enumName) { return (EEnum) packages.get(packageName).getEClassifier(enumName); }
protected EStructuralFeature getEStructuralFeature(String className, String fieldName) { for (EPackage ePackage : packages) { if (ePackage.getEClassifier(className) != null) { EClass eClass = (EClass)ePackage.getEClassifier(className); return eClass.getEStructuralFeature(fieldName); } } return null; }
public EClass getEClass(String packageName, String name) { EPackage ePackage = packages.get(packageName); if (ePackage == null) { throw new RuntimeException("Package with name " + name + " not found"); } EClass eClassifier = (EClass) ePackage.getEClassifier(name); if (eClassifier == null) { throw new RuntimeException("Class " + name + " not found in " + packageName); } return eClassifier; }
public EReference getEReference(String className, String referenceName) { EClassifier eClassifier = ePackage.getEClassifier(className); if (eClassifier instanceof EClass) { EClass eClass = (EClass)eClassifier; EStructuralFeature eStructuralFeature = eClass.getEStructuralFeature(referenceName); if (eStructuralFeature instanceof EReference) { return (EReference) eStructuralFeature; } } return null; }
public EAttribute getEAttribute(String className, String attributeName) { EClassifier eClassifier = ePackage.getEClassifier(className); if (eClassifier instanceof EClass) { EClass eClass = (EClass)eClassifier; EStructuralFeature eStructuralFeature = eClass.getEStructuralFeature(attributeName); if (eStructuralFeature instanceof EAttribute) { return (EAttribute) eStructuralFeature; } } return null; }
public EClassifier getEClassifier(String packageName, String classifierName) throws BimserverDatabaseException { if (packageName == null) { throw new BimserverDatabaseException("No package name given"); } if (packageName.contains(".")) { packageName = packageName.substring(packageName.lastIndexOf(".") + 1); } EPackage ePackage = emfPackages.get(packageName); if (ePackage == null) { throw new BimserverDatabaseException("No package found with name " + packageName); } if (ePackage.getEClassifier(classifierName) != null) { return ePackage.getEClassifier(classifierName); } throw new BimserverDatabaseException("No classifier found with name " + classifierName + " in package " + packageName); }
private void generate(EPackage ePackage, Schema schema) { this.ePackage = ePackage; packageMetaData = new PackageMetaData(ePackage, schema, Paths.get("tmp")); rootNode = OBJECT_MAPPER.createObjectNode(); definesNode = OBJECT_MAPPER.createObjectNode(); rootNode.set("defines", definesNode); process((EClass) ePackage.getEClassifier("IfcShapeRepresentation"), (EClass) ePackage.getEClassifier("IfcRepresentation")); // cleanup(); try { Files.write(OBJECT_MAPPER.writerWithDefaultPrettyPrinter().writeValueAsBytes(rootNode), new File("C:\\Users\\Ruben de Laat\\git\\BIMserver\\BimServer\\src\\org\\bimserver\\database\\queries\\json\\" + schema.name().toLowerCase() + "-geometry.json")); } catch (JsonProcessingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }
public EEnumLiteral getEEnumLiteral(String enumName, String literalName) { EClassifier eClassifier = ePackage.getEClassifier(enumName); if (eClassifier == null) { throw new RuntimeException("Classifier " + enumName + " not found in package " + ePackage.getName()); } if (eClassifier instanceof EEnum) { EEnum eEnum = (EEnum)eClassifier; EEnumLiteral literal = eEnum.getEEnumLiteral(literalName); if (literal == null) { throw new RuntimeException("No enum literal " + literalName + " found on " + ePackage.getName() + "." + enumName); } return literal; } else { throw new RuntimeException("Classifier " + enumName + " is not of type enum"); } }
public <T extends IdEObject> T create(Class<T> clazz) throws IfcModelInterfaceException, ObjectAlreadyExistsException { EClassifier eClassifier = getPackageMetaData().getEPackage().getEClassifier(clazz.getSimpleName()); if (eClassifier == null) { eClassifier = GeometryPackage.eINSTANCE.getEClassifier(clazz.getSimpleName()); } if (eClassifier == null) { throw new IfcModelInterfaceException("EClass not found " + clazz); } return create((EClass) eClassifier); }
public SummaryMap(PackageMetaData packageMetaData, RevisionSummary revisionSummary) { this.packageMetaData = packageMetaData; this.summaryMap = new TreeMap<EClass, Integer>(new EClassNameComparator()); for (RevisionSummaryContainer revisionSummaryContainer : revisionSummary.getList()) { for (RevisionSummaryType revisionSummaryType : revisionSummaryContainer.getTypes()) { summaryMap.put((EClass)packageMetaData.getEPackage().getEClassifier(revisionSummaryType.getName()), revisionSummaryType.getCount()); } } }
if (((EClass) packageMetaData.getEPackage().getEClassifier("IfcObject")).isSuperTypeOf(eClass)) { subMap = revisionSummaryContainerEntities; } else if (((EClass) packageMetaData.getEPackage().getEClassifier("IfcRelationship")).isSuperTypeOf(eClass)) { subMap = revisionSummaryContainerRelations; } else if (eClass.getEAnnotation("wrapped") != null) {
public Express2EMF(File schemaFileName, String modelName, String nsUri) { schema = new SchemaLoader(schemaFileName.getAbsolutePath()).getSchema(); eFactory = EcoreFactory.eINSTANCE; ePackage = EcorePackage.eINSTANCE; schemaPack = eFactory.createEPackage(); try { new DerivedReader(schemaFileName, schema); } catch (FileNotFoundException e) { LOGGER.error("", e); } schemaPack.setName(modelName); schemaPack.setNsPrefix("iai"); schemaPack.setNsURI(nsUri); createTristate(); addClasses(); addSupertypes(); addSimpleTypes(); addDerivedTypes(); addEnumerations(); addHackedTypes(); addSelects(); addAttributes(); addInverses(); EClass ifcBooleanClass = (EClass) schemaPack.getEClassifier("IfcBoolean"); ifcBooleanClass.getESuperTypes().add((EClass) schemaPack.getEClassifier("IfcValue")); doRealDerivedAttributes(); clean(); }
wrapperAttrib.setEType(ePackage.getEString()); } else if (type.getDomain() instanceof BooleanType) { wrapperAttrib.setEType(schemaPack.getEClassifier("Tristate")); } else if (type.getDomain() instanceof NumberType) { wrapperAttrib.setEType(ePackage.getEDouble()); wrapperAttrib.setEType(ePackage.getEByteArray()); } else if (type.getDomain() instanceof LogicalType) { wrapperAttrib.setEType(schemaPack.getEClassifier("Tristate"));
EClass classifier = (EClass) schemaPack.getEClassifier(type); eRef.setEType(classifier); String reverseName = inverseAttribute.getInverted_attr().getName();
@SuppressWarnings("unchecked") public void copyDecomposes(IdEObject ifcObjectDefinition, IdEObject ownerHistory) throws IfcModelInterfaceException, ObjectAlreadyExistsException { IdEObject newObjectDefinition = copy(ifcObjectDefinition, false, skipRepresentation); EStructuralFeature decomposesFeature = newObjectDefinition.eClass().getEStructuralFeature("Decomposes"); for (IdEObject ifcRelDecomposes : (List<IdEObject>)ifcObjectDefinition.eGet(decomposesFeature)) { copy(ifcRelDecomposes, false, skipRepresentation); EStructuralFeature relatingObjectFeature = ifcRelDecomposes.eClass().getEStructuralFeature("RelatingObject"); IdEObject relatingObject = (IdEObject) ifcRelDecomposes.eGet(relatingObjectFeature); if (relatingObject != null) { copyDecomposes(relatingObject, ownerHistory); } } if (ifcObjectDefinition.eClass().getEPackage().getEClassifier("IfcElement").isInstance(ifcObjectDefinition)) { EStructuralFeature containedInStructureFeature = ifcObjectDefinition.eClass().getEStructuralFeature("ContainedInStructure"); for (IdEObject containedInStructure : (List<IdEObject>)ifcObjectDefinition.eGet(containedInStructureFeature)) { IdEObject newContainedInSpatialStructure = getTargetModel().create(containedInStructure.eClass()); newContainedInSpatialStructure.eSet(newContainedInSpatialStructure.eClass().getEStructuralFeature("GlobalId"), GuidCompressor.getNewIfcGloballyUniqueId()); newContainedInSpatialStructure.eSet(newContainedInSpatialStructure.eClass().getEStructuralFeature("OwnerHistory"), ownerHistory); EStructuralFeature relatedElementsFeature = newContainedInSpatialStructure.eClass().getEStructuralFeature("RelatedElements"); ((List<IdEObject>)newContainedInSpatialStructure.eGet(relatedElementsFeature)).add(newObjectDefinition); EStructuralFeature relatingStructureFeature = containedInStructure.eClass().getEStructuralFeature("RelatingStructure"); IdEObject newRelatingStructre = copy(((IdEObject)containedInStructure.eGet(relatingStructureFeature)), false, skipRepresentation); newContainedInSpatialStructure.eSet(relatingStructureFeature, newRelatingStructre); getTargetModel().add(oidProvider.newOid(newContainedInSpatialStructure.eClass()), newContainedInSpatialStructure); copyDecomposes((IdEObject)containedInStructure.eGet(relatingStructureFeature), ownerHistory); } } }