From: Patrick Plitzner Date: Mon, 16 Nov 2015 07:08:02 +0000 (+0100) Subject: Show report text dialog after finishing import X-Git-Tag: 3.12.0^2~64 X-Git-Url: https://dev.e-taxonomy.eu/gitweb/taxeditor.git/commitdiff_plain/bda3782e3bf528a7691aba6a01cf892ae35fce91?ds=sidebyside Show report text dialog after finishing import --- diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/ImportManager.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/ImportManager.java index abdad0532..b89c7d84f 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/ImportManager.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/ImportManager.java @@ -15,6 +15,7 @@ import java.io.InputStream; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.List; import java.util.UUID; import org.apache.commons.io.IOUtils; @@ -24,6 +25,7 @@ import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; import org.eclipse.core.runtime.jobs.Job; import org.eclipse.swt.widgets.Display; +import org.eclipse.ui.PlatformUI; import eu.etaxonomy.cdm.api.application.CdmApplicationState; import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration; @@ -31,6 +33,7 @@ import eu.etaxonomy.cdm.common.monitor.IRemotingProgressMonitor; import eu.etaxonomy.cdm.io.common.CdmDefaultImport; import eu.etaxonomy.cdm.io.common.IImportConfigurator; import eu.etaxonomy.cdm.io.common.IImportConfigurator.SOURCE_TYPE; +import eu.etaxonomy.cdm.io.common.ImportResult; import eu.etaxonomy.cdm.io.excel.taxa.NormalExplicitImportConfigurator; import eu.etaxonomy.cdm.io.jaxb.JaxbImportConfigurator; import eu.etaxonomy.cdm.io.reference.endnote.in.EndnoteImportConfigurator; @@ -45,6 +48,7 @@ import eu.etaxonomy.taxeditor.model.MessagingUtils; import eu.etaxonomy.taxeditor.operation.IPostMoniteredOperationEnabled; import eu.etaxonomy.taxeditor.store.CdmStore; import eu.etaxonomy.taxeditor.store.internal.TaxeditorStorePlugin; +import eu.etaxonomy.taxeditor.ui.dialog.ReportTextDialog; /** *

@@ -107,9 +111,10 @@ public class ImportManager extends AbstractIOManager implem CdmDefaultImport importer = new CdmDefaultImport(); importer.setCdmAppController(applicationConfiguration); monitor.worked(5); - + ImportResult importResult = null; try { - importer.invoke(configurator); + importResult = importer.invoke(configurator); + monitor.worked(80); } catch (RuntimeException e) { MessagingUtils.messageDialog( @@ -125,10 +130,23 @@ public class ImportManager extends AbstractIOManager implem monitor.worked(5); monitor.done(); + + final StringBuilder reportText = new StringBuilder(); + if(importResult!=null){ + List reports = importResult.getReports(); + for (byte[] bs : reports) { + reportText.append(new String(bs)); + } + } display.asyncExec(new Runnable() { @Override public void run() { + // display reports with possibility to save + ReportTextDialog dialog = new ReportTextDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell()); + dialog.setTitle(configurator.getClass().getSimpleName()+" Report"); + dialog.setReportText(reportText.toString()); + dialog.open(); CdmStore.getContextManager().notifyContextRefresh(); } });