Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/states/WaterlevelFetcher.java @ 8946:5d5d482da3e9
Implementing SINFO - FlowDepthMinMax calculation
author | gernotbelger |
---|---|
date | Tue, 13 Mar 2018 18:49:33 +0100 |
parents | a536e1aacf0f |
children | 86650594f051 |
comparison
equal
deleted
inserted
replaced
8945:4a6b6a3c279c | 8946:5d5d482da3e9 |
---|---|
17 import org.dive4elements.river.artifacts.FixationArtifact; | 17 import org.dive4elements.river.artifacts.FixationArtifact; |
18 import org.dive4elements.river.artifacts.StaticWKmsArtifact; | 18 import org.dive4elements.river.artifacts.StaticWKmsArtifact; |
19 import org.dive4elements.river.artifacts.StaticWQKmsArtifact; | 19 import org.dive4elements.river.artifacts.StaticWQKmsArtifact; |
20 import org.dive4elements.river.artifacts.WINFOArtifact; | 20 import org.dive4elements.river.artifacts.WINFOArtifact; |
21 import org.dive4elements.river.artifacts.access.FixRealizingAccess; | 21 import org.dive4elements.river.artifacts.access.FixRealizingAccess; |
22 import org.dive4elements.river.artifacts.model.Calculation; | |
22 import org.dive4elements.river.artifacts.model.CalculationResult; | 23 import org.dive4elements.river.artifacts.model.CalculationResult; |
23 import org.dive4elements.river.artifacts.model.Segment; | 24 import org.dive4elements.river.artifacts.model.Segment; |
24 import org.dive4elements.river.artifacts.model.WKms; | 25 import org.dive4elements.river.artifacts.model.WKms; |
25 import org.dive4elements.river.artifacts.model.WQKms; | 26 import org.dive4elements.river.artifacts.model.WQKms; |
26 import org.dive4elements.river.artifacts.model.fixings.FixRealizingCalculationExtended; | 27 import org.dive4elements.river.artifacts.model.fixings.FixRealizingCalculationExtended; |
37 */ | 38 */ |
38 public class WaterlevelFetcher { | 39 public class WaterlevelFetcher { |
39 private static Logger log = Logger.getLogger(WaterlevelFetcher.class); | 40 private static Logger log = Logger.getLogger(WaterlevelFetcher.class); |
40 | 41 |
41 public WaterlevelData findWaterlevel(final CallContext context, final String mingle, final double from, | 42 public WaterlevelData findWaterlevel(final CallContext context, final String mingle, final double from, |
42 final double to) { | 43 final double to, final Calculation problems) { |
43 | 44 |
44 final String[] def = mingle.split(";"); | 45 final String[] def = mingle.split(";"); |
45 final String uuid = def[0]; | 46 final String uuid = def[0]; |
46 final String name = def[1]; | 47 final String name = def[1]; |
47 final int idx = Integer.parseInt(def[2]); | 48 final int idx = Integer.parseInt(def[2]); |
48 final D4EArtifact d4eArtifact = RiverUtils.getArtifact(uuid, context); | 49 final D4EArtifact d4eArtifact = RiverUtils.getArtifact(uuid, context); |
49 | 50 |
50 final WaterlevelData data = fetchWaterlevelFromArtifact(context, d4eArtifact, idx, from, to); | 51 final WaterlevelData data = fetchWaterlevelFromArtifact(context, d4eArtifact, idx, from, to); |
51 return data.withName(name); | 52 if (data != null) |
53 return data.withName(name); | |
54 | |
55 problems.addProblem("waterlevelfetcher.missing'", mingle); | |
56 return null; | |
52 } | 57 } |
53 | 58 |
54 private WaterlevelData fetchWaterlevelFromArtifact(final CallContext context, final D4EArtifact d4eArtifact, | 59 private WaterlevelData fetchWaterlevelFromArtifact(final CallContext context, final D4EArtifact d4eArtifact, |
55 final int idx, final double from, final double to) { | 60 final int idx, final double from, final double to) { |
56 if (d4eArtifact == null) { | 61 if (d4eArtifact == null) { |