/** * Checks if is aggregated query. * * @return true, if is aggregated query */ boolean isAggregatedQuery() { if (kunderaQuery.getSelectStatement() != null) { Expression exp = ((SelectClause) kunderaQuery.getSelectStatement().getSelectClause()).getSelectExpression(); return AggregateFunction.class.isAssignableFrom(exp.getClass()); } else { return false; } }
/** * Sets the select query. * * @param columns * the columns * @return the string */ private String setSelectQuery(List<String> columns) { if (columns != null && !columns.isEmpty()) { return CQLTranslator.SELECT_QUERY; } if (kunderaQuery.isAggregated()) { Expression selectExpression = ((SelectClause) kunderaQuery.getSelectStatement().getSelectClause()).getSelectExpression(); // create query depending on function if (selectExpression instanceof CountFunction) { return CQLTranslator.SELECT_COUNT_QUERY; } } return CQLTranslator.SELECTALL_QUERY; }
/** * Gets the columns to output. * * @param m * the m * @param kunderaQuery * the kundera query * @return the columns to output */ private List<Map<String, Object>> getColumnsToOutput(EntityMetadata m, KunderaQuery kunderaQuery) { if (kunderaQuery.isSelectStatement()) { SelectStatement selectStatement = kunderaQuery.getSelectStatement(); SelectClause selectClause = (SelectClause) selectStatement.getSelectClause(); return KunderaQueryUtils.readSelectClause(selectClause.getSelectExpression(), m, false, kunderaMetadata); } return new ArrayList(); }
SelectClause k = (SelectClause) ((SelectStatement) jpqlExpression.getQueryStatement()).getSelectClause();
/** * Gets the select expression order. * * @param query * the query * @return the select expression order */ public ListIterable<Expression> getSelectExpressionOrder(KunderaQuery query) { if (!KunderaQueryUtils.isSelectStatement(query.getJpqlExpression())) { return null; } Expression selectExpression = ((SelectClause) (query.getSelectStatement()).getSelectClause()) .getSelectExpression(); List<Expression> list; if (!(selectExpression instanceof CollectionExpression)) { list = new LinkedList<Expression>(); list.add(selectExpression); return new SnapshotCloneListIterable<Expression>(list); } else { return selectExpression.children(); } }
/** * Checks if is count query. * * @return true, if is count query */ private boolean isCountQuery() { if (getKunderaQuery().getSelectStatement() != null) { final Expression selectClause = getKunderaQuery().getSelectStatement().getSelectClause(); if (selectClause instanceof SelectClause) { final Expression expression = ((SelectClause) selectClause).getSelectExpression(); return expression instanceof CountFunction; } } return false; }
SelectClause selectClause = (SelectClause) selectStatement.getSelectClause(); return KunderaQueryUtils.readSelectClause(selectClause.getSelectExpression(), m, useLuceneOrES, kunderaMetadata);
SelectClause selectClause = (SelectClause) selectStatement.getSelectClause(); Expression expression = selectClause.getSelectExpression(); if (CountFunction.class.isAssignableFrom(expression.getClass()))
/** * Builds the select aggregations. * * @param selectStatement * the select statement * @param entityMetadata * the entity metadata * @param filter * the filter * @return the filter aggregation builder */ private AggregationBuilder buildSelectAggregations(AggregationBuilder aggregationBuilder, SelectStatement selectStatement, EntityMetadata entityMetadata) { Expression expression = ((SelectClause) selectStatement.getSelectClause()).getSelectExpression(); if (expression instanceof CollectionExpression) { aggregationBuilder = appendAggregation((CollectionExpression) expression, entityMetadata, aggregationBuilder); } else { if (isAggregationExpression(expression) && checkIfKeyExists(expression.toParsedText())) aggregationBuilder.subAggregation(getMetricsAggregation(expression, entityMetadata)); } return aggregationBuilder; }
if (query.isSelectStatement()) SelectClause selectClause = (SelectClause) (query.getSelectStatement().getSelectClause()); ListIterator<Expression> selectColumnIter = null;
/** * Get the aggregation object. * * @param metadata * @return */ private BasicDBObject createAggregation(EntityMetadata metadata) { if (kunderaQuery.getSelectStatement() != null) { Metamodel metaModel = kunderaMetadata.getApplicationMetadata().getMetamodel(metadata.getPersistenceUnit()); EntityType entityType = metaModel.entity(metadata.getEntityClazz()); AbstractManagedType managedType = (AbstractManagedType) metaModel.entity(metadata.getEntityClazz()); boolean hasLob = managedType.hasLobAttribute(); BasicDBObject aggregation = new BasicDBObject(); SelectClause selectClause = (SelectClause) kunderaQuery.getSelectStatement().getSelectClause(); Expression expression = selectClause.getSelectExpression(); buildAggregation(aggregation, expression, metadata, entityType, hasLob); if (aggregation.size() == 0) { return null; } if (!aggregation.containsField("_id")) { aggregation.put("_id", null); } return aggregation; } return null; }
/** * {@inheritDoc} */ @Override public void visit(SelectStatement expression) { this.selectStatement = expression; expression.getSelectClause().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SelectStatement expression) { expression.getSelectClause().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SelectStatement expression) { expression.getSelectClause().accept(this); }
/** * {@inheritDoc} */ @Override public void visit(SelectStatement expression) { this.selectStatement = expression; expression.getSelectClause().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SelectStatement expression) { expression.getSelectClause().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SelectStatement expression) { expression.getSelectClause().accept(this); }
/** * {@inheritDoc} */ @Override public void visit(SelectStatement expression) { expression.getSelectClause().accept(this); } }
/** * {@inheritDoc} */ public void visit(SelectStatement expression) { expression.getSelectClause().accept(this); }
/** * {@inheritDoc} */ @Override public void visit(SelectStatement expression) { expression.getFromClause().accept(this); expression.getSelectClause().accept(this); }