package org.simantics.district.imports.ui; import java.io.IOException; import java.nio.file.Path; import java.util.List; import org.apache.commons.csv.CSVRecord; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.jface.wizard.Wizard; import org.eclipse.ui.IImportWizard; import org.eclipse.ui.IWorkbench; import org.geotools.referencing.CRS; import org.opengis.referencing.FactoryException; import org.opengis.referencing.crs.CoordinateReferenceSystem; import org.simantics.district.imports.DistrictImportUtils; public class CSVImportWizard extends Wizard implements IImportWizard { private CSVImportModel model; public CSVImportWizard() { setWindowTitle("Import CSV data"); } @Override public void init(IWorkbench workbench, IStructuredSelection selection) { model = new CSVImportModel(); addPage(new CSVImportWizardPage(model)); } @Override public boolean performFinish() { try { Path csvFile = model.getSource(); char delim = model.getDelimiter(); List rows = DistrictImportUtils.readRows(csvFile, delim, -1); Path wktFile = model.getWKTFile(); try { CoordinateReferenceSystem crs = CRS.decode(null); } catch (FactoryException e) { // TODO Auto-generated catch block e.printStackTrace(); } DistrictImportUtils.importCSVAsLayer(csvFile); } catch (IOException e) { e.printStackTrace(); } return false; } }