2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
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.
10 package eu
.etaxonomy
.taxeditor
.io
.e4
.in
.sdd
;
14 import javax
.inject
.Inject
;
16 import org
.eclipse
.core
.runtime
.jobs
.Job
;
17 import org
.eclipse
.e4
.core
.contexts
.ContextInjectionFactory
;
18 import org
.eclipse
.e4
.core
.contexts
.IEclipseContext
;
19 import org
.eclipse
.e4
.ui
.workbench
.modeling
.EPartService
;
21 import eu
.etaxonomy
.cdm
.common
.URI
;
22 import eu
.etaxonomy
.cdm
.database
.DbSchemaValidation
;
23 import eu
.etaxonomy
.cdm
.io
.common
.IImportConfigurator
.SOURCE_TYPE
;
24 import eu
.etaxonomy
.cdm
.io
.sdd
.in
.SDDImportConfigurator
;
25 import eu
.etaxonomy
.taxeditor
.io
.e4
.in
.AbstractImportWizardE4
;
26 import eu
.etaxonomy
.taxeditor
.io
.e4
.in
.ImportFromFileDataSourceWithReferenceWizardPage
;
27 import eu
.etaxonomy
.taxeditor
.store
.CdmStore
;
33 public class SddImportWizardE4
extends AbstractImportWizardE4
<SDDImportConfigurator
> {
35 private SDDImportConfigurator configurator
;
37 private ImportFromFileDataSourceWithReferenceWizardPage dataSourcePage
;
40 public SddImportWizardE4(IEclipseContext context
, EPartService partService
) {
41 super(context
, partService
);
45 public SDDImportConfigurator
getConfigurator() {
50 public void addPages() {
52 dataSourcePage
= ContextInjectionFactory
.make(ImportFromFileDataSourceWithReferenceWizardPage
.class, context
);
53 dataSourcePage
.setTitle("Choose File");
54 dataSourcePage
.setDescription("Please choose an XML file in the SDD format.");
55 dataSourcePage
.setExtensions(new String
[]{"*.xml", "*.sdd"});
57 addPage(dataSourcePage
);
62 public boolean performFinish() {
63 URI source
= dataSourcePage
.getUri();
64 configurator
.setSource(source
);
65 configurator
.setDbSchemaValidation(DbSchemaValidation
.CREATE
);
66 Job job
= CdmStore
.getImportManager().createIOServiceJob(configurator
, new File(source
.getJavaUri()), SOURCE_TYPE
.URI
);
67 CdmStore
.getImportManager().run(job
);
74 configurator
= CdmStore
.getImportManager().SddConfigurator();