package org.celllife.idart.gui.reportParameters; import model.manager.excel.conversion.exceptions.ReportException; import model.manager.exports.excel.ExcelExporter; import model.manager.exports.excel.ExcelReportObject; import org.celllife.idart.misc.AbstractCancellableJob; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.swt.program.Program; /** * This class is used to run the data export and show a progress dialog. */ public class ExcelReportJob extends AbstractCancellableJob { private final ExcelReportObject reportObject; private final ExcelExporter exporter; /** * @param deo * DataExportObject to export. * @param exporter * @param fileName * File to write data to. */ public ExcelReportJob(ExcelReportObject deo, ExcelExporter exporter) { this.reportObject = deo; this.exporter = exporter; } @Override public void performJob(final IProgressMonitor monitor) throws ReportException { exporter.setMonitor(monitor); exporter.generate(reportObject); Program.launch(reportObject.getPath()); } }