private static String buildSortKeySelect(AbstractSqlPagingQueryProvider provider) { StringBuilder select = new StringBuilder(); String prefix = ""; for (Map.Entry<String, Order> sortKey : provider.getSortKeys().entrySet()) { select.append(prefix); prefix = ", "; select.append(sortKey.getKey()); } return select.toString(); }
/** * Generates ORDER BY attributes based on the sort keys. * * @param provider the {@link AbstractSqlPagingQueryProvider} to be used for * used for pagination. * @return a String that can be appended to an ORDER BY clause. */ public static String buildSortClause(AbstractSqlPagingQueryProvider provider) { return buildSortClause(provider.getSortKeys()); }
List<Map.Entry<String, Order>> keys = new ArrayList<>(provider.getSortKeys().entrySet()); List<String> clauses = new ArrayList<>();
/** * Older versions of Derby don't allow order by in the sub select. This should work with 10.6.1 and above. */ @Test @Override public void testQueryContainsSortKeyDesc() { pagingQueryProvider.getSortKeys().put("id", Order.DESCENDING); String s = pagingQueryProvider.generateFirstPageQuery(pageSize).toLowerCase(); assertTrue("Wrong query: " + s, s.contains("id desc")); }
@Test public void testQueryContainsSortKeyDesc(){ pagingQueryProvider.getSortKeys().put("id", Order.DESCENDING); String s = pagingQueryProvider.generateFirstPageQuery(pageSize).toLowerCase(); assertTrue("Wrong query: "+s, s.contains("id desc")); }
private static String buildSortKeySelect(AbstractSqlPagingQueryProvider provider) { StringBuilder select = new StringBuilder(); String prefix = ""; for (Map.Entry<String, Order> sortKey : provider.getSortKeys().entrySet()) { select.append(prefix); prefix = ", "; select.append(sortKey.getKey()); } return select.toString(); }
/** * Generates ORDER BY attributes based on the sort keys. * * @param provider the {@link AbstractSqlPagingQueryProvider} to be used for * used for pagination. * @return a String that can be appended to an ORDER BY clause. */ public static String buildSortClause(AbstractSqlPagingQueryProvider provider) { return buildSortClause(provider.getSortKeys()); }
List<Map.Entry<String, Order>> keys = new ArrayList<Map.Entry<String,Order>>(provider.getSortKeys().entrySet()); List<String> clauses = new ArrayList<String>();