Project

General

Profile

« Previous | Next » 

Revision bda3782e

Added by Patrick Plitzner over 8 years ago

Show report text dialog after finishing import

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/ImportManager.java
15 15
import java.nio.file.Files;
16 16
import java.nio.file.Path;
17 17
import java.nio.file.Paths;
18
import java.util.List;
18 19
import java.util.UUID;
19 20

  
20 21
import org.apache.commons.io.IOUtils;
......
24 25
import org.eclipse.core.runtime.Status;
25 26
import org.eclipse.core.runtime.jobs.Job;
26 27
import org.eclipse.swt.widgets.Display;
28
import org.eclipse.ui.PlatformUI;
27 29

  
28 30
import eu.etaxonomy.cdm.api.application.CdmApplicationState;
29 31
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
......
31 33
import eu.etaxonomy.cdm.io.common.CdmDefaultImport;
32 34
import eu.etaxonomy.cdm.io.common.IImportConfigurator;
33 35
import eu.etaxonomy.cdm.io.common.IImportConfigurator.SOURCE_TYPE;
36
import eu.etaxonomy.cdm.io.common.ImportResult;
34 37
import eu.etaxonomy.cdm.io.excel.taxa.NormalExplicitImportConfigurator;
35 38
import eu.etaxonomy.cdm.io.jaxb.JaxbImportConfigurator;
36 39
import eu.etaxonomy.cdm.io.reference.endnote.in.EndnoteImportConfigurator;
......
45 48
import eu.etaxonomy.taxeditor.operation.IPostMoniteredOperationEnabled;
46 49
import eu.etaxonomy.taxeditor.store.CdmStore;
47 50
import eu.etaxonomy.taxeditor.store.internal.TaxeditorStorePlugin;
51
import eu.etaxonomy.taxeditor.ui.dialog.ReportTextDialog;
48 52

  
49 53
/**
50 54
 * <p>
......
107 111
				CdmDefaultImport<IImportConfigurator> importer = new CdmDefaultImport<IImportConfigurator>();
108 112
				importer.setCdmAppController(applicationConfiguration);
109 113
				monitor.worked(5);
110

  
114
				ImportResult importResult = null;
111 115
				try {
112
					importer.invoke(configurator);
116
					importResult = importer.invoke(configurator);
117

  
113 118
					monitor.worked(80);
114 119
				} catch (RuntimeException e) {
115 120
					MessagingUtils.messageDialog(
......
125 130
				monitor.worked(5);
126 131
				monitor.done();
127 132

  
133

  
134
				final StringBuilder reportText = new StringBuilder();
135
				if(importResult!=null){
136
				    List<byte[]> reports = importResult.getReports();
137
				    for (byte[] bs : reports) {
138
                        reportText.append(new String(bs));
139
                    }
140
				}
128 141
				display.asyncExec(new Runnable() {
129 142

  
130 143
					@Override
131 144
					public void run() {
145
                        // display reports with possibility to save
146
                        ReportTextDialog dialog = new ReportTextDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell());
147
                        dialog.setTitle(configurator.getClass().getSimpleName()+" Report");
148
                        dialog.setReportText(reportText.toString());
149
                        dialog.open();
132 150
						CdmStore.getContextManager().notifyContextRefresh();
133 151
					}
134 152
				});

Also available in: Unified diff