final ReportRenderContext parentContext,
final InspectionResultCollector collector,
final int currentReport,
final int maxReports)
{
final ReportRenderContext r = new ReportRenderContext
(master, def, parentContext, reportDesignerContext.getGlobalAuthenticationStore(), true);
final Inspection[] inspections = InspectionsRegistry.getInstance().getInspections();
if (cancelled)
{
return currentReport;
}
int counter = currentReport;
progress = ((double) counter / (double) maxReports);
for (int i = 0; i < inspections.length; i++)
{
final Inspection inspection = inspections[i];
try
{
inspection.inspect(reportDesignerContext, r, collector);
}
catch (Exception e)
{
UncaughtExceptionsModel.getInstance().addException(e);
}
}
final ArrayList<SubReport> subreports = new ArrayList<SubReport>();
findLocalSubreports(def, subreports);
for (final SubReport subreport : subreports)
{
counter = runInspection(subreport, master, reportDesignerContext, r, collector, counter + 1, maxReports);
if (cancelled)
{
return counter;
}
}
r.dispose();
return counter;
}