Mercurial > dive4elements > river
annotate gwt-client/src/main/java/org/dive4elements/river/client/shared/model/SINFOArtifact.java @ 9263:abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
Allows for distinct values stepping of sinfo flood duration.
author | gernotbelger |
---|---|
date | Tue, 17 Jul 2018 19:48:18 +0200 |
parents | 7bbfb24e6eec |
children | 9826b465b751 |
rev | line source |
---|---|
8854 | 1 /* Copyright (C) 2017 by Bundesanstalt für Gewässerkunde |
2 * Software engineering by Intevation GmbH | |
3 * | |
4 * This file is Free Software under the GNU AGPL (>=v3) | |
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the | |
6 * documentation coming with Dive4Elements River for details. | |
7 */ | |
8 | |
9 package org.dive4elements.river.client.shared.model; | |
10 | |
9263
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
11 import java.util.Collections; |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
12 import java.util.HashSet; |
8854 | 13 import java.util.List; |
9263
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
14 import java.util.Set; |
8854 | 15 |
16 /** | |
17 * The SINFO implementation of an Artifact. | |
18 * | |
19 * @author Gernot Belger | |
20 */ | |
21 public class SINFOArtifact extends DefaultArtifact { | |
22 | |
9263
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
23 /** The name of this artifact: 'sinfo'. */ |
8854 | 24 private static final String NAME = "sinfo"; |
25 | |
26 /** Necessary for serialization */ | |
27 public SINFOArtifact() { | |
28 } | |
29 | |
9263
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
30 public SINFOArtifact(final String uuid, final String hash, final boolean inBackground, final List<CalculationMessage> messages) { |
8854 | 31 super(uuid, hash, inBackground, messages); |
32 } | |
33 | |
9263
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
34 @Override |
8854 | 35 public String getName() { |
36 return NAME; | |
37 } | |
9263
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
38 |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
39 public Set<Double> getValidDurationChartKms(final CollectionItem item) { |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
40 |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
41 final String validKmsText = item.getData().get("validStations"); |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
42 if (validKmsText == null || validKmsText.trim().isEmpty()) |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
43 return Collections.emptySet(); |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
44 |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
45 final String[] split = validKmsText.split(","); |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
46 |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
47 final Set<Double> validKms = new HashSet<Double>(split.length); |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
48 |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
49 for (final String stationText : split) { |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
50 |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
51 try { |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
52 final double station = Double.parseDouble(stationText); |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
53 validKms.add(station); |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
54 } |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
55 catch (final NumberFormatException e) { |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
56 e.printStackTrace(); |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
57 } |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
58 } |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
59 |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
60 return validKms; |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
61 } |
abf14917be32
Moved stepping behaviour of NaviOutputChart into an exchangeable strategy.
gernotbelger
parents:
8854
diff
changeset
|
62 } |