/* * RapidMiner * * Copyright (C) 2001-2011 by Rapid-I and the contributors * * Complete list of developers available at our web site: * * http://rapid-i.com * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see http://www.gnu.org/licenses/. */ package com.rapidminer.operator.nio; import java.io.File; import com.rapidminer.gui.wizards.ConfigurationListener; import com.rapidminer.operator.OperatorException; import com.rapidminer.operator.nio.model.AbstractDataResultSetReader; import com.rapidminer.operator.nio.model.CSVResultSetConfiguration; import com.rapidminer.operator.nio.model.DataResultSetFactory; import com.rapidminer.repository.RepositoryLocation; /** * This is the Wizard for Excel Import. It consists of several steps: * - Selecting Excel file * - Selecting Sheet and possibly selection of sheet * - Defining Annotations Step * - Defining Meta Data * * @author Tobias Malbrecht, Sebastian Loh, Sebastian Land, Simon Fischer */ public class CSVImportWizard extends AbstractDataImportWizard { private static final long serialVersionUID = 1L; public CSVImportWizard() throws OperatorException { this(null, null, null); } /** * Using this constructor you can skip the file selection step if already known. * @param file * @throws OperatorException */ public CSVImportWizard(File file, RepositoryLocation preselectedLocation) throws OperatorException { super(null, preselectedLocation, "data_import_wizard"); // setting available info CSVResultSetConfiguration config = (CSVResultSetConfiguration) getState().getDataResultSetFactory(); config.setCsvFile(file.getAbsolutePath()); // adding steps addStep(new CSVSyntaxConfigurationWizardStep(this, (CSVResultSetConfiguration) getState().getDataResultSetFactory())); addCommonSteps(); layoutDefault(HUGE); } public CSVImportWizard(CSVExampleSource source, ConfigurationListener listener, RepositoryLocation preselectedLocation) throws OperatorException { super(source, preselectedLocation, "data_import_wizard"); // adding steps addStep(new CSVFileSelectionWizardStep(this, (CSVResultSetConfiguration) getState().getDataResultSetFactory())); addStep(new CSVSyntaxConfigurationWizardStep(this, (CSVResultSetConfiguration) getState().getDataResultSetFactory())); addCommonSteps(); // addStep(new AnnotationDeclarationWizardStep(state)); // addStep(new MetaDataDeclarationWizardStep(state)); // if (source == null) { // addStep(new StoreDataWizardStep(this, state, (preselectedLocation != null) ? preselectedLocation.getAbsoluteLocation() : null)); // } layoutDefault(HUGE); } @Override public void cancel() { super.cancel(); } @Override protected DataResultSetFactory makeFactory(AbstractDataResultSetReader source) throws OperatorException { if (source != null) { return new CSVResultSetConfiguration((CSVExampleSource) source); } else { return new CSVResultSetConfiguration(); } } }