X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.district.imports.ui%2Fsrc%2Forg%2Fsimantics%2Fdistrict%2Fimports%2Fui%2FCSVImportModel.java;h=1521a926c233005eef708058f478dbd5f8641886;hb=1bc60c2213f9b3fc7b4d935ba9afda2b767290e5;hp=50c427c4d14f66138ec17246411ecae4d617294b;hpb=b10b919b6756df3b423dd416df6b1b06abc15f22;p=simantics%2Fdistrict.git diff --git a/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportModel.java b/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportModel.java index 50c427c4..1521a926 100644 --- a/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportModel.java +++ b/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportModel.java @@ -1,73 +1,90 @@ -package org.simantics.district.imports.ui; - -import java.io.IOException; -import java.nio.file.Path; -import java.util.Collections; -import java.util.List; -import java.util.Map; - -import org.simantics.district.imports.DistrictImportUtils; -import org.simantics.district.imports.DistrictImportUtils.CSVHeader; - -public class CSVImportModel { - - private Path source; - private char delimiter; - private boolean read; - private Map delimiters; - - public CSVImportModel() { - delimiters = DistrictImportUtils.getSupportedCSVDelimiterFormats(); - } - - public void setSource(Path source) { - this.source = source; - } - - public void setDelimiter(char delimiter) { - this.delimiter = delimiter; - } - - public void setReadFirstAsHeader(boolean read) { - this.read = read; - } - - public Path getSource() { - return source; - } - - public Map> getHeaderAndRows(int amount) throws IOException { - if (source != null) - return DistrictImportUtils.readCSVHeaderAndRows(source, delimiter, read, amount); - else - return Collections.emptyMap(); - } - - public Map getHeader() throws IOException { - Map header = null; - if (source != null) - header = DistrictImportUtils.readCSVHeader(source, delimiter, read); - if (header == null) - header = Collections.emptyMap(); - return header; - } - - public boolean getReadFirstAsHeader() { - return read; - } - - public String[] getDelimiterFormats() { - return delimiters.keySet().toArray(new String[delimiters.size()]); - } - - public void setDelimiterByLabel(String item) { - setDelimiter(delimiters.get(item)); - } - - public List> readRows(int amount) throws IOException { - if (source != null) - return DistrictImportUtils.readRows(source, delimiter, read, amount); - else - return Collections.emptyList(); - } -} +package org.simantics.district.imports.ui; + +import java.io.IOException; +import java.nio.file.Path; +import java.util.Collections; +import java.util.List; +import java.util.Map; + +import org.apache.commons.csv.CSVRecord; +import org.simantics.district.imports.DistrictImportUtils; +import org.simantics.district.imports.DistrictImportUtils.CSVHeader; + +public class CSVImportModel { + + private Path source; + private char delimiter; + private boolean read; + private Map delimiters; + private Path wktFile; + + public CSVImportModel() { + delimiters = DistrictImportUtils.getSupportedCSVDelimiterFormats(); + } + + public void setSource(Path source) { + this.source = source; + } + + public void setDelimiter(char delimiter) { + this.delimiter = delimiter; + } + + public void setReadFirstAsHeader(boolean read) { + this.read = read; + } + + public Path getSource() { + return source; + } + + public List getRows(int amount) throws IOException { + if (source != null) + return DistrictImportUtils.readRows(source, delimiter, amount); + else + return Collections.emptyList(); + } + + public Map> getHeaderAndRows(int amount) throws IOException { + if (source != null) + return DistrictImportUtils.readCSVHeaderAndRows(source, delimiter, read, amount); + else + return Collections.emptyMap(); + } + + public Map getHeader() throws IOException { + Map header = null; + if (source != null) + header = DistrictImportUtils.readCSVHeader(source, delimiter, read); + if (header == null) + header = Collections.emptyMap(); + return header; + } + + public boolean getReadFirstAsHeader() { + return read; + } + + public String[] getDelimiterFormats() { + return delimiters.keySet().toArray(new String[delimiters.size()]); + } + + public void setDelimiterByLabel(String item) { + setDelimiter(delimiters.get(item)); + } + + public List> readRows(int amount) throws IOException { + if (source != null) + return DistrictImportUtils.readRows(source, delimiter, read, amount); + else + return Collections.emptyList(); + } + + public char getDelimiter() { + return delimiter; + } + + public Path getWKTFile() { + return wktFile; + } +}