Search in sources :

Example 6 with Condition

use of org.bimserver.database.query.conditions.Condition in project BIMserver by opensourceBIM.

the class GetAllDatabaseAction method execute.

@Override
public List<T> execute() throws UserException, BimserverLockConflictException, BimserverDatabaseException {
    Condition condition = new IsOfTypeCondition(eClass);
    Map<Long, T> result = getDatabaseSession().query(condition, clazz, OldQuery.getDefault());
    return CollectionUtils.mapToList(result);
}
Also used : IsOfTypeCondition(org.bimserver.database.query.conditions.IsOfTypeCondition) Condition(org.bimserver.database.query.conditions.Condition) IsOfTypeCondition(org.bimserver.database.query.conditions.IsOfTypeCondition)

Example 7 with Condition

use of org.bimserver.database.query.conditions.Condition in project BIMserver by opensourceBIM.

the class GetAllDeserializersDatabaseAction method execute.

@Override
public List<DeserializerPluginConfiguration> execute() throws UserException, BimserverLockConflictException, BimserverDatabaseException {
    Condition condition = new IsOfTypeCondition(StorePackage.eINSTANCE.getDeserializerPluginConfiguration());
    Map<Long, DeserializerPluginConfiguration> result = getDatabaseSession().query(condition, DeserializerPluginConfiguration.class, OldQuery.getDefault());
    List<DeserializerPluginConfiguration> mapToList = CollectionUtils.mapToList(result);
    if (onlyEnabled) {
        Iterator<DeserializerPluginConfiguration> iterator = mapToList.iterator();
        while (iterator.hasNext()) {
            DeserializerPluginConfiguration deserializer = iterator.next();
            if (!bimServer.getPluginManager().isEnabled(deserializer.getPluginDescriptor().getPluginClassName()) || !deserializer.getEnabled()) {
                iterator.remove();
            }
        }
    }
    return mapToList;
}
Also used : IsOfTypeCondition(org.bimserver.database.query.conditions.IsOfTypeCondition) Condition(org.bimserver.database.query.conditions.Condition) IsOfTypeCondition(org.bimserver.database.query.conditions.IsOfTypeCondition) DeserializerPluginConfiguration(org.bimserver.models.store.DeserializerPluginConfiguration)

Example 8 with Condition

use of org.bimserver.database.query.conditions.Condition in project BIMserver by opensourceBIM.

the class GetAllNonAuthorizedUsersOfProjectDatabaseAction method execute.

@Override
public Set<User> execute() throws UserException, BimserverLockConflictException, BimserverDatabaseException {
    Project project = getProjectByPoid(poid);
    if (project == null) {
        throw new UserException("No Project with oid " + poid + " found");
    }
    Condition condition = new AndCondition(new AndCondition(new Not(new HasReferenceToCondition(StorePackage.eINSTANCE.getUser_HasRightsOn(), project)), new AttributeCondition(StorePackage.eINSTANCE.getUser_State(), new EnumLiteral(ObjectState.ACTIVE))), new Not(new AttributeCondition(StorePackage.eINSTANCE.getUser_UserType(), new EnumLiteral(UserType.SYSTEM))));
    return CollectionUtils.mapToSet(getDatabaseSession().query(condition, User.class, OldQuery.getDefault()));
}
Also used : AttributeCondition(org.bimserver.database.query.conditions.AttributeCondition) Condition(org.bimserver.database.query.conditions.Condition) AndCondition(org.bimserver.database.query.conditions.AndCondition) HasReferenceToCondition(org.bimserver.database.query.conditions.HasReferenceToCondition) Project(org.bimserver.models.store.Project) Not(org.bimserver.database.query.conditions.Not) User(org.bimserver.models.store.User) HasReferenceToCondition(org.bimserver.database.query.conditions.HasReferenceToCondition) AttributeCondition(org.bimserver.database.query.conditions.AttributeCondition) UserException(org.bimserver.shared.exceptions.UserException) EnumLiteral(org.bimserver.database.query.literals.EnumLiteral) AndCondition(org.bimserver.database.query.conditions.AndCondition)

Example 9 with Condition

use of org.bimserver.database.query.conditions.Condition in project BIMserver by opensourceBIM.

the class GetAllObjectIDMsDatabaseAction method execute.

public List<ObjectIDMPluginConfiguration> execute() throws UserException, BimserverLockConflictException, BimserverDatabaseException {
    Condition condition = new IsOfTypeCondition(StorePackage.eINSTANCE.getObjectIDMPluginConfiguration());
    Map<Long, ObjectIDMPluginConfiguration> result = getDatabaseSession().query(condition, ObjectIDMPluginConfiguration.class, OldQuery.getDefault());
    List<ObjectIDMPluginConfiguration> mapToList = CollectionUtils.mapToList(result);
    if (onlyEnabled) {
        Iterator<ObjectIDMPluginConfiguration> iterator = mapToList.iterator();
        while (iterator.hasNext()) {
            ObjectIDMPluginConfiguration objectIdm = iterator.next();
            if (!bimServer.getPluginManager().isEnabled(objectIdm.getPluginDescriptor().getPluginClassName()) || !objectIdm.getEnabled()) {
                iterator.remove();
            }
        }
    }
    return mapToList;
}
Also used : IsOfTypeCondition(org.bimserver.database.query.conditions.IsOfTypeCondition) Condition(org.bimserver.database.query.conditions.Condition) IsOfTypeCondition(org.bimserver.database.query.conditions.IsOfTypeCondition) ObjectIDMPluginConfiguration(org.bimserver.models.store.ObjectIDMPluginConfiguration)

Example 10 with Condition

use of org.bimserver.database.query.conditions.Condition in project BIMserver by opensourceBIM.

the class GetAllProjectsDatabaseAction method execute.

@Override
public Set<Project> execute() throws UserException, BimserverLockConflictException, BimserverDatabaseException {
    User user = getUserByUoid(authorization.getUoid());
    Not notStoreProject = new Not(new AttributeCondition(StorePackage.eINSTANCE.getProject_Name(), new StringLiteral(Database.STORE_PROJECT_NAME)));
    HasReferenceToCondition authorized = new HasReferenceToCondition(StorePackage.eINSTANCE.getProject_HasAuthorizedUsers(), user);
    Condition condition = new IsOfTypeCondition(StorePackage.eINSTANCE.getProject()).and(notStoreProject);
    // }
    if (onlyActive) {
        condition = new AndCondition(condition, new AttributeCondition(StorePackage.eINSTANCE.getProject_State(), new EnumLiteral(ObjectState.ACTIVE)));
    }
    if (user.getUserType() != UserType.ADMIN && user.getUserType() != UserType.SYSTEM) {
        condition = condition.and(authorized);
        condition = condition.and(new AttributeCondition(StorePackage.eINSTANCE.getProject_State(), new EnumLiteral(ObjectState.ACTIVE)));
    }
    Map<Long, Project> results = getDatabaseSession().query(condition, Project.class, OldQuery.getDefault());
    Set<Project> resultSet = new HashSet<Project>();
    for (Project p : results.values()) {
        if (p.getParent() == null || !onlyTopLevel) {
            resultSet.add(p);
        }
    }
    for (Project project : results.values()) {
        addParentProjects(resultSet, project);
    }
    return resultSet;
}
Also used : IsOfTypeCondition(org.bimserver.database.query.conditions.IsOfTypeCondition) AttributeCondition(org.bimserver.database.query.conditions.AttributeCondition) Condition(org.bimserver.database.query.conditions.Condition) AndCondition(org.bimserver.database.query.conditions.AndCondition) HasReferenceToCondition(org.bimserver.database.query.conditions.HasReferenceToCondition) User(org.bimserver.models.store.User) IsOfTypeCondition(org.bimserver.database.query.conditions.IsOfTypeCondition) AttributeCondition(org.bimserver.database.query.conditions.AttributeCondition) AndCondition(org.bimserver.database.query.conditions.AndCondition) Project(org.bimserver.models.store.Project) Not(org.bimserver.database.query.conditions.Not) StringLiteral(org.bimserver.database.query.literals.StringLiteral) HasReferenceToCondition(org.bimserver.database.query.conditions.HasReferenceToCondition) EnumLiteral(org.bimserver.database.query.literals.EnumLiteral) HashSet(java.util.HashSet)

Aggregations

Condition (org.bimserver.database.query.conditions.Condition)20 IsOfTypeCondition (org.bimserver.database.query.conditions.IsOfTypeCondition)10 User (org.bimserver.models.store.User)9 AttributeCondition (org.bimserver.database.query.conditions.AttributeCondition)8 StringLiteral (org.bimserver.database.query.literals.StringLiteral)6 HasReferenceToCondition (org.bimserver.database.query.conditions.HasReferenceToCondition)5 ArrayList (java.util.ArrayList)4 DatabaseSession (org.bimserver.database.DatabaseSession)4 IOException (java.io.IOException)3 Not (org.bimserver.database.query.conditions.Not)3 EnumLiteral (org.bimserver.database.query.literals.EnumLiteral)3 Checkout (org.bimserver.models.store.Checkout)3 InternalServicePluginConfiguration (org.bimserver.models.store.InternalServicePluginConfiguration)3 PluginDescriptor (org.bimserver.models.store.PluginDescriptor)3 Project (org.bimserver.models.store.Project)3 PluginContext (org.bimserver.plugins.PluginContext)3 WebModulePlugin (org.bimserver.plugins.web.WebModulePlugin)3 HashSet (java.util.HashSet)2 BimserverDatabaseException (org.bimserver.BimserverDatabaseException)2 AndCondition (org.bimserver.database.query.conditions.AndCondition)2