Mercurial > dive4elements > river
comparison flys-backend/src/main/java/de/intevation/flys/importer/parsers/WstParser.java @ 5544:12f4d088f088
WST importer: Cosmetics.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Wed, 03 Apr 2013 23:16:11 +0200 |
parents | 732a8bd44650 |
children | b223be96758c |
comparison
equal
deleted
inserted
replaced
5543:732a8bd44650 | 5544:12f4d088f088 |
---|---|
103 String [] daten = null; | 103 String [] daten = null; |
104 | 104 |
105 BigDecimal [] aktAbfluesse = null; | 105 BigDecimal [] aktAbfluesse = null; |
106 BigDecimal [] firstAbfluesse = null; | 106 BigDecimal [] firstAbfluesse = null; |
107 | 107 |
108 BigDecimal minKm = MAX_RANGE; | 108 BigDecimal minKm = MAX_RANGE; |
109 BigDecimal maxKm = MIN_RANGE; | 109 BigDecimal maxKm = MIN_RANGE; |
110 BigDecimal kmHist1 = null; | |
111 BigDecimal kmHist2 = null; | |
110 | 112 |
111 boolean columnHeaderChecked = false; | 113 boolean columnHeaderChecked = false; |
112 | 114 |
113 String einheit = "Wasserstand [NN + m]"; | 115 String einheit = "Wasserstand [NN + m]"; |
114 | 116 |
115 HashSet<BigDecimal> kms = new HashSet<BigDecimal>(); | 117 HashSet<BigDecimal> kms = new HashSet<BigDecimal>(); |
116 | |
117 BigDecimal kmHist1 = null, kmHist2 = null; | |
118 | 118 |
119 while ((input = in.readLine()) != null) { | 119 while ((input = in.readLine()) != null) { |
120 String line = input; | 120 String line = input; |
121 if (first) { // fetch number of columns | 121 if (first) { // fetch number of columns |
122 if ((line = line.trim()).length() == 0) { | 122 if ((line = line.trim()).length() == 0) { |
145 if (line.startsWith("*\u001f")) { | 145 if (line.startsWith("*\u001f")) { |
146 BigDecimal [] data = | 146 BigDecimal [] data = |
147 parseLineAsDouble(line, columnCount, false, true); | 147 parseLineAsDouble(line, columnCount, false, true); |
148 | 148 |
149 if (aktAbfluesse != null) { | 149 if (aktAbfluesse != null) { |
150 if (kmHist1 != null && kmHist2 != null) { | 150 if (kmHist1 != null && kmHist2 != null |
151 if (kmHist1.compareTo(kmHist2) < 0) { | 151 && kmHist1.compareTo(kmHist2) < 0) { |
152 log.debug("swapped"); | 152 BigDecimal t = minKm; minKm = maxKm; maxKm = t; |
153 BigDecimal t = minKm; minKm = maxKm; maxKm = t; | 153 } |
154 } | |
155 } | |
156 addInterval(minKm, maxKm, aktAbfluesse); | 154 addInterval(minKm, maxKm, aktAbfluesse); |
157 minKm = MAX_RANGE; | 155 minKm = MAX_RANGE; |
158 maxKm = MIN_RANGE; | 156 maxKm = MIN_RANGE; |
159 } | 157 } |
160 | 158 |
278 " (line " + in.getLineNumber() + | 276 " (line " + in.getLineNumber() + |
279 ") found more than once. -> ignored"); | 277 ") found more than once. -> ignored"); |
280 continue; | 278 continue; |
281 } | 279 } |
282 | 280 |
283 kmHist2 = kmHist1; | 281 kmHist2 = kmHist1; |
284 kmHist1 = kaem; | 282 kmHist1 = kaem; |
285 | 283 |
286 if (kaem.compareTo(minKm) < 0) { | 284 if (kaem.compareTo(minKm) < 0) { |
287 minKm = kaem; | 285 minKm = kaem; |
288 } | 286 } |
289 if (kaem.compareTo(maxKm) > 0) { | 287 if (kaem.compareTo(maxKm) > 0) { |
328 } | 326 } |
329 | 327 |
330 } // for all lines in WST file | 328 } // for all lines in WST file |
331 | 329 |
332 wst.setUnit(new ImportUnit(einheit)); | 330 wst.setUnit(new ImportUnit(einheit)); |
333 if (kmHist1.compareTo(kmHist2) < 0) { | 331 |
334 BigDecimal t = minKm; minKm = maxKm; maxKm = t; | 332 if (kmHist1 != null && kmHist2 != null |
335 } | 333 && kmHist1.compareTo(kmHist2) < 0) { |
334 BigDecimal t = minKm; minKm = maxKm; maxKm = t; | |
335 } | |
336 addInterval(minKm, maxKm, aktAbfluesse); | 336 addInterval(minKm, maxKm, aktAbfluesse); |
337 | 337 |
338 fixRangesOrder(); | 338 fixRangesOrder(); |
339 } | 339 } |
340 finally { | 340 finally { |