comparison artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/common/AbstractSInfoCalculationResults.java @ 9000:50cc99579a46

Work on uinfo
author gernotbelger
date Thu, 12 Apr 2018 19:16:10 +0200
parents b194fa64506a
children 23945061daec
comparison
equal deleted inserted replaced
8999:e3b3ce32c825 9000:50cc99579a46
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the 7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
8 * documentation coming with Dive4Elements River for details. 8 * documentation coming with Dive4Elements River for details.
9 */ 9 */
10 package org.dive4elements.river.artifacts.sinfo.common; 10 package org.dive4elements.river.artifacts.sinfo.common;
11 11
12 import java.io.Serializable; 12
13 import java.util.ArrayList;
14 import java.util.Collections;
15 import java.util.List;
16 13
17 import org.apache.commons.lang.math.DoubleRange; 14 import org.apache.commons.lang.math.DoubleRange;
18 import org.dive4elements.river.artifacts.model.Calculation; 15 import org.dive4elements.river.artifacts.common.AbstractCalculationResults;
16
19 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo; 17 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo;
20 18
21 /** 19 /**
22 * @author Gernot Belger 20 * @author Gernot Belger
23 */ 21 */
24 public abstract class AbstractSInfoCalculationResults<RESULT extends AbstractSInfoCalculationResult> implements Serializable { 22 public abstract class AbstractSInfoCalculationResults<RESULT extends AbstractSInfoCalculationResult> extends AbstractCalculationResults<RESULT> {
25 23
26 private static final long serialVersionUID = 1L; 24 private static final long serialVersionUID = 1L;
27 25
28 private final List<RESULT> results = new ArrayList<>(); 26 //TODO: einen sinnvollen Grund finden, warum es diese Klasse noch geben muss, oder LĂ–SCHEN!
29
30 private final String calcModeLabel;
31
32 private final String user;
33
34 private final RiverInfo river;
35
36 private final DoubleRange calcRange;
37
38 public AbstractSInfoCalculationResults(final String calcModeLabel, final String user, final RiverInfo river, final DoubleRange calcRange) { 27 public AbstractSInfoCalculationResults(final String calcModeLabel, final String user, final RiverInfo river, final DoubleRange calcRange) {
39 this.calcModeLabel = calcModeLabel; 28 super(calcModeLabel, user, river, calcRange); //TODO: Split!
40 this.user = user; 29 }
41 this.river = river; 30
42 this.calcRange = calcRange;
43 }
44
45 public final String getCalcModeLabel() {
46 return this.calcModeLabel;
47 }
48
49 public final String getUser() {
50 return this.user;
51 }
52
53 public final RiverInfo getRiver() {
54 return this.river;
55 }
56
57 public final DoubleRange getCalcRange() {
58 return this.calcRange;
59 }
60
61 public final void addResult(final RESULT result, final Calculation problems) {
62 /* we assume error reporting was already done in this case */
63 if (result == null)
64 return;
65
66 if (result.isEmpty()) {
67 problems.addProblem("abstractsinfocalculationresults.emptyResult", result.getLabel());
68 return;
69 }
70
71 this.results.add(result);
72 }
73
74 public final List<RESULT> getResults() {
75 return Collections.unmodifiableList(this.results);
76 }
77 } 31 }

http://dive4elements.wald.intevation.org