Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/FixDeltaWtGenerator.java @ 3237:1cad94fa0817
Fix array-index-oobs in FixDeltaWtGenerator.
flys-artifacts/trunk@4869 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Tue, 03 Jul 2012 17:51:52 +0000 |
parents | 1aec30e75bcb |
children | 112c3f0fc075 |
comparison
equal
deleted
inserted
replaced
3236:b0eee4c1eaa0 | 3237:1cad94fa0817 |
---|---|
268 return; | 268 return; |
269 } | 269 } |
270 | 270 |
271 Map<Integer, int[]> annoIdxMap = new HashMap<Integer, int[]>(); | 271 Map<Integer, int[]> annoIdxMap = new HashMap<Integer, int[]>(); |
272 | 272 |
273 int idxInterpol = 0; | |
274 int idxRegular = 0; | |
273 for (int i = 0; i < qwds.length; i++) { | 275 for (int i = 0; i < qwds.length; i++) { |
274 if (qwds[i] == null) { | 276 if (qwds[i] == null) { |
275 logger.debug("doAnalysisEventsOut: qwds[" + i + "] == null"); | 277 logger.debug("doAnalysisEventsOut: qwds[" + i + "] == null"); |
276 continue; | 278 continue; |
277 } | 279 } |
280 boolean interpolate = qwds[i].getInterpolated(); | 282 boolean interpolate = qwds[i].getInterpolated(); |
281 if (interpolate) { | 283 if (interpolate) { |
282 interpol.add(rtp, value); | 284 interpol.add(rtp, value); |
283 annoIdxMap.put( | 285 annoIdxMap.put( |
284 i, | 286 i, |
285 new int[]{1, i}); | 287 new int[]{1, idxInterpol++}); |
286 } | 288 } |
287 else { | 289 else { |
288 series.add(rtp, value); | 290 series.add(rtp, value); |
289 annoIdxMap.put( | 291 annoIdxMap.put( |
290 i, | 292 i, |
291 new int[]{0, i}); | 293 new int[]{0, idxRegular++}); |
292 } | 294 } |
293 } | 295 } |
294 tsc.addSeries(series); | 296 tsc.addSeries(series); |
295 tsc.addSeries(interpol); | 297 tsc.addSeries(interpol); |
296 addAxisDataset(tsc, 0, visible); | 298 addAxisDataset(tsc, 0, visible); |
346 return; | 348 return; |
347 } | 349 } |
348 | 350 |
349 Map<Integer, int[]> annoIdxMap = new HashMap<Integer, int[]>(); | 351 Map<Integer, int[]> annoIdxMap = new HashMap<Integer, int[]>(); |
350 | 352 |
353 int idxInterpol = 0; | |
354 int idxRegular = 0; | |
351 for (int i = 0; i < qwds.length; i++) { | 355 for (int i = 0; i < qwds.length; i++) { |
352 if (qwds[i] == null) { | 356 if (qwds[i] == null) { |
353 continue; | 357 continue; |
354 } | 358 } |
355 RegularTimePeriod rtp = new Day(qwds[i].getDate()); | 359 RegularTimePeriod rtp = new Day(qwds[i].getDate()); |
357 boolean interpolate = qwds[i].getInterpolated(); | 361 boolean interpolate = qwds[i].getInterpolated(); |
358 if (interpolate) { | 362 if (interpolate) { |
359 interpol.addOrUpdate(rtp, value); | 363 interpol.addOrUpdate(rtp, value); |
360 annoIdxMap.put( | 364 annoIdxMap.put( |
361 i, | 365 i, |
362 new int[]{1, i}); | 366 new int[]{1, idxInterpol++}); |
363 } | 367 } |
364 else { | 368 else { |
365 annoIdxMap.put( | 369 annoIdxMap.put( |
366 i, | 370 i, |
367 new int[]{0, i}); | 371 new int[]{0, idxRegular++}); |
368 series.addOrUpdate(rtp, value); | 372 series.addOrUpdate(rtp, value); |
369 } | 373 } |
370 | |
371 } | 374 } |
372 tsc.addSeries(series); | 375 tsc.addSeries(series); |
373 tsc.addSeries(interpol); | 376 tsc.addSeries(interpol); |
374 | 377 |
375 addAxisDataset(tsc, 0, visible); | 378 addAxisDataset(tsc, 0, visible); |