Project

General

Profile

Download (2.71 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2007 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9
package eu.etaxonomy.taxeditor.io.e4.in.tcs;
10

    
11
import java.io.File;
12
import java.util.ArrayList;
13
import java.util.List;
14

    
15
import javax.inject.Inject;
16

    
17
import org.eclipse.core.runtime.jobs.Job;
18
import org.eclipse.e4.core.contexts.ContextInjectionFactory;
19
import org.eclipse.e4.core.contexts.IEclipseContext;
20
import org.eclipse.e4.ui.workbench.modeling.EPartService;
21

    
22
import eu.etaxonomy.cdm.common.URI;
23
import eu.etaxonomy.cdm.database.DbSchemaValidation;
24
import eu.etaxonomy.cdm.io.common.IImportConfigurator.SOURCE_TYPE;
25
import eu.etaxonomy.cdm.io.tcsxml.in.TcsXmlImportConfigurator;
26
import eu.etaxonomy.taxeditor.io.e4.in.AbstractImportWizardE4;
27
import eu.etaxonomy.taxeditor.io.e4.in.GenericConfiguratorWizardPageE4;
28
import eu.etaxonomy.taxeditor.io.e4.in.ImportFromFileDataSourceWithReferenceWizardPage;
29
import eu.etaxonomy.taxeditor.l10n.Messages;
30
import eu.etaxonomy.taxeditor.store.CdmStore;
31

    
32
/**
33
 * @author pplitzner
34
 * @since Oct 5, 2017
35
 */
36
public class TcsImportWizardE4 extends AbstractImportWizardE4<TcsXmlImportConfigurator> {
37

    
38
    private TcsXmlImportConfigurator configurator;
39

    
40
	private ImportFromFileDataSourceWithReferenceWizardPage dataSourcePage;
41

    
42
	@Inject
43
	public TcsImportWizardE4(IEclipseContext context, EPartService partService) {
44
	    super(context, partService);
45
	}
46

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

    
53
	    Job job = CdmStore.getImportManager().createIOServiceJob(configurator, new File(source.getJavaUri()), SOURCE_TYPE.URI);
54
	    CdmStore.getImportManager().run(job);
55

    
56
	    return true;
57
	}
58

    
59
	@Override
60
    public void init() {
61
		configurator = CdmStore.getImportManager().TcsConfigurator();
62
	}
63

    
64
	@Override
65
	public TcsXmlImportConfigurator getConfigurator() {
66
		return configurator;
67
	}
68

    
69
	 @Override
70
     protected void addConfiguratorPage(){
71
         List<String> ignoreMethods = new ArrayList<>();
72
         ignoreMethods.add("setRegisterAuditing");
73
         pageConfiguration = ContextInjectionFactory.make(GenericConfiguratorWizardPageE4.class, context);
74
         pageConfiguration.initImport(getConfigurator(), ignoreMethods, Messages.TCSImportWizard_ConfiguratorWizard_label);
75
         addPage(pageConfiguration);
76
    }
77

    
78
	@Override
79
	public void addPages() {
80
		dataSourcePage = ContextInjectionFactory.make(ImportFromFileDataSourceWithReferenceWizardPage.class, context);
81
		addPage(dataSourcePage);
82
		super.addPages();
83
	}
84
}
(2-2/2)