4 package eu
.etaxonomy
.taxeditor
.io
.e4
.in
.excel
.specimen
;
6 import eu
.etaxonomy
.cdm
.common
.URI
;
7 import java
.util
.ArrayList
;
10 import javax
.inject
.Inject
;
12 import org
.eclipse
.e4
.core
.contexts
.ContextInjectionFactory
;
13 import org
.eclipse
.e4
.core
.contexts
.IEclipseContext
;
14 import org
.eclipse
.e4
.ui
.workbench
.modeling
.EPartService
;
16 import eu
.etaxonomy
.cdm
.database
.DbSchemaValidation
;
17 import eu
.etaxonomy
.cdm
.io
.specimen
.excel
.in
.SpecimenCdmExcelImportConfigurator
;
18 import eu
.etaxonomy
.taxeditor
.io
.e4
.in
.AbstractImportWizardE4
;
19 import eu
.etaxonomy
.taxeditor
.io
.e4
.in
.GenericConfiguratorWizardPageE4
;
20 import eu
.etaxonomy
.taxeditor
.io
.e4
.in
.ImportFromFileDataSourceWithReferenceWizardPage
;
21 import eu
.etaxonomy
.taxeditor
.l10n
.Messages
;
22 import eu
.etaxonomy
.taxeditor
.store
.CdmStore
;
30 public class SpecimenCdmExcelImportWizardE4
extends AbstractImportWizardE4
<SpecimenCdmExcelImportConfigurator
> {
33 private SpecimenCdmExcelImportConfigurator configurator
;
35 private ImportFromFileDataSourceWithReferenceWizardPage dataSourcePage
;
38 public SpecimenCdmExcelImportWizardE4(IEclipseContext context
, EPartService partService
) {
39 super(context
, partService
);
43 public SpecimenCdmExcelImportConfigurator
getConfigurator() {
50 configurator
= CdmStore
.getImportManager().SpecimenCdmExcelImportConfigurator();
54 public boolean performFinish() {
55 URI source
= dataSourcePage
.getUri();
56 configurator
.setSource(source
);
57 configurator
.setDbSchemaValidation(DbSchemaValidation
.CREATE
);
59 CdmStore
.getImportManager().run(configurator
);
66 public void addPages() {
67 dataSourcePage
= ContextInjectionFactory
.make(ImportFromFileDataSourceWithReferenceWizardPage
.class, context
);
68 dataSourcePage
.setTitle("Choose Specimen CDM Excel");
69 dataSourcePage
.setDescription("Please choose an xls file in the SpecimenCdmExcel format.");
70 dataSourcePage
.setExtensions(new String
[]{"*.xlsx", "*.xls", "*.*"});
72 addPage(dataSourcePage
);
77 protected void addConfiguratorPage(){
78 List
<String
> ignoreMethods
= new ArrayList
<>();
79 ignoreMethods
.add("setIgnoreNull");
80 ignoreMethods
.add("setInteractWithUser");
81 ignoreMethods
.add("setUseClassification");
82 ignoreMethods
.add("setRegisterAuditing");
83 ignoreMethods
.add("setDeduplicateAuthors");
84 ignoreMethods
.add("setDeduplicateReferences");
85 pageConfiguration
= ContextInjectionFactory
.make(GenericConfiguratorWizardPageE4
.class, context
);
86 pageConfiguration
.initImport(getConfigurator(), ignoreMethods
, Messages
.ExcelSpecimenUpdateWizard_ConfiguratorWizard_label
);
87 addPage(pageConfiguration
);