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();
}
});