exposing CommonService through cdm store
[taxeditor.git] / taxeditor-store / src / main / java / eu / etaxonomy / taxeditor / io / TcsImportWizard.java
1 // $Id$
2 /**
3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
6 *
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
9 */
10
11 package eu.etaxonomy.taxeditor.io;
12
13 import org.apache.log4j.Logger;
14 import org.eclipse.jface.viewers.IStructuredSelection;
15 import org.eclipse.ui.IWorkbench;
16
17 import eu.etaxonomy.cdm.database.DbSchemaValidation;
18 import eu.etaxonomy.cdm.io.tcsxml.in.TcsXmlImportConfigurator;
19 import eu.etaxonomy.taxeditor.store.CdmStore;
20
21 /**
22 * @author n.hoffmann
23 * @created 15.06.2009
24 * @version 1.0
25 */
26 public class TcsImportWizard extends AbstractImportWizard<TcsXmlImportConfigurator>{
27 private static final Logger logger = Logger.getLogger(TcsImportWizard.class);
28
29 private TcsXmlImportConfigurator configurator;
30
31 private ImportFromFileDataSourceWizardPage dataSourcePage;
32
33 /* (non-Javadoc)
34 * @see org.eclipse.jface.wizard.Wizard#performFinish()
35 */
36 @Override
37 public boolean performFinish() {
38
39 String file = dataSourcePage.getFile();
40
41 // TcsXmlImport expects a string that can be used to instantiate a URL instance
42 // TODO consolidate import and exports regarding what may be passed in as source
43 // will construct a url string for now
44
45 file = "file://" + file;
46
47 configurator.setSource(file);
48 configurator.setDbSchemaValidation(DbSchemaValidation.CREATE);
49 configurator.setCdmAppController(CdmStore.getApplicationController());
50
51 return doImportInternal(configurator);
52 }
53
54 /* (non-Javadoc)
55 * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench, org.eclipse.jface.viewers.IStructuredSelection)
56 */
57 public void init(IWorkbench workbench, IStructuredSelection selection) {
58 configurator = TcsXmlImportConfigurator.NewInstance(null, null);
59 }
60
61 /* (non-Javadoc)
62 * @see eu.etaxonomy.taxeditor.io.AbstractImportWizard#getConfigurator()
63 */
64 @Override
65 public TcsXmlImportConfigurator getConfigurator() {
66 return configurator;
67 }
68
69 /* (non-Javadoc)
70 * @see eu.etaxonomy.taxeditor.io.AbstractImportWizard#addPages()
71 */
72 @Override
73 public void addPages() {
74 super.addPages();
75
76 dataSourcePage = new ImportFromFileDataSourceWizardPage();
77 addPage(dataSourcePage);
78 }
79 }