/** * PUBLIC: * The report query is require to be constructor with an expression builder. * This build must be used for the selection critiera, any item expressions, group bys and order bys. */ public ReportQuery(Class javaClass, ExpressionBuilder builder) { this(); this.defaultBuilder = builder; setReferenceClass(javaClass); }
/** * PUBLIC: * The report query is require to be constructor with an expression builder. * This build must be used for the selection critiera, any item expressions, group bys and order bys. */ public ReportQuery(Class javaClass, ExpressionBuilder builder) { this(); this.defaultBuilder = builder; setReferenceClass(javaClass); }
/** * PUBLIC: * The report query is require to be constructor with an expression builder. * This build must be used for the selection critiera, any item expressions, group bys and order bys. */ public ReportQuery(Class javaClass, ExpressionBuilder builder) { this(); this.defaultBuilder = builder; setReferenceClass(javaClass); }
public ReportQuery(Class javaClass, Expression expression) { this(); this.defaultBuilder = expression.getBuilder(); setReferenceClass(javaClass); setSelectionCriteria(expression); }
public ReportQuery(Class javaClass, Expression expression) { this(); this.defaultBuilder = expression.getBuilder(); setReferenceClass(javaClass); setSelectionCriteria(expression); }
public ReportQuery(Class javaClass, Expression expression) { this(); this.defaultBuilder = expression.getBuilder(); setReferenceClass(javaClass); setSelectionCriteria(expression); }
public SubQueryImpl(Metamodel metamodel, Class result, CriteriaBuilderImpl queryBuilder, CommonAbstractCriteria parent){ super(metamodel, ResultType.OTHER, queryBuilder, result); this.subQuery = new ReportQuery(); TypeImpl queryType = ((MetamodelImpl)metamodel).getType(result); if (queryType != null && queryType.getPersistenceType() == PersistenceType.ENTITY){ this.subQuery.setReferenceClass(result); } this.subQuery.setDistinctState(ObjectLevelReadQuery.DONT_USE_DISTINCT); this.correlatedJoins = new HashSet(); this.correlations = new HashSet(); this.currentNode = new SubSelectExpression(subQuery, new ExpressionBuilder()); this.parent = parent; }
protected void integrateRoot(RootImpl root) { if (this.roots.isEmpty()) { TypeImpl type = ((MetamodelImpl)this.metamodel).getType(this.queryType); if ((type != null && type.getPersistenceType() == PersistenceType.ENTITY) || queryType.equals(ClassConstants.OBJECT)) { // this is the first root, set return type and selection and query type if (this.selection == null) { this.selection = root; this.subQuery.getItems().clear(); this.subQuery.addAttribute("", new ConstantExpression(1, root.getCurrentNode().getBuilder())); this.queryResult = ResultType.ENTITY; } } this.subQuery.setReferenceClass(root.getJavaType()); this.subQuery.setExpressionBuilder(root.getCurrentNode().getBuilder()); this.queryType = root.getJavaType(); this.currentNode.setBaseExpression(((CommonAbstractCriteriaImpl)this.parent).getBaseExpression()); } super.integrateRoot(root); }
/** * Create a predicate that tests whether an element is not a member of a * collection. * * @param elem * element expression * @param collection * expression * @return predicate */ public <E, C extends Collection<E>> Predicate isNotMember(Expression<E> elem, Expression<C> collection){ ReportQuery subQuery = new ReportQuery(); subQuery.setReferenceClass(((ExpressionImpl)elem).getJavaType()); org.eclipse.persistence.expressions.ExpressionBuilder elemBuilder = new org.eclipse.persistence.expressions.ExpressionBuilder(); org.eclipse.persistence.expressions.Expression collectionExp =((InternalSelection)collection).getCurrentNode(); org.eclipse.persistence.expressions.Expression elemExp =((InternalSelection)elem).getCurrentNode(); subQuery.setExpressionBuilder(elemBuilder); subQuery.setShouldRetrieveFirstPrimaryKey(true); subQuery.setSelectionCriteria(elemBuilder.equal(collectionExp).and(collectionExp.equal(elemExp))); return new CompoundExpressionImpl(metamodel, ((InternalSelection)elem).getCurrentNode().notExists(subQuery), buildList(elem, collection), "isNotMemeber"); }
reportQuery.addAttribute(selection.getAlias(), ((SelectionImpl) selection).getCurrentNode(), selection.getJavaType()); }} reportQuery.setReferenceClass(((InternalSelection) this.selection).getCurrentNode().getBuilder().getQueryClass()); reportQuery.setExpressionBuilder(((InternalSelection) this.selection).getCurrentNode().getBuilder());
reportQuery.setReferenceClass(((InternalSelection) this.where).getCurrentNode().getBuilder().getQueryClass()); reportQuery.setExpressionBuilder(((InternalSelection) this.where).getCurrentNode().getBuilder()); } else { reportQuery.setExpressionBuilder(((InternalSelection) this.selection.getCompoundSelectionItems().get(0)).getCurrentNode().getBuilder()); reportQuery.setReferenceClass(((InternalSelection) this.selection.getCompoundSelectionItems().get(0)).getCurrentNode().getBuilder().getQueryClass());
if (mapping != null && mapping.isDirectCollectionMapping()){ subQuery.setExpressionBuilder(baseExpression.getBuilder()); subQuery.setReferenceClass(sourceClass); subQuery.addCount(attribute, subQuery.getExpressionBuilder().anyOf(attribute), returnType); return;
setBaseExpression(outerBuilder); getChildren().set(0, outerBuilder); query.setReferenceClass(newDescriptor.getJavaClass()); query.changeDescriptor(session); } else {
if (mapping != null && mapping.isDirectCollectionMapping()){ subQuery.setExpressionBuilder(baseExpression.getBuilder()); subQuery.setReferenceClass(sourceClass); subQuery.addCount(attribute, subQuery.getExpressionBuilder().anyOf(attribute), returnType); return;
count.setBaseExpression(outerBuilder); count.getChildren().setElementAt( outerBuilder, 0); setReferenceClass(newDescriptor.getJavaClass()); changeDescriptor(getSession()); } else {
subQuery.setSelectionCriteria(criteria); subQuery.setReferenceClass(((ExpressionBuilder)parentExpression).getQueryClass()); queryExpression = parentExpression.notExists(subQuery);
subQuery.setSelectionCriteria(criteria); subQuery.setReferenceClass(((ExpressionBuilder)parentExpression).getQueryClass()); queryExpression = parentExpression.notExists(subQuery);
Expression rightChild = ((RelationExpression)criteria).getSecondChild(); if (rightChild instanceof QueryKeyExpression) { subQuery.setReferenceClass(((QueryKeyExpression)rightChild).getDescriptor().getJavaClass());
descriptor = ((ObjectExpression)((QueryKeyExpression)rightChild).getBaseExpression()).getDescriptor(); subQuery.setReferenceClass(descriptor.getJavaClass());
descriptor = ((ObjectExpression)((QueryKeyExpression)rightChild).getBaseExpression()).getDescriptor(); subQuery.setReferenceClass(descriptor.getJavaClass());