Mercurial > dive4elements > river
diff flys-backend/src/main/java/de/intevation/flys/importer/parsers/StaFileParser.java @ 2377:d183ae164cfc
Make parsing of official numbers out of STA files being enabled with new system property.
flys-backend/trunk@3639 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Tue, 10 Jan 2012 10:33:14 +0000 |
parents | fe89d6cf55fb |
children | 976ead36192d |
line wrap: on
line diff
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/StaFileParser.java Thu Jan 05 15:00:21 2012 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/StaFileParser.java Tue Jan 10 10:33:14 2012 +0000 @@ -30,6 +30,9 @@ public static final String TYPES = System.getProperty("flys.backend.main.value.types", "QWTD"); + public static final boolean PARSE_GAUGE_NUMBERS = + Boolean.getBoolean("flys.backend.sta.parse.gauge.numbers"); + public static final Pattern QWTD_ = Pattern.compile("\\s*([^\\s]+)\\s+([^\\s]+)\\s+([" + Pattern.quote(TYPES) + "]).*"); @@ -60,16 +63,21 @@ log.warn("first line in STA file is too short."); return false; } - String gaugeNumberString = line.substring( 0, 16).trim(); - String gaugeName = line.substring(16, 37).trim(); + + String gaugeName = line.substring(16, 37).trim(); Long gaugeNumber = null; - try { - gaugeNumber = Long.parseLong(gaugeNumberString); - } - catch (NumberFormatException nfe) { - log.warn("'" + gaugeNumberString + - "' is not a valid long number."); + + if (PARSE_GAUGE_NUMBERS) { + String gaugeNumberString = line.substring(0, 16).trim(); + + try { + gaugeNumber = Long.parseLong(gaugeNumberString); + } + catch (NumberFormatException nfe) { + log.warn("'" + gaugeNumberString + + "' is not a valid long number."); + } } gauge.setName(gaugeName);