row.addCell(login);
for (Task task : contest.getTasks()) {
AccumulatedGrade testResults = graderManager.getResult(contest.getId(), login, task);
if (includeTestGroupResults) {
for (int i = 0; i < testResults.getTestGroups().size(); ++i) {
ResultsCell cell = new ResultsCell("-");
if (testResults != null) {
cell.setValue(testResults.getTestGroups().get(i));
if (task.getType() == Task.PROBLEM_TYPE_OUTPUT) {
cell.setHref("?contestId="
+ contest.getId()
+ "&login="
+ login
+ "&taskId="
+ task.getNameForTest(i + 1));
}
}
row.addCell(cell);
}
}
if (testResults != null) {
totalPoints = totalPoints.add(new BigDecimal(testResults.getTotal()));
}
ResultsCell cell = new ResultsCell(testResults != null ? testResults.getTotal()
: BigDecimal.ZERO.toString());
if (task.getType() != Task.PROBLEM_TYPE_OUTPUT) {
cell.setHref("?contestId="
+ contest.getId()
+ "&login="
+ login
+ "&taskId="
+ task.getName());