@Override public String getAliasForExpression(Expression exp) { Collection<Property<?>> columns = ((SelectQuery<?>)query).getColumns(); if(columns == null) { return null; } for(Property<?> property : columns) { if(property.getExpression().equals(exp)) { return property.getAlias(); } } return null; }
protected List<ColumnDescriptor> buildResultColumns() { this.defaultAttributesByColumn = new HashMap<>(); List<ColumnDescriptor> columns = new ArrayList<>(); SelectQuery<?> query = getSelectQuery(); if(query.getColumns() != null && !query.getColumns().isEmpty()) { appendOverriddenColumns(columns, query); } else if (query.getRoot() instanceof DbEntity) { appendDbEntityColumns(columns, query); } else if (getQueryMetadata().getPageSize() > 0) { appendIdColumns(columns, queryMetadata.getClassDescriptor().getEntity()); } else { appendQueryColumns(columns, query, queryMetadata.getClassDescriptor(), null); } return columns; }
if(query.getColumns() != null && !query.getColumns().isEmpty()) { traversalHandler = new ToCacheKeyTraversalHandler(resolver.getValueObjectTypeRegistry(), key); for(Property<?> property : query.getColumns()) { key.append("/c:"); property.getExpression().traverse(traversalHandler);
if(query.getColumns() == null || query.getColumns().isEmpty()) { return; for(Property<?> column : query.getColumns()) { Expression exp = column.getExpression(); String name = column.getName() == null ? exp.expName() : column.getName();
setAddBindingListener(bindingListener); for(Property<?> property : query.getColumns()) { joinTableAliasForProperty[0] = null; int expressionType = property.getExpression().getType();