@SuppressWarnings("unchecked") @Override public <T extends IdEObject> T create(Class<T> clazz) throws IfcModelInterfaceException { return (T) create(packageMetaData.getEClassIncludingDependencies(clazz)); }
public <T extends IdEObject> List<T> getAll(Class<T> interfaceClass) { return getAll(packageMetaData.getEClassIncludingDependencies(interfaceClass)); }
private void addType(ObjectNode objectNode, CanInclude queryPart, String type, boolean includeAllSubTypes, List<String> excluded) throws QueryException { if (type.equals("Object")) { // no type filter return; } EClass eClass = packageMetaData.getEClassIncludingDependencies(type); if (eClass == null) { throw new QueryException("Type \"" + type + "\" not found"); } Set<EClass> excludedEClasses = null; if (excluded != null) { excludedEClasses = new HashSet<>(); for (String excl : excluded) { excludedEClasses.add(packageMetaData.getEClassIncludingDependencies(excl)); } } queryPart.addType(eClass, includeAllSubTypes, excludedEClasses); }
@SuppressWarnings("unchecked") @Override public <T extends IdEObject> T create(Class<T> clazz) { EClass eClassIncludingDependencies = getEClassIncludingDependencies(clazz); return (T) eClassIncludingDependencies.getEPackage().getEFactoryInstance().create(eClassIncludingDependencies); }
private void parseTypeNode(CanInclude include, int i, JsonNode typeNode) throws QueryException { String identifier = i == -1 ? "type" : "\\types\"[" + i + "]"; if (typeNode.isTextual()) { EClass eClass = packageMetaData.getEClassIncludingDependencies(typeNode.asText()); if (eClass == null) { throw new QueryException("Type " + typeNode.asText() + " not found"); throw new QueryException(identifier + " object must have a \"name\" property"); EClass eClass = packageMetaData.getEClassIncludingDependencies(typeNode.get("name").asText()); ArrayNode excludeNodes = (ArrayNode) typeNode.get("exclude"); for (JsonNode excludeNode : excludeNodes) { excludes.add(packageMetaData.getEClassIncludingDependencies(excludeNode.asText()));
JsonNode typeNode = jsonNode.get("outputType"); if (typeNode.isTextual()) { EClass eClass = packageMetaData.getEClassIncludingDependencies(typeNode.asText()); include.addOutputType(eClass); } else {
EClass geometryInfoClass = getPackageMetaData().getEClassIncludingDependencies("GeometryInfo"); Include include = queryPart.createInclude(); include.addType(geometryInfoClass, false); include.addField("data"); Include geometryData = include.createInclude(); geometryData.addType(getPackageMetaData().getEClassIncludingDependencies("GeometryData"), false); geometryData.addFieldDirect("indices"); geometryData.addFieldDirect("normals");
String type = jsonReader.nextString(); if (eClass == null) { eClass = model.getPackageMetaData().getEClassIncludingDependencies(type); if (jsonReader.nextName().equals("_t")) { String refType = jsonReader.nextString(); IdEObject refObject = (IdEObject) model.create(model.getPackageMetaData().getEClassIncludingDependencies(refType), refOid); ((IdEObjectImpl)refObject).setLoadingState(State.OPPOSITE_SETTING); model.add(refObject.getOid(), refObject); if (jsonReader.nextName().equals("_t")) { String refType = jsonReader.nextString(); EClass referenceEClass = model.getPackageMetaData().getEClassIncludingDependencies(refType); if (jsonReader.nextName().equals("_t")) { String t = jsonReader.nextString(); IdEObject wrappedObject = (IdEObject) model.create(model.getPackageMetaData().getEClassIncludingDependencies(t), -1); ((IdEObjectImpl)wrappedObject).setLoadingState(State.LOADING); if (eStructuralFeature.getEAnnotation("dbembed") != null) { object.eSet(eStructuralFeature, model.getNoFetch(refOid)); } else { IdEObject refObject = (IdEObject) model.create(model.getPackageMetaData().getEClassIncludingDependencies(refType), refOid); ((IdEObjectImpl)refObject).setLoadingState(State.OPPOSITE_SETTING); model.add(refObject.getOid(), refObject);
Query query = new Query("test", packageMetaData); QueryPart queryPart = query.createQueryPart(); queryPart.addType(packageMetaData.getEClassIncludingDependencies("GeometryInfo"), true); QueryObjectProvider queryObjectProvider = new QueryObjectProvider(getDatabaseSession(), bimServer, query, java.util.Collections.singleton(roid), packageMetaData); HashMapVirtualObject next = queryObjectProvider.next();