package hudson.plugins.tasks;
/**
* Represents the result summary of the open tasks parser. This summary will be
* shown in the summary.jelly script of the warnings result action.
*
* @author Ulli Hafner
*/
public final class ResultSummary {
/**
* Returns the message to show as the result summary.
*
* @param result
* the result
* @return the message
*/
// CHECKSTYLE:CONSTANTS-OFF
public static String createSummary(final TasksResult result) {
StringBuilder summary = new StringBuilder();
int tasks = result.getNumberOfAnnotations();
summary.append(Messages.Tasks_ResultAction_Summary());
summary.append(" ");
if (tasks > 0) {
summary.append("<a href=\"tasksResult\">");
}
if (tasks == 1) {
summary.append(Messages.Tasks_ResultAction_OneWarning());
}
else {
summary.append(Messages.Tasks_ResultAction_MultipleWarnings(tasks));
}
if (tasks > 0) {
summary.append("</a>");
}
summary.append(" ");
if (result.getNumberOfFiles() > 1) {
summary.append(Messages.Tasks_ResultAction_MultipleFiles(result.getNumberOfFiles()));
}
else {
summary.append(Messages.Tasks_ResultAction_OneFile());
}
summary.append(".");
return summary.toString();
}
// CHECKSTYLE:CONSTANTS-ON
/**
* Returns the message to show as the result summary.
*
* @param result
* the result
* @return the message
*/
// CHECKSTYLE:CONSTANTS-OFF
public static String createDeltaMessage(final TasksResult result) {
StringBuilder summary = new StringBuilder();
if (result.getNumberOfNewWarnings() > 0) {
summary.append("<li><a href=\"tasksResult/new\">");
if (result.getNumberOfNewWarnings() == 1) {
summary.append(Messages.Tasks_ResultAction_OneNewWarning());
}
else {
summary.append(Messages.Tasks_ResultAction_MultipleNewWarnings(result.getNumberOfNewWarnings()));
}
summary.append("</a></li>");
}
if (result.getNumberOfFixedWarnings() > 0) {
summary.append("<li><a href=\"tasksResult/fixed\">");
if (result.getNumberOfFixedWarnings() == 1) {
summary.append(Messages.Tasks_ResultAction_OneFixedWarning());
}
else {
summary.append(Messages.Tasks_ResultAction_MultipleFixedWarnings(result.getNumberOfFixedWarnings()));
}
summary.append("</a></li>");
}
return summary.toString();
}
// CHECKSTYLE:CONSTANTS-ON
/**
* Instantiates a new result summary.
*/
private ResultSummary() {
// prevents instantiation
}
}