/** * Generate sort list * * @param sortArrayNode Sort parameter * @return Query parameter map */ public List<SortColumn> getSortList(ArrayNode sortArrayNode) { List<SortColumn> sortList = new ArrayList<>(); // If there are sort nodes, generate sortList for (JsonNode sortNode : sortArrayNode) { sortList.add(new SortColumn((ObjectNode) sortNode)); } return sortList; }
CellData field1 = row1.get(sortColumn.getColumnId()); CellData field2 = row2.get(sortColumn.getColumnId()); field2 = field2 == null ? new CellData() : field2; if ("asc".equalsIgnoreCase(sortColumn.getDirection())) { orderRow = field1.compareTo(field2); } else if ("desc".equalsIgnoreCase(sortColumn.getDirection())) { orderRow = field2.compareTo(field1);
/** * Sort datalist * * @param list DataList to sort * @param columnId Sort by field list * @param direction Sort direction */ public static void sort(DataList list, String columnId, String direction) { List<SortColumn> sortColumnList = new ArrayList<>(); SortColumn sortColumn = new SortColumn(columnId, direction); sortColumnList.add(sortColumn); Collections.sort(list.getRows(), new CompareRow(sortColumnList)); }