Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/QualityMeasurement.java @ 6757:e0ac1b19dfcc
issue1435: Tolerate missing measurement values in QualityMeasurements.
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Tue, 06 Aug 2013 16:03:56 +0200 |
parents | af13ceeba52a |
children | 4902d3ead541 |
comparison
equal
deleted
inserted
replaced
6756:9cc0b03656fb | 6757:e0ac1b19dfcc |
---|---|
9 package org.dive4elements.river.artifacts.model.minfo; | 9 package org.dive4elements.river.artifacts.model.minfo; |
10 | 10 |
11 import java.util.Date; | 11 import java.util.Date; |
12 import java.util.Map; | 12 import java.util.Map; |
13 | 13 |
14 import org.apache.log4j.Logger; | |
14 | 15 |
16 /** A measurement of the bed quality, serving different diameter at given km. */ | |
15 public class QualityMeasurement { | 17 public class QualityMeasurement { |
18 private static Logger logger = Logger.getLogger(QualityMeasurements.class); | |
16 | 19 |
17 private double km; | 20 private double km; |
18 private Date date; | 21 private Date date; |
19 private double depth1; | 22 private double depth1; |
20 private double depth2; | 23 private double depth2; |
59 | 62 |
60 public void setDiameter(Map<String, Double> charDiameter) { | 63 public void setDiameter(Map<String, Double> charDiameter) { |
61 this.charDiameter = charDiameter; | 64 this.charDiameter = charDiameter; |
62 } | 65 } |
63 | 66 |
67 /** | |
68 * Get the stored diameter for given key (e.g. d10). | |
69 * @return NaN if no data found in this measurement. | |
70 */ | |
64 public double getDiameter(String key) { | 71 public double getDiameter(String key) { |
65 return charDiameter.get(key); | 72 Double diameter = charDiameter.get(key); |
73 if (diameter == null) { | |
74 logger.warn("No Diameter at km " + km + " for " + key); | |
75 } | |
76 return (diameter != null) ? diameter : Double.NaN; | |
66 } | 77 } |
67 | 78 |
68 public void setDiameter(String key, double value) { | 79 public void setDiameter(String key, double value) { |
69 charDiameter.put(key, value); | 80 charDiameter.put(key, value); |
70 } | 81 } |