private void storeUnimplemented(IdEObject ifcRepresentationItem) { if (unimplementedGeometryTypes.containsKey(ifcRepresentationItem.eClass().getName())) { unimplementedGeometryTypes.get(ifcRepresentationItem.eClass().getName()).incrementAndGet(); } else { unimplementedGeometryTypes.put(ifcRepresentationItem.eClass().getName(), new AtomicInteger(1)); } }
@Override public String toString() { StringBuilder builder = new StringBuilder(); builder.append("Link\n\t" + firstObject.eClass().getName()); for (Link link : links) { builder.append("." + link + "\n\t"); } return builder.toString(); } }
public void remove(IdEObject idEObject) { unidentifiedObjects.remove(idEObject); objects.inverse().remove(idEObject); if (indexPerClass != null) { indexPerClass.get(idEObject.eClass()).remove(idEObject); } if (indexPerClassWithSubTypes != null) { indexPerClassWithSubTypes.get(idEObject.eClass()).remove(idEObject); } }
public SummaryMap(IfcModelInterface model) throws BimserverDatabaseException { this.packageMetaData = model.getPackageMetaData(); this.summaryMap = new TreeMap<EClass, Integer>(new EClassNameComparator()); for (IdEObject idEObject : model.getValues()) { if (!summaryMap.containsKey(idEObject.eClass())) { summaryMap.put(idEObject.eClass(), 1); } else { summaryMap.put(idEObject.eClass(), summaryMap.get(idEObject.eClass()) + 1); } } }
public void dump() { System.out.println("Dumping IFC Model"); for (Long key : objects.keySet()) { System.out.println(key + ": " + objects.get(key).eClass().getName()); } }
@Override public boolean matches(IdEObject object) { return eClass.isSuperTypeOf(object.eClass()); } }
public static IdEObject getIfcProject(IdEObject ifcProduct) { if (ifcProduct.eClass().getEPackage() == Ifc4Package.eINSTANCE) { return getIfcProject((org.bimserver.models.ifc4.IfcProduct) ifcProduct); } else if (ifcProduct.eClass().getEPackage() == Ifc2x3tc1Package.eINSTANCE) { return getIfcProject((IfcProduct) ifcProduct); } return null; }
@Override public String toString() { return eReference.getName() + " -> " + idEObject.eClass().getName(); } }
public void rebuildIndexPerClass(EClass eClass) { if (indexPerClass == null) { indexPerClass = new HashMap<EClass, List<? extends IdEObject>>(); } ArrayList<IdEObject> list = new ArrayList<IdEObject>(); indexPerClass.put((EClass) eClass, list); for (Long key : objects.keySet()) { IdEObject value = objects.get((Long) key); if (eClass == value.eClass()) { list.add(value); } } }
private void buildIndexWithSubTypes() { indexPerClassWithSubTypes = new HashMap<EClass, List<? extends IdEObject>>(); for (Long key : objects.keySet()) { IdEObject idEObject = objects.get(key); if (idEObject != null) { buildIndexWithSuperTypes(idEObject, idEObject.eClass()); } } }
private void writeEmbedded(IdEObject object) throws IOException { print("{"); print("\"_t\":\"" + object.eClass().getName() + "\","); for (EStructuralFeature eStructuralFeature : object.eClass().getEAllStructuralFeatures()) { print("\"" + eStructuralFeature.getName() + "\":"); writePrimitive(eStructuralFeature, object.eGet(eStructuralFeature)); if (object.eClass().getEAllStructuralFeatures().get(object.eClass().getEAllStructuralFeatures().size()-1) != eStructuralFeature) { print(","); } } print("}"); }
private void write(IdEObject object) throws IOException { if (object.eClass().getEAnnotation("wrapped") != null) { EStructuralFeature wrappedFeature = object.eClass().getEStructuralFeature("wrappedValue"); print("{"); print("\"_t\":\"" + object.eClass().getName() + "\","); print("\"_v\":"); writePrimitive(wrappedFeature, object.eGet(wrappedFeature)); print("}"); } else { print("" + object.getOid()); } }
private void indexGuid(IdEObject idEObject) { EClass ifcRootEclass = packageMetaData.getEClass("IfcRoot"); EStructuralFeature guidFeature = ifcRootEclass.getEStructuralFeature("GlobalId"); if (ifcRootEclass.isSuperTypeOf(idEObject.eClass())) { Object guid = idEObject.eGet(guidFeature); if (guid != null) { guidIndexed.put((String)guid, idEObject); } } }
public boolean contains(IdEObject object) { return set.contains(new RecordIdentifierPlusType(object.eClass(), object.getPid(), object.getOid(), object.getRid())); } }
private int comparePrimitives(IdEObject o1, IdEObject o2) { EClass eClass = o1.eClass(); EStructuralFeature eStructuralFeature = eClass.getEStructuralFeature("wrappedValue"); Object val1 = o1.eGet(eStructuralFeature); Object val2 = o2.eGet(eStructuralFeature); if (eStructuralFeature.getEType() == EcorePackage.eINSTANCE.getEString()) { return ((String) val1).compareTo((String) val2); } else if (eStructuralFeature.getEType() == EcorePackage.eINSTANCE.getEInt()) { return ((Integer) val1).compareTo((Integer) val2); } else { throw new RuntimeException("ni"); } }
private void fixOidsFlat(IdEObject idEObject, OidProvider oidProvider, BiMap<Long, IdEObject> temp) { if (idEObject == null) { return; } if (temp.containsValue(idEObject)) { return; } ((IdEObjectImpl) idEObject).setOid(oidProvider.newOid(idEObject.eClass())); if (objects.containsValue(idEObject)) { temp.put(idEObject.getOid(), idEObject); } }
@SuppressWarnings("unchecked") private void createStyledByItems(IfcModelInterface model, IdEObject ifcRepresentationItem, String representationIdentifier, IdEObject color) throws IfcModelInterfaceException { IdEObject ifcStyledItem = model.create(model.getPackageMetaData().getEClass("IfcStyledItem")); EStructuralFeature styledByItemFeature = ifcStyledItem.eClass().getEStructuralFeature("StyledByItem"); List<IdEObject> list = (List<IdEObject>) ifcRepresentationItem.eGet(styledByItemFeature); list.add(ifcStyledItem); createStyledItemStyles(model, representationIdentifier, ifcStyledItem, color); }
@SuppressWarnings("unchecked") private void createStyledItemStyles(IfcModelInterface model, String representationIdentifier, IdEObject ifcStyledItem, IdEObject color) throws IfcModelInterfaceException { IdEObject ifcPresentationStyleAssignment = model.create(model.getPackageMetaData().getEClass("IfcPresentationStyleAssignment")); EStructuralFeature stylesFeature = ifcStyledItem.eClass().getEStructuralFeature("Styles"); List<IdEObject> list = (List<IdEObject>) ifcStyledItem.eGet(stylesFeature); list.add(ifcPresentationStyleAssignment); createPresentationStyleAssignmentStyles(model, representationIdentifier, ifcPresentationStyleAssignment, color); }
@SuppressWarnings("unchecked") private void createSurfaceStyleStyles(IfcModelInterface model, String representationIdentifier, IdEObject ifcSurfaceStyle, IdEObject color) throws IfcModelInterfaceException { EClass ifcSurfaceStyleRenderingClass = model.getPackageMetaData().getEClass("IfcSurfaceStyleRendering"); IdEObject ifcSurfaceStyleRendering = model.create(ifcSurfaceStyleRenderingClass); EStructuralFeature stylesFeature = ifcSurfaceStyle.eClass().getEStructuralFeature("Styles"); ((List<IdEObject>)(ifcSurfaceStyle.eGet(stylesFeature))).add(ifcSurfaceStyleRendering); setColour(color, ifcSurfaceStyleRendering); }