org.hibernate.SQLQuery.addScalar()

Here are the examples of the java api org.hibernate.SQLQuery.addScalar() taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

3 Examples 7

19 Source : BaseAbstractDAO.java
with MIT License
from oimchat

protected void setScalar(Query query, List<ResultType> returnTypeList) {
    if (returnTypeList != null && returnTypeList.size() > 0) {
        if (query instanceof SQLQuery) {
            SQLQuery tmpQuery = (SQLQuery) query;
            for (ResultType returnType : returnTypeList) {
                if (returnType.getReturnType() != null) {
                    tmpQuery.addScalar(returnType.getColumnName(), returnType.getReturnType());
                } else {
                    tmpQuery.addScalar(returnType.getColumnName());
                }
            }
        }
    }
}

19 Source : NativeDbOperations.java
with Apache License 2.0
from exactpro

@SuppressWarnings("unchecked")
public TagGroupReportResult generateTagGroupReport(Session session, TagGroupReportParameters params, AbstractTagGroupQueryBuilder queryBuilder) {
    boolean isPostgres = isPostgreSql(this.settings.getDbms());
    TagGroupReportResult result = new TagGroupReportResult();
    List<Long> groupingColumns = new ArrayList<>();
    for (int i = 0; i <= params.getLoadForLevel(); i++) {
        groupingColumns.add(i + 1l);
    }
    boolean dimensionsExist = isDimensionsExist(params);
    String groupingColumnsString = toMysqlSet(groupingColumns);
    queryBuilder.setDimensions(dimensionsExist ? buildDimensionFilteredColumns(params) : buildDimensionTagsColumns(params)).setNestedDimensions(buildDimensionFilter(params, isPostgres)).setGroupCount(String.valueOf(params.getNumberOfGroups())).setGroupFields(groupingColumnsString).setOrderFields(groupingColumnsString).setFrom(params.getFrom()).setTo(params.getTo()).setSfInstances(params.getSelectedSfInstances());
    String stringQuery = queryBuilder.build();
    logger.debug(stringQuery);
    SQLQuery query = session.createSQLQuery(stringQuery);
    for (int i = 0; i < groupingColumns.size(); i++) {
        query.addScalar(buildDimensionPostfix(params.getDimensions().get(i), i), StringType.INSTANCE);
    }
    for (Map.Entry<String, Type> fieldNameAndType : AbstractTagGroupQueryBuilder.FIELD_NAMES_AND_TYPES.entrySet()) {
        query.addScalar(fieldNameAndType.getKey(), fieldNameAndType.getValue());
    }
    result.setRows(parseTagGroupResultSet(query.list(), params));
    return result;
}

19 Source : NativeDbOperations.java
with Apache License 2.0
from exactpro

@SuppressWarnings("unchecked")
public List<Object[]> executeTaggedComparisonQuery(Session session, Long[] firstSetIds, Long[] secondSetIds) {
    Long[] allTags = ImmutableSet.copyOf(ObjectArrays.concat(firstSetIds, secondSetIds, Long.clreplaced)).toArray(new Long[0]);
    if (isPostgreSql(this.settings.getDbms())) {
        String queryString = String.format("SELECT * FROM tagged_sets_comparison(ARRAY %s, ARRAY %s, :fcount, ARRAY %s, :scount )", Arrays.toString(allTags), Arrays.toString(firstSetIds), Arrays.toString(secondSetIds));
        Query query = session.createSQLQuery(queryString);
        query.setLong("fcount", firstSetIds.length);
        query.setLong("scount", secondSetIds.length);
        return query.list();
    } else if (isMysql(this.settings.getDbms())) {
        String queryString = String.format("call tagged_sets_comparison('%s', '%s', :fcount, '%s', :scount )", toMysqlSet(allTags), toMysqlSet(firstSetIds), toMysqlSet(secondSetIds));
        SQLQuery query = session.createSQLQuery(queryString);
        query.addScalar("testcaseid", StringType.INSTANCE);
        query.addScalar("ftcid", BigIntegerType.INSTANCE);
        query.addScalar("fmatrix", StringType.INSTANCE);
        query.addScalar("fstatus", IntegerType.INSTANCE);
        query.addScalar("fdescription", StringType.INSTANCE);
        query.addScalar("ffailreason", StringType.INSTANCE);
        query.addScalar("ffailedactions", StringType.INSTANCE);
        query.addScalar("fcomment", StringType.INSTANCE);
        query.addScalar("fuserStatus", StringType.INSTANCE);
        query.addScalar("ftcrid", BigIntegerType.INSTANCE);
        query.addScalar("fmrid", BigIntegerType.INSTANCE);
        query.addScalar("fstarttime", TimestampType.INSTANCE);
        query.addScalar("ffinishtime", TimestampType.INSTANCE);
        query.addScalar("ftags", StringType.INSTANCE);
        query.addScalar("fhash", IntegerType.INSTANCE);
        query.addScalar("fhost", StringType.INSTANCE);
        query.addScalar("fname", StringType.INSTANCE);
        query.addScalar("fport", IntegerType.INSTANCE);
        query.addScalar("fchost", StringType.INSTANCE);
        query.addScalar("fcname", StringType.INSTANCE);
        query.addScalar("fcport", IntegerType.INSTANCE);
        query.addScalar("freportfolder", StringType.INSTANCE);
        query.addScalar("freportfile", StringType.INSTANCE);
        query.addScalar("stcid", BigIntegerType.INSTANCE);
        query.addScalar("smatrix", StringType.INSTANCE);
        query.addScalar("sstatus", IntegerType.INSTANCE);
        query.addScalar("sdescription", StringType.INSTANCE);
        query.addScalar("sfailreason", StringType.INSTANCE);
        query.addScalar("sfailedactions", StringType.INSTANCE);
        query.addScalar("scomment", StringType.INSTANCE);
        query.addScalar("suserStatus", StringType.INSTANCE);
        query.addScalar("stcrid", BigIntegerType.INSTANCE);
        query.addScalar("smrid", BigIntegerType.INSTANCE);
        query.addScalar("sstarttime", TimestampType.INSTANCE);
        query.addScalar("sfinishtime", TimestampType.INSTANCE);
        query.addScalar("stags", StringType.INSTANCE);
        query.addScalar("shash", IntegerType.INSTANCE);
        query.addScalar("shost", StringType.INSTANCE);
        query.addScalar("sname", StringType.INSTANCE);
        query.addScalar("sport", IntegerType.INSTANCE);
        query.addScalar("schost", StringType.INSTANCE);
        query.addScalar("scname", StringType.INSTANCE);
        query.addScalar("scport", IntegerType.INSTANCE);
        query.addScalar("sreportfolder", StringType.INSTANCE);
        query.addScalar("sreportfile", StringType.INSTANCE);
        query.setLong("fcount", firstSetIds.length);
        query.setLong("scount", secondSetIds.length);
        logger.info(queryString);
        return query.list();
    }
    throw new UnsupportedOperationException("Unsupported DBMS " + settings.getDbms());
}