teichmann@6335: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@6335: * Software engineering by Intevation GmbH teichmann@6335: * teichmann@6335: * This file is Free Software under the GNU AGPL (>=v3) teichmann@6335: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@6335: * documentation coming with Dive4Elements River for details. teichmann@6335: */ teichmann@6335: teichmann@6335: package org.dive4elements.river.importer.parsers; teichmann@6335: teichmann@6335: import java.io.File; teichmann@6335: import java.io.FileInputStream; teichmann@6335: import java.io.IOException; teichmann@6335: import java.io.InputStreamReader; teichmann@6335: import java.io.LineNumberReader; teichmann@6335: import java.util.ArrayList; teichmann@6335: import java.util.List; teichmann@6335: teichmann@6335: import org.apache.log4j.Logger; teichmann@6335: teichmann@6335: public class OfficialLinesConfigParser { teichmann@6335: teichmann@6335: private static Logger log = Logger.getLogger(OfficialLinesConfigParser.class); teichmann@6335: teichmann@6335: public static final String ENCODING = "ISO-8859-1"; teichmann@6335: teichmann@6335: private List mainValueNames; teichmann@6335: teichmann@6335: public OfficialLinesConfigParser() { teichmann@6335: mainValueNames = new ArrayList(); teichmann@6335: } teichmann@6335: teichmann@6335: public void reset() { teichmann@6335: mainValueNames.clear(); teichmann@6335: } teichmann@6335: teichmann@6335: public void parse(File file) throws IOException { teichmann@6335: teichmann@6335: log.info("Parsing offical lines config file: " + file); teichmann@6335: teichmann@6335: LineNumberReader reader = teichmann@6335: new LineNumberReader( teichmann@6335: new InputStreamReader( teichmann@6335: new FileInputStream(file), ENCODING)); teichmann@6335: teichmann@6335: try { teichmann@6335: String line; teichmann@6335: while ((line = reader.readLine()) != null) { teichmann@6335: if ((line = line.trim()).length() == 0 || line.charAt(0) == '*') { teichmann@6335: continue; teichmann@6335: } teichmann@6335: mainValueNames.add(line); teichmann@6335: } teichmann@6335: } teichmann@6335: finally { teichmann@6335: reader.close(); teichmann@6335: } teichmann@6335: } teichmann@6335: teichmann@6335: public List getMainValueNames() { teichmann@6335: return mainValueNames; teichmann@6335: } teichmann@6335: } teichmann@6335: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :