public static Query all(PackageMetaData packageMetaData) { Query query = new Query(packageMetaData); QueryPart part = query.createQueryPart(); part.setIncludeAllFields(true); return query; }
public HashMapVirtualObject getByOid(PackageMetaData packageMetaData, DatabaseSession databaseSession, long roid, long oid) throws JsonParseException, JsonMappingException, IOException, QueryException, BimserverDatabaseException { Query query = new Query("test", packageMetaData); QueryPart queryPart = query.createQueryPart(); queryPart.addOid(oid); QueryObjectProvider queryObjectProvider = new QueryObjectProvider(databaseSession, bimServer, query, Collections.singleton(roid), packageMetaData); HashMapVirtualObject first = queryObjectProvider.next(); return first; }
private void loadDeep() throws ServerException, UserException, PublicInterfaceNotFoundException, QueryException { long start = System.nanoTime(); if (modelState != ModelState.FULLY_LOADED && modelState != ModelState.LOADING) { modelState = ModelState.LOADING; Query query = new Query("test", getPackageMetaData()); QueryPart queryPart = query.createQueryPart(); queryPart.setIncludeAllFields(true); ObjectNode queryNode = new JsonQueryObjectModelConverter(query.getPackageMetaData()).toJson(query); Long topicId = bimServerClient.getServiceInterface().download(Collections.singleton(roid), queryNode.toString(), getJsonSerializerOid(), false); waitForDonePreparing(topicId); try { processDownload(topicId); bimServerClient.getServiceInterface().cleanupLongAction(topicId); modelState = ModelState.FULLY_LOADED; buildIndex(); loadGeometry(); } catch (IfcModelInterfaceException | IOException e) { LOGGER.error("", e); } catch (QueryException e) { LOGGER.error("", e); } catch (GeometryException e) { LOGGER.error("", e); } } long end = System.nanoTime(); LOGGER.info((((end - start) / 1000000) + " ms")); }
QueryPart queryPart = query.createQueryPart(); queryPart.addType(packageMetaData.getEClass("IfcProduct"), true, excluded);
@Override public IdEObject getByGuid(String guid) { IdEObject idEObject = super.getByGuid(guid); if (idEObject == null && !assumeCompletePreload) { try { modelState = ModelState.LOADING; Query query = new Query(getPackageMetaData()); QueryPart queryPart = query.createQueryPart(); queryPart.addGuid(guid); JsonQueryObjectModelConverter converter = new JsonQueryObjectModelConverter(getPackageMetaData()); long topicId = bimServerClient.getServiceInterface().download(Collections.singleton(roid), converter.toJson(query).toString(), getJsonSerializerOid(), false); waitForDonePreparing(topicId); processDownload(topicId); clientDebugInfo.incGuid(); bimServerClient.getServiceInterface().cleanupLongAction(topicId); modelState = ModelState.NONE; return super.getByGuid(guid); } catch (Exception e) { LOGGER.error("", e); } } return idEObject; }
@Override public void execute(Transaction transaction) throws UserException, BimserverLockConflictException, BimserverDatabaseException, IOException, QueryException { PackageMetaData packageMetaData = transaction.getDatabaseSession().getMetaDataManager().getPackageMetaData(transaction.getProject().getSchema()); HashMapVirtualObject object = transaction.get(oid); if (object == null) { Query query = new Query(packageMetaData); QueryPart queryPart = query.createQueryPart(); queryPart.addOid(oid); QueryObjectProvider queryObjectProvider = new QueryObjectProvider(transaction.getDatabaseSession(), transaction.getBimServer(), query, Collections.singleton(transaction.getPreviousRevision().getOid()), packageMetaData); object = queryObjectProvider.next(); } if (object == null) { throw new UserException("Object with oid " + oid + " not found"); } if (!ChangeHelper.canBeChanged(eClass)) { throw new UserException("Only objects from the following schemas are allowed to be changed: Ifc2x3tc1 and IFC4, this object (" + eClass.getName() + ") is from the \"" + eClass.getEPackage().getName() + "\" package"); } transaction.deleted(object); } }
QueryPart queryPart = query.createQueryPart(); queryPart.addType(eClass, true);
private void generateQuantizedVertices(DatabaseSession databaseSession, Revision revision, float[] quantizationMatrix, float multiplierToMm) { PackageMetaData packageMetaData = getBimServer().getMetaDataManager().getPackageMetaData(revision.getProject().getSchema()); Query query = new Query(packageMetaData); QueryPart queryPart = query.createQueryPart(); queryPart.addType(GeometryPackage.eINSTANCE.getGeometryData(), false); Include geometryDataInclude = queryPart.createInclude();
QueryPart queryPart = query.createQueryPart(); queryPart.addOid(oid);
public void loadExplicit(long oid) { try { IdEObjectImpl idEObjectImpl = (IdEObjectImpl) super.get(oid); if (idEObjectImpl != null && !idEObjectImpl.isLoadedOrLoading() && !assumeCompletePreload) { idEObjectImpl.setLoadingState(State.LOADING); modelState = ModelState.LOADING; Query query = new Query(getPackageMetaData()); QueryPart queryPart = query.createQueryPart(); queryPart.addOid(oid); JsonQueryObjectModelConverter converter = new JsonQueryObjectModelConverter(getPackageMetaData()); long topicId = bimServerClient.getServiceInterface().download(Collections.singleton(roid), converter.toJson(query).toString(), getJsonSerializerOid(), false); waitForDonePreparing(topicId); clientDebugInfo.incExplicit(); processDownload(topicId); bimServerClient.getServiceInterface().cleanupLongAction(topicId); idEObjectImpl.setLoadingState(State.LOADED); modelState = ModelState.NONE; } } catch (Exception e) { LOGGER.error("", e); } }
if (object == null) { Query query = new Query(packageMetaData); QueryPart queryPart = query.createQueryPart(); queryPart.addOid(oid);
QueryPart queryPart = query.createQueryPart(); queryPart.addOid(oid);
QueryPart queryPart = query.createQueryPart(); queryPart.addOid(oid);
if (object == null) { Query query = new Query(packageMetaData); QueryPart queryPart = query.createQueryPart(); queryPart.addOid(oid);
for (EClass eClass : summaryMap.keySet()) { if (packageMetaData.hasInverses(eClass)) { QueryPart queryPart = query.createQueryPart(); queryPart.addType(eClass, true); uniqueTypes.add(eClass);
if (object == null) { Query query = new Query(packageMetaData); QueryPart queryPart = query.createQueryPart(); queryPart.addOid(oid);
QueryPart queryPart = query.createQueryPart(); queryPart.addType(eClass, false); if (includeGeometry && getPackageMetaData().getEClass("IfcProduct").isSuperTypeOf(eClass)) {
query.getGeometrySettings().put("useSmallInts", false); query.getGeometrySettings().put("splitGeometry", false); QueryPart queryPart = query.createQueryPart();
QueryPart queryPart = query.createQueryPart(); queryPart.addType(packageMetaData.getEClassIncludingDependencies("GeometryInfo"), true); QueryObjectProvider queryObjectProvider = new QueryObjectProvider(getDatabaseSession(), bimServer, query, java.util.Collections.singleton(roid), packageMetaData);
private float processUnits(DatabaseSession databaseSession, QueryContext queryContext) throws QueryException, IOException, BimserverDatabaseException { Query query = new Query("Unit query", packageMetaData); QueryPart unitQueryPart = query.createQueryPart(); unitQueryPart.addType(packageMetaData.getEClass("IfcProject"), false); Include unitsInContextInclude = unitQueryPart.createInclude();