package org.simantics.xml.sax.ui.datawizard; import java.io.File; import java.util.ArrayList; import java.util.List; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.jface.wizard.Wizard; import org.eclipse.ui.IImportWizard; import org.eclipse.ui.IWorkbench; import org.simantics.xml.data.XmlDataConverter; public class DataConversionWizard extends Wizard implements IImportWizard { InputSelectionPage inputSelectionPage; ImportProcessPage importProcessPage; public DataConversionWizard() { setWindowTitle("XML Data conversion"); } @Override public void init(IWorkbench workbench, IStructuredSelection selection) { } @Override public boolean performFinish() { if (importProcessPage.isImporting()) return false; return true; } @Override public void addPages() { addPage(inputSelectionPage = new InputSelectionPage()); addPage(importProcessPage = new ImportProcessPage()); } public void doConversion() throws Exception { List inputFiles = new ArrayList<>(); for (String name : inputSelectionPage.getDataFilenames()) inputFiles.add(new File(name)); File configurationFile = null; if (inputSelectionPage.getConfigurationFilename() != null) configurationFile = new File(inputSelectionPage.getConfigurationFilename()); File outputPlugin = new File(inputSelectionPage.getPluginFilename()); XmlDataConverter converter = new XmlDataConverter(inputFiles,configurationFile,outputPlugin); converter.convert(); } }