mWriter.write("<br/>\n"); //$NON-NLS-1$
mWriter.write(String.format("%1$d errors and %2$d warnings found:",
errorCount, warningCount));
mWriter.write("<br/><br/>\n"); //$NON-NLS-1$
Issue previousIssue = null;
if (!issues.isEmpty()) {
List<List<Warning>> related = new ArrayList<List<Warning>>();
List<Warning> currentList = null;
for (Warning warning : issues) {
if (warning.issue != previousIssue) {
previousIssue = warning.issue;
currentList = new ArrayList<Warning>();
related.add(currentList);
}
assert currentList != null;
currentList.add(warning);
}
writeOverview(related, missing.size());
Category previousCategory = null;
for (List<Warning> warnings : related) {
Warning first = warnings.get(0);
Issue issue = first.issue;
if (issue.getCategory() != previousCategory) {
previousCategory = issue.getCategory();
mWriter.write("\n<a name=\""); //$NON-NLS-1$
mWriter.write(issue.getCategory().getFullName());
mWriter.write("\"></a>\n"); //$NON-NLS-1$
mWriter.write("<div class=\"category\"><a href=\"#\" title=\"Return to top\">"); //$NON-NLS-1$
mWriter.write(issue.getCategory().getFullName());
mWriter.write("</a><div class=\"categorySeparator\"></div>\n");//$NON-NLS-1$
mWriter.write("</div>\n"); //$NON-NLS-1$
}
mWriter.write("<a name=\"" + issue.getId() + "\"></a>\n"); //$NON-NLS-1$ //$NON-NLS-2$
mWriter.write("<div class=\"issue\">\n"); //$NON-NLS-1$
// Explain this issue
mWriter.write("<div class=\"id\"><a href=\"#\" title=\"Return to top\">"); //$NON-NLS-1$
mWriter.write(issue.getId());
mWriter.write(": "); //$NON-NLS-1$
mWriter.write(issue.getBriefDescription(HTML));
mWriter.write("</a><div class=\"issueSeparator\"></div>\n"); //$NON-NLS-1$
mWriter.write("</div>\n"); //$NON-NLS-1$
mWriter.write("<div class=\"warningslist\">\n"); //$NON-NLS-1$
boolean partialHide = !mSimpleFormat && warnings.size() > SPLIT_LIMIT;