protected boolean isSortable(int column) { return getValueComparator(column) != null; }
@SuppressWarnings({ "rawtypes", "unchecked" }) protected Comparator<Row> getComparatorFromSortKey(SortKey sortkey) { Comparator comp = getValueComparator(sortkey.getColumn()); if (sortkey.getSortOrder() == SortOrder.DESCENDING) { comp = comp.reversed(); } Function<Row,Object> getValueAt = (Row row) -> row.getValueAt(sortkey.getColumn()); return Comparator.comparing(getValueAt, comp); }