private static ColumnSet sort(ColumnSet columnSet, List<SortModel> sortModels) { Stack<SortModel> sortModelStack = constructSortModelStack(sortModels); int[] sortVector = generateIndexArray(columnSet.getNumRows()); Range range = new Range(0, columnSet.getNumRows()-1); // determine the sort vector of the current columnset, based on the defined sort models order(columnSet, sortModelStack, sortVector, range); categorize(columnSet, sortModelStack, sortVector, range); // return the new sorted column set, with rows reordered by the sort vector return sortColumnSet(columnSet, sortVector); }
} else { order(columnSet, sortModelStack, sortVector, range); categorize(columnSet, sortModelStack, sortVector, range); range.resetRange().addToRange(i);