annotate artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/MiddleBedHeightCalculation.java @ 8006:b15a6ed7c613 facet-metadata

Avoid NPE if some meta data does not exist.
author Raimund Renkert <rrenkert@intevation.de>
date Thu, 03 Jul 2014 13:27:14 +0200
parents 3bdb9f99b4a0
children b5cba2690347
rev   line source
7983
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
2 * Software engineering by Intevation GmbH
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
3 *
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
6 * documentation coming with Dive4Elements River for details.
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
7 */
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
8
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
9 package org.dive4elements.river.artifacts.model.minfo;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
10
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
11 import java.util.ArrayList;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
12 import java.util.List;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
13
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
14 import org.apache.log4j.Logger;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
15
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
16 import org.dive4elements.artifacts.Artifact;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
17 import org.dive4elements.river.model.BedHeightSingle;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
18 import org.dive4elements.river.model.BedHeightSingleValue;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
19 import org.dive4elements.river.artifacts.access.BedHeightAccess;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
20 import org.dive4elements.river.artifacts.model.Calculation;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
21 import org.dive4elements.river.artifacts.model.CalculationResult;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
22 import org.dive4elements.river.artifacts.model.minfo.MiddleBedHeightData;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
23
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
24
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
25 public class MiddleBedHeightCalculation extends Calculation {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
26
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
27 private static final Logger logger =
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
28 Logger.getLogger(MiddleBedHeightCalculation.class);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
29
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
30
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
31 public CalculationResult calculate(BedHeightAccess access) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
32 logger.info("MiddleBedHeightCalculation.calculate");
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
33
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
34 int[] singleIds = access.getBedHeightSingleIDs();
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
35
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
36
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
37 if (logger.isDebugEnabled()) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
38 Artifact artifact = access.getArtifact();
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
39
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
40 logger.debug("Artifact '" + artifact.identifier() + "' contains:");
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
41 if (singleIds != null) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
42 logger.debug(" " + singleIds.length + " single bedheight ids");
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
43 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
44 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
45
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
46 List<BedHeightSingle> singles = getSingles(access, singleIds);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
47
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
48 return buildCalculationResult(access, singles);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
49 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
50
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
51
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
52 protected List<BedHeightSingle> getSingles(
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
53 BedHeightAccess access,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
54 int[] ids
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
55 ) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
56 List<BedHeightSingle> singles = new ArrayList<BedHeightSingle>();
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
57
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
58 for (int id: ids) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
59 BedHeightSingle s = BedHeightSingle.getBedHeightSingleById(id);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
60
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
61 if (s != null) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
62 singles.add(s);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
63 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
64 else {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
65 logger.warn("Cannot find Single by id: " + id);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
66 // TODO ADD WARNING
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
67 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
68 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
69
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
70 return singles;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
71 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
72
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
73
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
74 protected CalculationResult buildCalculationResult(
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
75 BedHeightAccess access,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
76 List<BedHeightSingle> singles
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
77 ) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
78 logger.info("MiddleBedHeightCalculation.buildCalculationResult");
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
79
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
80 double kmLo = access.getLowerKM();
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
81 double kmHi = access.getUpperKM();
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
82
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
83 List<MiddleBedHeightData> data = new ArrayList<MiddleBedHeightData>();
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
84
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
85 for (BedHeightSingle single: singles) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
86 MiddleBedHeightData d = prepareSingleData(single, kmLo, kmHi);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
87
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
88 if (d != null) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
89 data.add(d);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
90 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
91 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
92
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
93 logger.debug("Calculation results in " + data.size() + " data objects.");
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
94
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
95 return new CalculationResult((MiddleBedHeightData[])
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
96 data.toArray(new MiddleBedHeightData[data.size()]), this);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
97 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
98
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
99
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
100 protected MiddleBedHeightData prepareSingleData(
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
101 BedHeightSingle single,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
102 double kmLo,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
103 double kmHi
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
104 ) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
105 logger.debug("Prepare data for single: " + single.getDescription());
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
106
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
107 List<BedHeightSingleValue> values =
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
108 BedHeightSingleValue.getBedHeightSingleValues(single, kmLo, kmHi);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
109
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
110 int year = single.getYear() != null ? single.getYear() : 0;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
111
8006
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
112 String curElevModel = single.getCurElevationModel() != null ?
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
113 single.getCurElevationModel().getName() : "";
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
114 String oldElevModel = single.getOldElevationModel() != null ?
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
115 single.getOldElevationModel().getName() : "";
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
116 String riverElevModel = single.getRiver().getWstUnit() != null ?
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
117 single.getRiver().getWstUnit().getName() : "";
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
118 String type = single.getType() != null ?
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
119 single.getType().getName() : "";
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
120 String locationSystem = single.getLocationSystem() != null ?
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
121 single.getLocationSystem().getName() : "";
7983
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
122 MiddleBedHeightData data = new MiddleBedHeightData(
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
123 year,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
124 year,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
125 single.getEvaluationBy(),
7989
98e25342df73 Add units as meta data to middle bed height facets.
Raimund Renkert <rrenkert@intevation.de>
parents: 7983
diff changeset
126 single.getDescription(),
8006
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
127 curElevModel,
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
128 oldElevModel,
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
129 riverElevModel,
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
130 type,
b15a6ed7c613 Avoid NPE if some meta data does not exist.
Raimund Renkert <rrenkert@intevation.de>
parents: 7999
diff changeset
131 locationSystem,
7993
150d71261cad Added som more meta data to middle bed height result.
Raimund Renkert <rrenkert@intevation.de>
parents: 7989
diff changeset
132 single.getSoundingWidth());
7983
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
133
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
134 for (BedHeightSingleValue value: values) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
135 if (value.getHeight() != null) {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
136 double uncert = value.getUncertainty() != null ?
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
137 value.getUncertainty().doubleValue() : Double.NaN;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
138 double sounding = value.getSoundingWidth() != null ?
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
139 value.getSoundingWidth().doubleValue() : Double.NaN;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
140 double gap = value.getDataGap() != null ?
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
141 value.getDataGap().doubleValue() : Double.NaN;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
142 data.addAll(value.getStation().doubleValue(),
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
143 value.getHeight().doubleValue(),
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
144 uncert,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
145 sounding,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
146 gap,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
147 value.getWidth().doubleValue(),
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
148 false);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
149 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
150 else {
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
151 data.addAll(value.getStation().doubleValue(),
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
152 0,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
153 0,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
154 0,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
155 0,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
156 0,
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
157 true);
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
158 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
159 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
160
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
161 logger.debug("Single contains " + values.size() + " values");
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
162
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
163 return data;
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
164 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
165 }
62befca02480 Moved MiddleBedHeight classes to minfo package. Facet now returns double[][] data.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
166 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org