Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculation.java @ 9069:1ffd38826175
access uinfo.vegetationzones+inundation_duration
author | gernotbelger |
---|---|
date | Tue, 15 May 2018 12:00:26 +0200 |
parents | fb9430250899 |
children | 611a523fc42f |
comparison
equal
deleted
inserted
replaced
9068:a5cf8d7bff3c | 9069:1ffd38826175 |
---|---|
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde | 1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde |
2 * Software engineering by | 2 * Software engineering by |
3 * Björnsen Beratende Ingenieure GmbH | 3 * Björnsen Beratende Ingenieure GmbH |
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt | 4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt |
5 * | 5 * |
6 * This file is Free Software under the GNU AGPL (>=v3) | 6 * This file is Free Software under the GNU AGPL (>=v3) |
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. |
29 * @author Domenico Nardi Tironi | 29 * @author Domenico Nardi Tironi |
30 * | 30 * |
31 */ | 31 */ |
32 final class InundationDurationCalculation { | 32 final class InundationDurationCalculation { |
33 | 33 |
34 private CallContext context; | 34 private final CallContext context; |
35 | 35 |
36 public InundationDurationCalculation(CallContext context) { | 36 public InundationDurationCalculation(final CallContext context) { |
37 this.context = context; | 37 this.context = context; |
38 } | 38 } |
39 | 39 |
40 public CalculationResult calculate(UINFOArtifact uinfo) { | 40 public CalculationResult calculate(final UINFOArtifact uinfo) { |
41 final Calculation problems = new Calculation(); | 41 final Calculation problems = new Calculation(); |
42 | 42 |
43 final String calcModeLabel = Resources.getMsg(this.context.getMeta(), uinfo.getCalculationMode().name()); | 43 final String calcModeLabel = Resources.getMsg(this.context.getMeta(), uinfo.getCalculationMode().name()); |
44 final String user = CalculationUtils.findArtifactUser(this.context, uinfo); | 44 final String user = CalculationUtils.findArtifactUser(this.context, uinfo); |
45 | 45 |
46 final RiverAccess access = new RiverAccess(uinfo); | 46 final RiverAccess access = new RiverAccess(uinfo); |
47 final River river = access.getRiver(); | 47 final River river = access.getRiver(); |
48 DoubleRange calcRange = null; | 48 final DoubleRange calcRange = null; |
49 final RiverInfo riverInfo = new RiverInfo(river); | 49 final RiverInfo riverInfo = new RiverInfo(river); |
50 | 50 |
51 final InundationDurationAccess indurax = new InundationDurationAccess(uinfo); | |
52 final int[] totalEpoch = indurax.getTotalEpoch(); | |
53 final Integer year = indurax.getYear(); // null bei year -> Integer.. evtl ungünstig.. evtl. anders lösen | |
54 final DoubleRange range = indurax.getRange(); | |
55 final Double sedimentHeight = indurax.getSedimentHeight(); | |
56 | |
51 final InundationDurationCalculationResults results = new InundationDurationCalculationResults(calcModeLabel, user, riverInfo, calcRange); | 57 final InundationDurationCalculationResults results = new InundationDurationCalculationResults(calcModeLabel, user, riverInfo, calcRange); |
52 | 58 |
53 final Collection<ResultRow> rows = new ArrayList<ResultRow>(); | 59 final Collection<ResultRow> rows = new ArrayList<>(); |
54 | 60 |
55 final ResultRow row1 = ResultRow.create(). // | 61 final ResultRow row1 = ResultRow.create(). // |
56 putValue(SInfoResultType.discharge, 100). // | 62 putValue(SInfoResultType.discharge, 100). // |
57 putValue(SInfoResultType.waterlevel, 2). // | 63 putValue(SInfoResultType.waterlevel, 2). // |
58 putValue(SInfoResultType.gaugeLabel, "Torgau"); | 64 putValue(SInfoResultType.gaugeLabel, "Torgau"); |
59 | 65 |
60 rows.add(row1); | 66 rows.add(row1); |
61 | 67 |
62 ResultRow row2 = ResultRow.create(). // | 68 final ResultRow row2 = ResultRow.create(). // |
63 putValue(SInfoResultType.discharge, 200). // | 69 putValue(SInfoResultType.discharge, 200). // |
64 putValue(SInfoResultType.waterlevel, 3). // | 70 putValue(SInfoResultType.waterlevel, 3). // |
65 putValue(SInfoResultType.gaugeLabel, "Zollenspieker"); | 71 putValue(SInfoResultType.gaugeLabel, "Zollenspieker"); |
66 | 72 |
67 rows.add(row2); | 73 rows.add(row2); |
68 | 74 |
69 final InundationDurationCalculationResult result = new InundationDurationCalculationResult("Ergebnis 1", null, rows); | 75 final InundationDurationCalculationResult result = new InundationDurationCalculationResult("Ergebnis 1", null, rows); |
70 | 76 |
71 results.addResult(result, problems); | 77 results.addResult(result, problems); |
72 | 78 |
73 return new CalculationResult(results, problems); | 79 return new CalculationResult(results, problems); |
74 } | 80 } |
75 } | 81 } |