filteredRows.accept(project, visitor);
jsonWriter.endArray();
jsonWriter.key("filtered"); jsonWriter.value(rwv.total);
jsonWriter.key("total"); jsonWriter.value(project.rows.size());
} else {
FilteredRecords filteredRecords = engine.getFilteredRecords();
RecordVisitor visitor = rwv;
if (sortingJson != null) {
SortingRecordVisitor srv = new SortingRecordVisitor(visitor);
srv.initializeFromJSON(project, sortingJson);
if (srv.hasCriteria()) {
visitor = srv;
}
}
jsonWriter.key("mode"); jsonWriter.value("record-based");
jsonWriter.key("rows"); jsonWriter.array();
filteredRecords.accept(project, visitor);
jsonWriter.endArray();
jsonWriter.key("filtered"); jsonWriter.value(rwv.total);
jsonWriter.key("total"); jsonWriter.value(project.recordModel.getRecordCount());
}