package org.celllife.idart.gui.dataExports; import model.manager.excel.conversion.exceptions.ReportException; import model.manager.exports.DataExporter; import model.manager.exports.ReportObject; import org.celllife.idart.database.hibernate.util.HibernateUtil; import org.celllife.idart.misc.AbstractCancellableJob; import org.eclipse.core.runtime.IProgressMonitor; /** * This class is used to run the data export and show a progress dialog. */ public class DataExportJob extends AbstractCancellableJob { private final ReportObject dataExportObject; private final String fileName; /** * @param fileName * File to write data to. * @param deo * DataExportObject to export. */ public DataExportJob(String fileName, ReportObject deo) { this.fileName = fileName; this.dataExportObject = deo; } @Override public void performJob(IProgressMonitor monitor) throws ReportException { DataExporter exporter = new DataExporter( HibernateUtil.getNewSession(), monitor); exporter.generateExport(dataExportObject, fileName); } }