Project

General

Profile

Download (1.96 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
 *
3
 */
4
package eu.etaxonomy.taxeditor.io.e4.in.excel.specimen;
5

    
6
import java.net.URI;
7

    
8
import javax.inject.Inject;
9

    
10
import org.eclipse.e4.core.contexts.ContextInjectionFactory;
11
import org.eclipse.e4.core.contexts.IEclipseContext;
12
import org.eclipse.e4.ui.workbench.modeling.EPartService;
13

    
14
import eu.etaxonomy.cdm.database.DbSchemaValidation;
15
import eu.etaxonomy.cdm.io.specimen.excel.in.SpecimenCdmExcelImportConfigurator;
16
import eu.etaxonomy.taxeditor.io.e4.in.AbstractImportWizardE4;
17
import eu.etaxonomy.taxeditor.io.e4.in.ImportFromFileDataSourceWizardPageE4;
18
import eu.etaxonomy.taxeditor.store.CdmStore;
19

    
20
/**
21
 *
22
 * @author pplitzner
23
 * @since Oct 5, 2017
24
 *
25
 */
26
public class SpecimenCdmExcelImportWizardE4 extends AbstractImportWizardE4<SpecimenCdmExcelImportConfigurator> {
27

    
28

    
29
    private SpecimenCdmExcelImportConfigurator configurator;
30

    
31
	private ImportFromFileDataSourceWizardPageE4 dataSourcePage;
32

    
33
	@Inject
34
	public SpecimenCdmExcelImportWizardE4(IEclipseContext context, EPartService partService) {
35
	    super(context, partService);
36
	}
37

    
38
	@Override
39
	public SpecimenCdmExcelImportConfigurator getConfigurator() {
40
		return configurator;
41
	}
42

    
43
	/** {@inheritDoc} */
44
	@Override
45
    public void init() {
46
		configurator =  CdmStore.getImportManager().SpecimenCdmExcelImportConfigurator();
47
	}
48

    
49
	@Override
50
	public boolean performFinish() {
51
		URI source = dataSourcePage.getUri();
52
		configurator.setSource(source);
53
		configurator.setDbSchemaValidation(DbSchemaValidation.CREATE);
54

    
55
		CdmStore.getImportManager().run(configurator);
56

    
57
		return true;
58
	}
59

    
60
	/** {@inheritDoc} */
61
	@Override
62
	public void addPages() {
63
		dataSourcePage = ContextInjectionFactory.make(ImportFromFileDataSourceWizardPageE4.class, context);
64
        dataSourcePage.setTitle("Choose Specimen CDM Excel");
65
        dataSourcePage.setDescription("Please choose an xls file in the SpecimenCdmExcel format.");
66
        dataSourcePage.setExtensions(new String[]{"*.xlsx", "*.xls", "*.*"});
67

    
68
		addPage(dataSourcePage);
69
		super.addPages();
70
	}
71

    
72
}
(2-2/2)