@Override
public String toString() {
DateFormat dateFormat = new SimpleDateFormat(dateFormatString);
StringBuilder sb = new StringBuilder();
int max = getLongestName(this, 0);
spaces(sb, max + 1);
sb.append("Status ");
sb.append("Queued ");
sb.append("Started ");
sb.append("Complete ");
sb.append("Errors ");
sb.append("Started ");
sb.append("Finished\n");
sb.append(getSubject().getName());
spaces(sb, max - getSubject().getName().length() + 1);
sb.append(getState());
spaces(sb, 10 - getState().name().length());
sb.append("-");
spaces(sb, 9);
sb.append("-");
spaces(sb, 9);
sb.append("-");
spaces(sb, 9);
sb.append("-");
spaces(sb, 9);
addDates(sb, getStartedDate(), getCompletedDate(), dateFormat);
for (ProcessorReport processorReport : getProcessorReports())
addProcessor(sb, max, 0, processorReport, dateFormat);
return sb.toString();
}