コード例 #1
0
  private void buildOrderClause(
      StringBuilder queryStringBuilder,
      QueryModel queryModel,
      Criteria criteria,
      CriteriaQueryTranslator criteriaQueryTranslator) {
    boolean firstOrderItem = true;

    if (queryModel.getSorts() != null) {
      for (Sort sort : queryModel.getSorts()) {
        if (firstOrderItem) {
          queryStringBuilder.append(" order by ");
        } else {
          queryStringBuilder.append(',');
        }

        Order order =
            sort.getSortDirection() == SortDirection.Ascending
                ? Order.asc(sort.getField())
                : Order.desc(sort.getField());

        queryStringBuilder.append(order.toSqlString(criteria, criteriaQueryTranslator));

        firstOrderItem = false;
      }
    }
  }