private void addProcessor(StringBuilder sb, int max, int level, ProcessorReport processorReport, DateFormat dateFormat) {
String processorName = processorReport.getSubject().getName();
spaces(sb, level);
sb.append(processorName);
spaces(sb, max - processorName.length() - level + 1);
State processorState = processorReport.getState();
sb.append(processorState);
spaces(sb, 10 - processorState.name().length());
String jobsQueued = String.valueOf(processorReport.getJobsQueued());
sb.append(jobsQueued);
spaces(sb, 10 - jobsQueued.length());
String jobsStarted = String.valueOf(processorReport.getJobsStarted());
sb.append(jobsStarted);
spaces(sb, 10 - jobsStarted.length());
String jobsCompleted = String.valueOf(processorReport.getJobsCompleted());
sb.append(jobsCompleted);
spaces(sb, 10 - jobsCompleted.length());
String jobsCompletedWithErrors = String.valueOf(processorReport
.getJobsCompletedWithErrors());
sb.append(jobsCompletedWithErrors);
spaces(sb, 10 - jobsCompletedWithErrors.length());
addDates(sb, processorReport.getStartedDate(), processorReport.getCompletedDate(), dateFormat);
for (ActivityReport activityReport : processorReport.getActivityReports()) {
WorkflowReport nestedWorkflowReport = activityReport.getNestedWorkflowReport();
if (nestedWorkflowReport != null)
for (ProcessorReport nestedProcessorReport : nestedWorkflowReport.getProcessorReports())
addProcessor(sb, max, level + 1, nestedProcessorReport, dateFormat);
}
}