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);

http://dive4elements.wald.intevation.org