@Override public void perform(GraphRewrite event, EvaluationContext context) { ReportService reportService = new ReportService(event.getGraphContext()); ReportModel reportModel = reportService.create(); reportModel.setReportFilename(OUTPUT_FILENAME); reportModel.setReportName(REPORT_NAME); reportModel.setTemplateType(TemplateType.FREEMARKER); reportModel.setTemplatePath(TEMPLATE); } }
/** * Get all ReportModels that should be displayed in the path to this report. */ default List<ReportModel> getAllParentsInReversedOrder() { List<ReportModel> reports = new ArrayList<>(); ReportModel currentReport = this; reports.add(this); while (currentReport.getParentReport() != null) { reports.add(currentReport.getParentReport()); currentReport = currentReport.getParentReport(); } Collections.reverse(reports); return reports; } }
@Override public Void call() throws Exception { while (true) { final ReportModel reportModel; WindupVertexFrame reportModelObject = reportModels.remove(); if (reportModelObject == null) return null; reportModel = (ReportModel) reportModelObject; try { Thread.currentThread().setName(reportModel.getTemplatePath() + "_" + reportModel.getReportFilename()); iterationProgress.perform(event, context); freeMarkerIterationOperation.perform(event, context, reportModel); } catch (Throwable t) { LOG.log(Level.WARNING, "Failed to render freemarker report:\n " + reportModel + System.lineSeparator() + t.getMessage(), t); } } } });
/** * Gets a unique filename (that has not been used before in the output folder) for this report and sets it on the report model. */ public void setUniqueFilename(ReportModel model, String baseFilename, String extension) { model.setReportFilename(this.getUniqueFilename(baseFilename, extension, true, null)); }
@Override public Void call() throws Exception { while (true) { final ReportModel reportModel; WindupVertexFrame reportModelObject = reportModels.remove(); if (reportModelObject == null) return null; reportModel = (ReportModel) reportModelObject; try { Thread.currentThread().setName(reportModel.getTemplatePath() + "_" + reportModel.getReportFilename()); iterationProgress.perform(event, context); freeMarkerIterationOperation.perform(event, context, reportModel); } catch (Throwable t) { LOG.log(Level.WARNING, "Failed to render freemarker report:\n " + reportModel + System.lineSeparator() + t.getMessage(), t); } } } });
/** * Gets a unique filename (that has not been used before in the output folder) for this report and sets it on the report model. */ public void setUniqueFilename(ReportModel model, String baseFilename, String extension) { model.setReportFilename(this.getUniqueFilename(baseFilename, extension, true, null)); }
@Override public void perform(final GraphRewrite event, final EvaluationContext evalCtx, final ReportModel payload) String templatePath = payload.getTemplatePath().replace('\\', '/'); String outputFilename = payload.getReportFilename();
@Override public void perform(GraphRewrite event, EvaluationContext context) { ReportService reportService = new ReportService(event.getGraphContext()); ReportModel reportModel = reportService.create(); reportModel.setReportFilename(OUTPUT_FILENAME); reportModel.setReportName(REPORT_NAME); reportModel.setTemplateType(TemplateType.FREEMARKER); reportModel.setTemplatePath(TEMPLATE); } }
/** * Get all ReportModels that should be displayed in the path to this report. */ default List<ReportModel> getAllParentsInReversedOrder() { List<ReportModel> reports = new ArrayList<>(); ReportModel currentReport = this; reports.add(this); while (currentReport.getParentReport() != null) { reports.add(currentReport.getParentReport()); currentReport = currentReport.getParentReport(); } Collections.reverse(reports); return reports; } }
@Override public void perform(final GraphRewrite event, final EvaluationContext evalCtx, final ReportModel payload) String templatePath = payload.getTemplatePath().replace('\\', '/'); String outputFilename = payload.getReportFilename();