Mercurial > dive4elements > river
annotate flys-artifacts/src/main/java/de/intevation/flys/utils/FLYSUtils.java @ 5713:f5d966428703
Fix class cast error in flow velocity importer (might by S. Teichmann)
author | Tom Gottfried <tom.gottfried@intevation.de> |
---|---|
date | Mon, 15 Apr 2013 18:27:14 +0200 |
parents | 63617e142dfe |
children |
rev | line source |
---|---|
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.utils; |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
4648
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
3 import de.intevation.artifactdatabase.state.State; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
4 import de.intevation.artifacts.Artifact; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
5 import de.intevation.artifacts.CallContext; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
6 import de.intevation.artifacts.common.utils.Config; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
7 import de.intevation.artifacts.common.utils.XMLUtils; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
8 import de.intevation.flys.artifacts.FLYSArtifact; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
9 import de.intevation.flys.artifacts.StaticWKmsArtifact; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
10 import de.intevation.flys.artifacts.WINFOArtifact; |
4864
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
11 import de.intevation.flys.artifacts.access.RangeAccess; |
4648
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
12 import de.intevation.flys.artifacts.context.FLYSContext; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
13 import de.intevation.flys.artifacts.model.LocationProvider; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
14 import de.intevation.flys.artifacts.model.RiverFactory; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
15 import de.intevation.flys.artifacts.model.WKms; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
16 import de.intevation.flys.artifacts.model.WQ; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
17 import de.intevation.flys.artifacts.model.WQKms; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
18 import de.intevation.flys.artifacts.states.WDifferencesState; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
19 import de.intevation.flys.artifacts.states.WaterlevelSelectState; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
20 import de.intevation.flys.backend.SessionFactoryProvider; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
21 import de.intevation.flys.model.Gauge; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
22 import de.intevation.flys.model.MainValue; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
23 import de.intevation.flys.model.River; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
24 |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
25 import gnu.trove.TDoubleArrayList; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
26 import gnu.trove.TIntArrayList; |
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
27 import gnu.trove.TLongArrayList; |
1740
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
28 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
29 import java.text.NumberFormat; |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
30 import java.util.HashMap; |
1740
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
31 import java.util.List; |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
32 import java.util.Map; |
2068
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
33 import java.util.regex.Matcher; |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
34 import java.util.regex.Pattern; |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
35 |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
36 import javax.xml.xpath.XPathConstants; |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
37 |
4648
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
38 import org.apache.log4j.Logger; |
1845
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
39 import org.hibernate.SessionFactory; |
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
40 import org.hibernate.impl.SessionFactoryImpl; |
4648
c04db3178d09
Work on river axis mapfile generator.
Christian Lins <christian.lins@intevation.de>
parents:
4635
diff
changeset
|
41 import org.w3c.dom.Document; |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 |
3047
d20215a0afd8
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2765
diff
changeset
|
43 |
4635
53fa4d5c9fb2
Deprecate FLYSUtils
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4616
diff
changeset
|
44 /** |
53fa4d5c9fb2
Deprecate FLYSUtils
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4616
diff
changeset
|
45 * Static helper methods to e.g. access FLYSArtifacts data. |
53fa4d5c9fb2
Deprecate FLYSUtils
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4616
diff
changeset
|
46 * |
53fa4d5c9fb2
Deprecate FLYSUtils
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4616
diff
changeset
|
47 * @deprecated Don't use FLYSUtils to get data from an {@link Artifact} anymore. |
53fa4d5c9fb2
Deprecate FLYSUtils
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4616
diff
changeset
|
48 * Instead use and/or create a {@link Access} class hierarchy. |
53fa4d5c9fb2
Deprecate FLYSUtils
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4616
diff
changeset
|
49 **/ |
53fa4d5c9fb2
Deprecate FLYSUtils
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4616
diff
changeset
|
50 @Deprecated |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 public class FLYSUtils { |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 |
1150
5f53b443d67c
Implement getArtifact(uuid,context) in FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1129
diff
changeset
|
53 /** The logger that is used in this utility. */ |
5f53b443d67c
Implement getArtifact(uuid,context) in FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1129
diff
changeset
|
54 private static Logger logger = Logger.getLogger(FLYSUtils.class); |
5f53b443d67c
Implement getArtifact(uuid,context) in FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1129
diff
changeset
|
55 |
2038
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
56 /** |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
57 * An enum that represents the 5 possible WQ modes in FLYS. The 5 values are |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
58 * <i>QFREE</i> <i>QGAUGE</i> <i>WGAUGE</i> <i>WFREE</i> and <i>NONE</i>. |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
59 */ |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
60 public static enum WQ_MODE { QFREE, QGAUGE, WFREE, WGAUGE, NONE }; |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
61 |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
62 /** |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
63 * An enum that represents the 4 possible WQ input modes in FLYS. The 4 |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
64 * values are |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
65 * <i>ADAPTED</i> <i>SINGLE</i> <i>RANGE</i> and <i>NONE</i>. |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
66 */ |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
67 public static enum WQ_INPUT { ADAPTED, SINGLE, RANGE, NONE }; |
2068
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
68 |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
69 public static final Pattern NUMBERS_PATTERN = |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
70 Pattern.compile("\\D*(\\d++.\\d*)\\D*"); |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
71 |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
72 public static final String XPATH_FLOODMAP_RIVER_PROJECTION = |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
73 "/artifact-database/floodmap/river[@name=$name]/srid/@value"; |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
74 |
4994
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
75 public static final String XPATH_FLOODMAP_DGM_PROJECTION = |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
76 "/artifact-database/floodmap/river[@name=$name]/dgm-srid/@value"; |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
77 |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
78 public static final String XPATH_FLOODMAP_SHAPEFILE_DIR = |
1129
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
79 "/artifact-database/floodmap/shapefile-path/@value"; |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
80 |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
81 public static final String XPATH_FLOODMAP_VELOCITY_LOGFILE = |
1129
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
82 "/artifact-database/floodmap/velocity/logfile/@path"; |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
83 |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
84 public static final String XPATH_FLOODMAP_MAPSERVER_URL = |
1129
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
85 "/artifact-database/floodmap/mapserver/server/@path"; |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
86 |
4864
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
87 public static final String XPATH_RIVERMAP_MAPSERVER_URL = |
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
88 "/artifact-database/rivermap/mapserver/server/@path"; |
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
89 |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
90 public static final String XPATH_FLOODMAP_MAPFILE_PATH = |
1129
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
91 "/artifact-database/floodmap/mapserver/mapfile/@path"; |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
92 |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
93 public static final String XPATH_FLOODMAP_MAPFILE_TEMPLATE = |
1129
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
94 "/artifact-database/floodmap/mapserver/map-template/@path"; |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
95 |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
96 public static final String XPATH_FLOODMAP_MAPSERVER_TEMPLATE_PATH = |
1129
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
97 "/artifact-database/floodmap/mapserver/templates/@path"; |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
98 |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
99 |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
100 private FLYSUtils() { |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
101 } |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
102 |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
103 |
2017
e384d78ff78b
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1845
diff
changeset
|
104 /** |
e384d78ff78b
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1845
diff
changeset
|
105 * Pulls Artifact with given UUID fromm database. |
e384d78ff78b
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1845
diff
changeset
|
106 * @return FLYSArtifact with given UUID or null (in case of errors). |
e384d78ff78b
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1845
diff
changeset
|
107 */ |
1118
7398280b11a0
Write WSP file for WSPLGEN and add its filepath to the WSPLGEN job.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1105
diff
changeset
|
108 public static FLYSArtifact getArtifact(String uuid, CallContext context) { |
1150
5f53b443d67c
Implement getArtifact(uuid,context) in FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1129
diff
changeset
|
109 try { |
1174
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
110 Artifact artifact = context.getDatabase().getRawArtifact(uuid); |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
111 |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
112 if (artifact == null) { |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
113 logger.error("Artifact '" + uuid + "' does not exist."); |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
114 return null; |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
115 } |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
116 |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
117 if (!(artifact instanceof FLYSArtifact)) { |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
118 logger.error("Artifact '" +uuid+ "' is no valid FLYSArtifact."); |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
119 return null; |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
120 } |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
121 |
f58be0d661b9
Improved FLYSUtils: fetch Artifacts from ArtifactDatabase properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1150
diff
changeset
|
122 return (FLYSArtifact) artifact; |
1150
5f53b443d67c
Implement getArtifact(uuid,context) in FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1129
diff
changeset
|
123 } |
5f53b443d67c
Implement getArtifact(uuid,context) in FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1129
diff
changeset
|
124 // TODO: catch more selective |
5f53b443d67c
Implement getArtifact(uuid,context) in FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1129
diff
changeset
|
125 catch (Exception e) { |
2017
e384d78ff78b
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1845
diff
changeset
|
126 logger.error("Cannot get FLYSArtifact " + uuid |
e384d78ff78b
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1845
diff
changeset
|
127 + " from database (" + e.getMessage() + ")."); |
1150
5f53b443d67c
Implement getArtifact(uuid,context) in FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1129
diff
changeset
|
128 return null; |
5f53b443d67c
Implement getArtifact(uuid,context) in FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1129
diff
changeset
|
129 } |
1118
7398280b11a0
Write WSP file for WSPLGEN and add its filepath to the WSPLGEN job.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1105
diff
changeset
|
130 } |
7398280b11a0
Write WSP file for WSPLGEN and add its filepath to the WSPLGEN job.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1105
diff
changeset
|
131 |
7398280b11a0
Write WSP file for WSPLGEN and add its filepath to the WSPLGEN job.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1105
diff
changeset
|
132 |
1129
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
133 /** |
1777
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
134 * Returns the FLYSContext from context object. |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
135 * |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
136 * @param context The CallContext or the FLYSContext. |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
137 * |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
138 * @return the FLYSContext. |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
139 */ |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
140 public static FLYSContext getFlysContext(Object context) { |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
141 return context instanceof FLYSContext |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
142 ? (FLYSContext) context |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
143 : (FLYSContext) ((CallContext) context).globalContext(); |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
144 } |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
145 |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
146 |
a8aa343799a2
Extracet getFlysContext from FLYSArtifact to FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1740
diff
changeset
|
147 /** |
1129
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
148 * Convinience function to retrieve an XPath as string with replaced config |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
149 * directory. |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
150 * |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
151 * @param xpath The XPath expression. |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
152 * |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
153 * @return a string with replaced config directory. |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
154 */ |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
155 public static String getXPathString(String xpath) { |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
156 String tmp = Config.getStringXPath(xpath); |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
157 tmp = Config.replaceConfigDir(tmp); |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
158 |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
159 return tmp; |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
160 } |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
161 |
da3c3e286c88
Introduced a MapfileGenerator that creates Mapserver specific mapfiles based on WSPLGEN results read from filesystem.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1118
diff
changeset
|
162 |
1845
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
163 public static boolean isUsingOracle() { |
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
164 SessionFactory sf = SessionFactoryProvider.getSessionFactory(); |
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
165 |
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
166 String d = SessionFactoryProvider.getDriver((SessionFactoryImpl) sf); |
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
167 |
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
168 return d != null ? d.indexOf("Oracle") >= 0 : false; |
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
169 } |
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
170 |
06c157848c8f
Made the floodmap compatible with an Oracle database.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1805
diff
changeset
|
171 |
2038
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
172 /** |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
173 * This method returns an WQ_MODE enum which is based on the parameters |
2423
ac528b883b47
Picked rev 4070,4074,4076,4080 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2422
diff
changeset
|
174 * stored in <i>flys</i> Artifact. If there is no <i>wq_isq</i> parameter |
2038
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
175 * existing, WQ_MODE.NONE is returned. |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
176 * |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
177 * @param flys The FLYSArtifact that stores wq mode relevant parameters. |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
178 * |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
179 * @return an enum WQ_MODE. |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
180 */ |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
181 public static WQ_MODE getWQMode(FLYSArtifact flys) { |
2081
aa9cc91c8193
#444 Take care on NullPointerExceptions in getWQMode. Take 'false' as default value if no 'wq_free' item is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2068
diff
changeset
|
182 if (flys == null) { |
aa9cc91c8193
#444 Take care on NullPointerExceptions in getWQMode. Take 'false' as default value if no 'wq_free' item is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2068
diff
changeset
|
183 return WQ_MODE.NONE; |
aa9cc91c8193
#444 Take care on NullPointerExceptions in getWQMode. Take 'false' as default value if no 'wq_free' item is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2068
diff
changeset
|
184 } |
aa9cc91c8193
#444 Take care on NullPointerExceptions in getWQMode. Take 'false' as default value if no 'wq_free' item is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2068
diff
changeset
|
185 |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
186 String values = flys.getDataAsString("wq_values"); |
3444
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
187 Boolean isQ = flys.getDataAsBoolean("wq_isq"); |
2038
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
188 |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
189 if (values != null) { |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
190 return isQ ? WQ_MODE.QGAUGE : WQ_MODE.WGAUGE; |
2038
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
191 } |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
192 |
2423
ac528b883b47
Picked rev 4070,4074,4076,4080 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2422
diff
changeset
|
193 Boolean isFree = flys.getDataAsBoolean("wq_isfree"); |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
194 |
4413
c62598c372ab
FLYSUtils: Null-guard some conditionals (autoboxes).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4363
diff
changeset
|
195 if (isQ != null && isQ) { |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
196 return isFree ? WQ_MODE.QFREE : WQ_MODE.QGAUGE; |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
197 } |
4413
c62598c372ab
FLYSUtils: Null-guard some conditionals (autoboxes).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4363
diff
changeset
|
198 else if (isQ != null && !isQ) { |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
199 return isFree ? WQ_MODE.WFREE : WQ_MODE.WGAUGE; |
2038
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
200 } |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
201 else { |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
202 return WQ_MODE.NONE; |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
203 } |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
204 } |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
205 |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
206 |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
207 public static WQ_INPUT getWQInputMode(FLYSArtifact flys) { |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
208 if (flys == null) { |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
209 return WQ_INPUT.NONE; |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
210 } |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
211 |
2423
ac528b883b47
Picked rev 4070,4074,4076,4080 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2422
diff
changeset
|
212 Boolean selection = flys.getDataAsBoolean("wq_isrange"); |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
213 String adapted = flys.getDataAsString("wq_values"); |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
214 |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
215 if(adapted != null && adapted.length() > 0) { |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
216 return WQ_INPUT.ADAPTED; |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
217 } |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
218 |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
219 if (selection != null && selection) { |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
220 return WQ_INPUT.RANGE; |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
221 } |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
222 else { |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
223 return WQ_INPUT.SINGLE; |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
224 } |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
225 } |
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
226 |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
227 |
2235
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
228 /** |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
229 * Get bounds for river of artifact. |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
230 * @param flysArtifact artifact which has a "river" data. |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
231 * @return double array. min is at[0], max at[1]. null if given artifact is null |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
232 */ |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
233 public static double[] getRiverMinMax(FLYSArtifact flysArtifact) { |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
234 if (flysArtifact == null) { |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
235 return null; |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
236 } |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
237 |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
238 String riverName = flysArtifact.getDataAsString("river"); |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
239 |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
240 if (riverName == null) { |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
241 riverName = ""; |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
242 } |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
243 |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
244 logger.debug("Search for the min/max distances of '" + riverName + "'"); |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
245 |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
246 River river = RiverFactory.getRiver(riverName); |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
247 |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
248 return river != null |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
249 ? river.determineMinMaxDistance() |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
250 : null; |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
251 } |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
252 |
ee5310134463
Cosmetics/care/refac.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2216
diff
changeset
|
253 |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
254 public static double[] getKmFromTo(FLYSArtifact flys) { |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
255 String strFrom = flys.getDataAsString("ld_from"); |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
256 String strTo = flys.getDataAsString("ld_to"); |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
257 |
3444
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
258 if (strFrom == null) { |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
259 strFrom = flys.getDataAsString("from"); |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
260 } |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
261 |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
262 if (strTo == null) { |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
263 strTo = flys.getDataAsString("to"); |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
264 } |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
265 |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
266 if (strFrom == null || strTo == null) { |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
267 return null; |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
268 } |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
269 |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
270 try { |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
271 return new double[] { |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
272 Double.parseDouble(strFrom), |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
273 Double.parseDouble(strTo) }; |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
274 } |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
275 catch (NumberFormatException nfe) { |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
276 return null; |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
277 } |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
278 } |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
279 |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
280 |
2041
e5f01f2325c9
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2038
diff
changeset
|
281 /** |
e5f01f2325c9
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2038
diff
changeset
|
282 * Return sorted array of locations at which stuff was calculated |
e5f01f2325c9
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2038
diff
changeset
|
283 * (from ld_locations data), null if not parameterized this way. |
e5f01f2325c9
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2038
diff
changeset
|
284 */ |
4851
a1ce76091ade
FLYSUtils: Made getLocations private, added TODO about resolution.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4812
diff
changeset
|
285 // TODO moved to RangeAccess. Resolve remaining calls. |
a1ce76091ade
FLYSUtils: Made getLocations private, added TODO about resolution.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4812
diff
changeset
|
286 private static double[] getLocations(FLYSArtifact flys) { |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
287 String locationStr = flys.getDataAsString("ld_locations"); |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
288 |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
289 if (locationStr == null || locationStr.length() == 0) { |
2765
79f6d0802b06
Prepare improved Discharge curve compatibility.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2600
diff
changeset
|
290 if (flys instanceof WINFOArtifact) { |
79f6d0802b06
Prepare improved Discharge curve compatibility.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2600
diff
changeset
|
291 WINFOArtifact winfo = (WINFOArtifact) flys; |
4616
e285630569dc
Fix reference curve creation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4413
diff
changeset
|
292 if (winfo.getReferenceStartKm() != null && winfo.getReferenceEndKms() != null) { |
2765
79f6d0802b06
Prepare improved Discharge curve compatibility.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2600
diff
changeset
|
293 return new double[] |
79f6d0802b06
Prepare improved Discharge curve compatibility.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2600
diff
changeset
|
294 { |
79f6d0802b06
Prepare improved Discharge curve compatibility.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2600
diff
changeset
|
295 winfo.getReferenceStartKm().doubleValue(), |
79f6d0802b06
Prepare improved Discharge curve compatibility.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2600
diff
changeset
|
296 winfo.getReferenceEndKms()[0] |
79f6d0802b06
Prepare improved Discharge curve compatibility.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2600
diff
changeset
|
297 }; |
79f6d0802b06
Prepare improved Discharge curve compatibility.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2600
diff
changeset
|
298 } |
79f6d0802b06
Prepare improved Discharge curve compatibility.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2600
diff
changeset
|
299 } |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
300 return null; |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
301 } |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
302 |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
303 String[] tmp = locationStr.split(" "); |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
304 TDoubleArrayList locations = new TDoubleArrayList(); |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
305 |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
306 for (String l: tmp) { |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
307 try { |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
308 locations.add(Double.parseDouble(l)); |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
309 } |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
310 catch (NumberFormatException nfe) { |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
311 logger.debug(nfe.getLocalizedMessage(), nfe); |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
312 } |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
313 } |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
314 |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
315 locations.sort(); |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
316 |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
317 return locations.toNativeArray(); |
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
318 } |
1099
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
319 |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
320 |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
321 /** |
2045
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
322 * Returns the Qs for a given FLYSArtifact. This method currently accepts |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
323 * only instances of WINFOArtifact. |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
324 * |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
325 * @param flys A FLYSArtifact. |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
326 * |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
327 * @return the Qs. |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
328 */ |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
329 public static double[] getQs(FLYSArtifact flys) { |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
330 // XXX this is not nice! |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
331 if (flys instanceof WINFOArtifact) { |
2423
ac528b883b47
Picked rev 4070,4074,4076,4080 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2422
diff
changeset
|
332 return ((WINFOArtifact) flys).getQs(); |
2045
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
333 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
334 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
335 logger.warn("This method currently supports WINFOArtifact only!"); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
336 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
337 return null; |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
338 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
339 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
340 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
341 /** |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
342 * Returns the Ws for a given FLYSArtifact. This method currently accepts |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
343 * only instances of WINFOArtifact. |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
344 * |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
345 * @param flys A FLYSArtifact. |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
346 * |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
347 * @return the Ws. |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
348 */ |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
349 public static double[] getWs(FLYSArtifact flys) { |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
350 // XXX this is not nice! |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
351 if (flys instanceof WINFOArtifact) { |
2422
44dc117aa2b7
Picked rev 4058,4063,4065,4068,4069 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2296
diff
changeset
|
352 return ((WINFOArtifact) flys).getWs(); |
2045
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
353 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
354 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
355 logger.warn("This method currently supports WINFOArtifact only!"); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
356 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
357 return null; |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
358 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
359 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
360 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
361 /** |
1099
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
362 * Returns the selected River object based on the 'river' data that might |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
363 * have been inserted by the user. |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
364 * |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
365 * @return the selected River or null if no river has been chosen yet. |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
366 */ |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
367 public static River getRiver(FLYSArtifact flys) { |
2045
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
368 String sRiver = getRivername(flys); |
1099
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
369 |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
370 return (sRiver != null) |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
371 ? RiverFactory.getRiver(sRiver) |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
372 : null; |
af73f196eccc
Refactored to use new FLYSUtils, moved getRiver-functionality inside.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1095
diff
changeset
|
373 } |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
374 |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
375 |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
376 /** |
2045
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
377 * Returns the name of the river specified in the given <i>flys</i> |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
378 * Artifact. |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
379 * |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
380 * @param flys The FLYSArtifact that stores a river relevant information. |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
381 * |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
382 * @return the name of the specified river or null. |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
383 */ |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
384 public static String getRivername(FLYSArtifact flys) { |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
385 return flys != null ? flys.getDataAsString("river") : null; |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
386 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
387 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
388 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
389 /** |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
390 * Extracts the SRID defined in the global configuration for the river |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
391 * specified in <i>artifact</i>. |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
392 * |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
393 * @param artifact The FLYSArtifact that stores the name of the river. |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
394 * |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
395 * @return the SRID as string (e.g. "31466"). |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
396 */ |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
397 public static String getRiverSrid(FLYSArtifact artifact) { |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
398 String river = artifact.getDataAsString("river"); |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
399 |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
400 if (river == null || river.length() == 0) { |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
401 return null; |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
402 } |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
403 |
1805
5e9696c32f04
Added datacage config and loaders for KM WMS layer in floodmaps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1792
diff
changeset
|
404 return getRiverSrid(river); |
5e9696c32f04
Added datacage config and loaders for KM WMS layer in floodmaps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1792
diff
changeset
|
405 } |
5e9696c32f04
Added datacage config and loaders for KM WMS layer in floodmaps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1792
diff
changeset
|
406 |
5e9696c32f04
Added datacage config and loaders for KM WMS layer in floodmaps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1792
diff
changeset
|
407 |
5e9696c32f04
Added datacage config and loaders for KM WMS layer in floodmaps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1792
diff
changeset
|
408 public static String getRiverSrid(String rivername) { |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
409 Map<String, String> variables = new HashMap<String, String>(1); |
1805
5e9696c32f04
Added datacage config and loaders for KM WMS layer in floodmaps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1792
diff
changeset
|
410 variables.put("name", rivername); |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
411 |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
412 Document cfg = Config.getConfig(); |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
413 |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
414 return (String) XMLUtils.xpath( |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
415 cfg, |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
416 XPATH_FLOODMAP_RIVER_PROJECTION, |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
417 XPathConstants.STRING, |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
418 null, |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
419 variables); |
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
420 } |
1740
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
421 |
4994
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
422 public static String getRiverDGMSrid(String rivername) { |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
423 Map<String, String> variables = new HashMap<String, String>(1); |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
424 variables.put("name", rivername); |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
425 |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
426 Document cfg = Config.getConfig(); |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
427 |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
428 String dgm = (String) XMLUtils.xpath( |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
429 cfg, |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
430 XPATH_FLOODMAP_DGM_PROJECTION, |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
431 XPathConstants.STRING, |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
432 null, |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
433 variables); |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
434 if (logger.isDebugEnabled()) { |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
435 logger.debug("Use EPSG:" + dgm + " for DGM"); |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
436 } |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
437 return dgm; |
63617e142dfe
Quick-fix for floodmaps. Use the correct projection for DGM.
Raimund Renkert <rrenkert@intevation.de>
parents:
4864
diff
changeset
|
438 } |
1740
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
439 |
3284
d9af29a4bb85
Various cosmetic doc fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3076
diff
changeset
|
440 /** |
d9af29a4bb85
Various cosmetic doc fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3076
diff
changeset
|
441 * Return the (first) Gauge corresponding to the given location(s) of |
d9af29a4bb85
Various cosmetic doc fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3076
diff
changeset
|
442 * the artifact. |
d9af29a4bb85
Various cosmetic doc fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3076
diff
changeset
|
443 * @param flys the artifact in question. |
d9af29a4bb85
Various cosmetic doc fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3076
diff
changeset
|
444 * @return (First) gauge of locations of river of artifact. |
d9af29a4bb85
Various cosmetic doc fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3076
diff
changeset
|
445 */ |
2045
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
446 public static Gauge getGauge(FLYSArtifact flys) { |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
447 River river = getRiver(flys); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
448 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
449 if (river == null) { |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
450 logger.debug("no river found"); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
451 return null; |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
452 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
453 |
4862
b99656db18de
FLYSUtils: Use RangeAcces, removed getKmRange.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
454 RangeAccess rangeAccess = new RangeAccess(flys, null); |
b99656db18de
FLYSUtils: Use RangeAcces, removed getKmRange.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
455 double[] dist = rangeAccess.getKmRange(); |
2045
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
456 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
457 if (dist == null) { |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
458 logger.debug("no range found"); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
459 return null; |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
460 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
461 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
462 if (logger.isDebugEnabled()) { |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
463 logger.debug("Determine gauge for:"); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
464 logger.debug("... river: " + river.getName()); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
465 logger.debug("... distance: " + dist[0] + " - " + dist[1]); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
466 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
467 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
468 Gauge gauge = river.determineGauge(dist[0], dist[1]); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
469 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
470 String name = gauge != null ? gauge.getName() : "'n/a"; |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
471 logger.debug("Found gauge: " + name); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
472 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
473 return gauge; |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
474 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
475 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
476 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
477 public static String getGaugename(FLYSArtifact flys) { |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
478 Gauge gauge = getGauge(flys); |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
479 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
480 return gauge != null ? gauge.getName() : null; |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
481 } |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
482 |
d13be39cfd1d
#242 Added header with meta information into CSV exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2041
diff
changeset
|
483 |
2128
bf67eb014443
Added convinience functions to FLYSArtifact and FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2081
diff
changeset
|
484 public static Gauge getReferenceGauge(FLYSArtifact flys) { |
bf67eb014443
Added convinience functions to FLYSArtifact and FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2081
diff
changeset
|
485 Long officialNumber = flys.getDataAsLong("reference_gauge"); |
bf67eb014443
Added convinience functions to FLYSArtifact and FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2081
diff
changeset
|
486 |
bf67eb014443
Added convinience functions to FLYSArtifact and FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2081
diff
changeset
|
487 return officialNumber != null |
bf67eb014443
Added convinience functions to FLYSArtifact and FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2081
diff
changeset
|
488 ? Gauge.getGaugeByOfficialNumber(officialNumber) |
bf67eb014443
Added convinience functions to FLYSArtifact and FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2081
diff
changeset
|
489 : null; |
bf67eb014443
Added convinience functions to FLYSArtifact and FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2081
diff
changeset
|
490 } |
bf67eb014443
Added convinience functions to FLYSArtifact and FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2081
diff
changeset
|
491 |
bf67eb014443
Added convinience functions to FLYSArtifact and FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2081
diff
changeset
|
492 |
2249
997df76c6f58
Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2235
diff
changeset
|
493 public static String getReferenceGaugeName(FLYSArtifact flys) { |
997df76c6f58
Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2235
diff
changeset
|
494 Gauge refGauge = getReferenceGauge(flys); |
997df76c6f58
Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2235
diff
changeset
|
495 |
997df76c6f58
Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2235
diff
changeset
|
496 return refGauge != null |
997df76c6f58
Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2235
diff
changeset
|
497 ? refGauge.getName() |
997df76c6f58
Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2235
diff
changeset
|
498 : "-- not found --"; |
997df76c6f58
Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2235
diff
changeset
|
499 } |
997df76c6f58
Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2235
diff
changeset
|
500 |
997df76c6f58
Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2235
diff
changeset
|
501 |
2068
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
502 public static Double getValueFromWQ(WQ wq) { |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
503 if (wq == null) { |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
504 return null; |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
505 } |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
506 |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
507 Matcher m = NUMBERS_PATTERN.matcher(wq.getName()); |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
508 |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
509 if (m.matches()) { |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
510 logger.debug("Found a number."); |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
511 |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
512 String raw = m.group(1); |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
513 |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
514 try { |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
515 return Double.valueOf(raw); |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
516 } |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
517 catch (NumberFormatException nfe) { |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
518 } |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
519 } |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
520 |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
521 return null; |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
522 } |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
523 |
0cf60d64895c
#370 Added a 'W at gauge' column to CSV exports if 'W at gauge' mode has been selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2063
diff
changeset
|
524 |
4363
9dfec327acc6
FLYSUtils: Minor doc add.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4278
diff
changeset
|
525 /** Creates human-readable name for a wsp (waterlevel/longitudinal section). |
9dfec327acc6
FLYSUtils: Minor doc add.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4278
diff
changeset
|
526 * @param name will be split at '='s. |
9dfec327acc6
FLYSUtils: Minor doc add.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4278
diff
changeset
|
527 */ |
1740
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
528 public static String createWspWTitle( |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
529 WINFOArtifact winfo, |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
530 CallContext cc, |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
531 String name |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
532 ) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
533 String[] parts = name.split("="); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
534 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
535 NumberFormat nf = Formatter.getWaterlevelW(cc); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
536 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
537 String namedMainValue = null; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
538 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
539 boolean isQ = winfo.isQ(); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
540 boolean isFree = winfo.isFreeQ(); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
541 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
542 double v; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
543 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
544 try { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
545 v = Double.valueOf(parts[1]); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
546 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
547 namedMainValue = getNamedMainValue(winfo.getGauge(), v); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
548 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
549 catch (NumberFormatException nfe) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
550 logger.warn("Cannot parse Double of: '" + parts[1] + "'"); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
551 return name; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
552 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
553 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
554 String prefix = null; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
555 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
556 if (isQ && !isFree && namedMainValue != null) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
557 return "W (" + namedMainValue + ")"; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
558 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
559 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
560 if (isQ) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
561 prefix = "Q="; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
562 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
563 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
564 return prefix == null |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
565 ? "W(" + nf.format(v) + ")" |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
566 : "W(" + prefix + nf.format(v) + ")"; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
567 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
568 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
569 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
570 public static String createWspQTitle( |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
571 WINFOArtifact winfo, |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
572 CallContext cc, |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
573 String name |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
574 ) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
575 String[] parts = name.split("="); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
576 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
577 NumberFormat nf = Formatter.getWaterlevelQ(cc); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
578 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
579 String namedMainValue = null; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
580 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
581 boolean isQ = winfo.isQ(); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
582 boolean isFree = winfo.isFreeQ(); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
583 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
584 double v; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
585 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
586 try { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
587 v = Double.valueOf(parts[1]); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
588 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
589 namedMainValue = getNamedMainValue(winfo.getGauge(), v); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
590 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
591 catch (NumberFormatException nfe) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
592 logger.warn("Cannot parse Double of: '" + parts[1] + "'"); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
593 return name; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
594 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
595 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
596 String prefix = null; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
597 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
598 if (isQ && !isFree && namedMainValue != null) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
599 return namedMainValue; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
600 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
601 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
602 if (!isQ) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
603 prefix = "W="; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
604 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
605 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
606 return prefix == null |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
607 ? "Q(" + nf.format(v) + ")" |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
608 : "Q(" + prefix + nf.format(v) + ")"; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
609 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
610 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
611 |
2038
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
612 /** |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
613 * Returns the named main value if a Q was selected and if this Q fits to a |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
614 * named main value. Otherwise, this function returns null. |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
615 * |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
616 * @param winfo The WINFO Artifact. |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
617 * @param value The Q (or W) value. |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
618 * |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
619 * @return a named main value or null. |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
620 */ |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
621 public static String getNamedMainValue(WINFOArtifact winfo, double value) { |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
622 WQ_MODE wqmode = getWQMode(winfo); |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
623 |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
624 if (wqmode != WQ_MODE.QGAUGE) { |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
625 return null; |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
626 } |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
627 else { |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
628 return getNamedMainValue(winfo.getGauge(), value); |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
629 } |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
630 } |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
631 |
f73036b991e2
Bugfix: repaired broken named values in exports - the last solution had bad side effects.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2035
diff
changeset
|
632 |
1740
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
633 public static String getNamedMainValue(Gauge gauge, double value) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
634 List<MainValue> mainValues = gauge.getMainValues(); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
635 logger.debug("Search named main value for: " + value); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
636 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
637 for (MainValue mv: mainValues) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
638 if (mv.getValue().doubleValue() == value) { |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
639 logger.debug("Found named main value: " + mv.getMainValue().getName()); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
640 return mv.getMainValue().getName(); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
641 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
642 } |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
643 |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
644 logger.debug("Did not find a named main value for: " + value); |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
645 return null; |
8d08f6641372
Improved the title creation of WSP Q and W facets - named main values are taken into account while title creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1174
diff
changeset
|
646 } |
1792
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
647 |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
648 |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
649 /** |
2035
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
650 * |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
651 * @param nmv A string that represents a named main value. |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
652 * |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
653 * @throws NullPointerException if nmv is null. |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
654 */ |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
655 public static String stripNamedMainValue(String nmv) { |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
656 int startIndex = nmv.indexOf("("); |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
657 int endIndex = nmv.indexOf(")"); |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
658 |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
659 if (startIndex > 0 && endIndex > 0 && startIndex < endIndex) { |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
660 return nmv.substring(0, startIndex); |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
661 } |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
662 |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
663 return nmv; |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
664 } |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
665 |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
666 |
3ebbe497d7f7
#252 Set titles in waterlevel exports to named main values if those are existing for given Q values.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2017
diff
changeset
|
667 /** |
1792
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
668 * Returns the URL of user mapfile for the owner of Artifact |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
669 * <i>artifactId</i>. |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
670 * |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
671 * @param artifactId The UUID of an artifact. |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
672 * |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
673 * @return the URL of the user wms. |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
674 */ |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
675 public static String getUserWMSUrl(String artifactId) { |
4656
442fbb290fa8
Introduce river mapfile generation (WARNING: Changes in config xml files required!).
Christian Lins <christian.lins@intevation.de>
parents:
4648
diff
changeset
|
676 String url = getXPathString(XPATH_FLOODMAP_MAPSERVER_URL); |
2296
d69d8dea78dc
Be more merciful for building the URL for the user-wms.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2249
diff
changeset
|
677 url = url.endsWith("/") ? url + "user-wms" : url + "/" + "user-wms"; |
1792
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
678 |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
679 return url; |
49ad801076e4
Enabled the MapGenerator to create WMS layers with database datastore - riveraxis is the first layer that is no longer fetched from static WMS service but from user specific one.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1777
diff
changeset
|
680 } |
2063
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
681 |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
682 |
4864
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
683 public static String getRiverWMSUrl() { |
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
684 String url = getXPathString(XPATH_RIVERMAP_MAPSERVER_URL); |
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
685 url = url.endsWith("/") ? url + "river-wms" : url + "/" + "river-wms"; |
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
686 |
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
687 return url; |
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
688 } |
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
689 |
dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
Christian Lins <christian.lins@intevation.de>
parents:
4862
diff
changeset
|
690 |
2063
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
691 /** |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
692 * This method returns the description for a given <i>km</i> for a specific |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
693 * river. The river is provided by the FLYSArtifact <i>flys</i>. |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
694 * |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
695 * @param flys The FLYSArtifact that provides a river. |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
696 * @param km The kilometer. |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
697 * |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
698 * @return the description for <i>km</i> or an empty string if no |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
699 * description was found. |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
700 */ |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
701 public static String getLocationDescription(FLYSArtifact flys, double km) { |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
702 String river = getRivername(flys); |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
703 |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
704 if (river == null) { |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
705 return ""; |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
706 } |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
707 |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
708 return LocationProvider.getLocation(river, km); |
97a25b54eea3
Part 1 of #125: added a description for a location to the WaterlevelExport.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2045
diff
changeset
|
709 } |
2179
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
710 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
711 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
712 /** |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
713 * This method returns the differences for a w-differences calculation. |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
714 * |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
715 * @param winfo The WINFOArtifact. |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
716 * @param context The context. |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
717 * |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
718 * @return The differences as string separated by semicolon and linebreak. |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
719 */ |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
720 public static String getWDifferences( |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
721 WINFOArtifact winfo, |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
722 CallContext context) |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
723 { |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
724 State state = winfo.getCurrentState(context); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
725 if(state instanceof WDifferencesState) { |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
726 String diffids = winfo.getDataAsString("diffids"); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
727 String datas[] = diffids.split("#"); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
728 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
729 // Validate the Data-Strings. |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
730 for (String s: datas) { |
4054
102050c4fc00
fix issue909: strange validation code. be fearles.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3969
diff
changeset
|
731 if (!WaterlevelSelectState.isValueValid(s)) { |
2179
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
732 return ""; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
733 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
734 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
735 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
736 if (datas.length < 2) { |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
737 return ""; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
738 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
739 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
740 String diffs = ""; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
741 for(int i = 0; i < datas.length; i+=2) { |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
742 // e.g.: |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
743 // 42537f1e-3522-42ef-8968-635b03d8e9c6;longitudinal_section.w;1 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
744 WKms minuendWKms = getWKms(StringUtil.unbracket(datas[i+0]), |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
745 context); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
746 WKms subtrahendWKms = getWKms(StringUtil.unbracket(datas[i+1]), |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
747 context); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
748 if (minuendWKms != null && subtrahendWKms != null) { |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3047
diff
changeset
|
749 diffs += StringUtil.wWrap(minuendWKms.getName()) |
2179
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
750 + " - " + StringUtil.wWrap(subtrahendWKms.getName()); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
751 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
752 diffs += ";\n"; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
753 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
754 return diffs; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
755 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
756 else { |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
757 logger.warn("Not a valid state for differences."); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
758 return ""; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
759 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
760 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
761 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
762 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
763 protected static WKms getWKms(String mingle, CallContext context) { |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
764 String[] def = mingle.split(";"); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
765 String uuid = def[0]; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
766 String name = def[1]; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
767 int idx = Integer.parseInt(def[2]); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
768 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
769 if (name.startsWith("staticwkms")) { |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
770 StaticWKmsArtifact staticWKms = |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
771 (StaticWKmsArtifact) FLYSUtils.getArtifact( |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
772 uuid, |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
773 context); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
774 WKms wkms = staticWKms.getWKms(idx); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
775 if (wkms == null) |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
776 logger.error("No WKms from artifact."); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
777 return wkms; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
778 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
779 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
780 WINFOArtifact flys = (WINFOArtifact) FLYSUtils.getArtifact( |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
781 uuid, |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
782 context); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
783 |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
784 if (flys == null) { |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
785 logger.warn("One of the artifacts (1) for diff calculation could not be loaded"); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
786 return null; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
787 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
788 else{ |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
789 WQKms[] wqkms = (WQKms[]) flys.getWaterlevelData(). |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
790 getData(); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
791 if (wqkms == null) |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
792 logger.warn("not waterlevels in artifact"); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
793 else if (wqkms.length < idx) |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
794 logger.warn("not enough waterlevels in artifact"); |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
795 return wqkms[idx]; |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
796 } |
c3e523a76340
Added method that return the differences for a w-differences calculation as
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2128
diff
changeset
|
797 } |
2216
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
798 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
799 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
800 /** |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
801 * This method transform a string into an int array. Therefore, the string |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
802 * <i>raw</i> must consist of int values separated by a <i>';'</i>. |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
803 * |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
804 * @param raw The raw integer array as string separated by a ';'. |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
805 * |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
806 * @return an array of int values. |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
807 */ |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
808 public static int[] intArrayFromString(String raw) { |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
809 String[] splitted = raw != null ? raw.split(";") : null; |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
810 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
811 if (splitted == null || splitted.length == 0) { |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
812 logger.warn("No integer values found in '" + raw + "'"); |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
813 return new int[0]; |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
814 } |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
815 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
816 TIntArrayList integers = new TIntArrayList(splitted.length); |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
817 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
818 for (String value: splitted) { |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
819 try { |
3405
b0ba96bbf01d
Use Integer.parseInt() instead of Integer.valueOf() + Autounboxing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3284
diff
changeset
|
820 integers.add(Integer.parseInt(value)); |
2216
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
821 } |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
822 catch (NumberFormatException nfe) { |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
823 logger.warn("Parsing integer failed: " + nfe); |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
824 } |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
825 } |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
826 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
827 return integers.toNativeArray(); |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
828 } |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
829 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
830 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
831 /** |
2600
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
832 * This method transform a string into a long array. Therefore, the string |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
833 * <i>raw</i> must consist of int values separated by a <i>';'</i>. |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
834 * |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
835 * @param raw The raw long array as string separated by a ';'. |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
836 * |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
837 * @return an array of int values. |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
838 */ |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
839 public static long[] longArrayFromString(String raw) { |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
840 String[] splitted = raw != null ? raw.split(";") : null; |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
841 |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
842 if (splitted == null || splitted.length == 0) { |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
843 logger.warn("No long values found in '" + raw + "'"); |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
844 return new long[0]; |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
845 } |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
846 |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
847 TLongArrayList longs = new TLongArrayList(splitted.length); |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
848 |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
849 for (String value: splitted) { |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
850 try { |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
851 longs.add(Long.valueOf(value)); |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
852 } |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
853 catch (NumberFormatException nfe) { |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
854 logger.warn("Parsing long failed: " + nfe); |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
855 } |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
856 } |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
857 |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
858 return longs.toNativeArray(); |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
859 } |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
860 |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
861 |
3f1cc396d253
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2556
diff
changeset
|
862 /** |
2216
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
863 * This method transform a string into an double array. Therefore, the |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
864 * string <i>raw</i> must consist of double values separated by a |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
865 * <i>';'</i>. |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
866 * |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
867 * @param raw The raw double array as string separated by a ';'. |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
868 * |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
869 * @return an array of double values. |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
870 */ |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
871 public static double[] doubleArrayFromString(String raw) { |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
872 String[] splitted = raw != null ? raw.split(";") : null; |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
873 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
874 if (splitted == null || splitted.length == 0) { |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
875 logger.warn("No double values found in '" + raw + "'"); |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
876 return new double[0]; |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
877 } |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
878 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
879 TDoubleArrayList doubles = new TDoubleArrayList(splitted.length); |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
880 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
881 for (String value: splitted) { |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
882 try { |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
883 doubles.add(Double.valueOf(value)); |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
884 } |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
885 catch (NumberFormatException nfe) { |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
886 logger.warn("Parsing double failed: " + nfe); |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
887 } |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
888 } |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
889 |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
890 return doubles.toNativeArray(); |
31fa7cae0f35
Added new helper methods to FLYSUtils that extract int[] and double[] from string.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2179
diff
changeset
|
891 } |
3444
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
892 |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
893 |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
894 /** |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
895 * Returns the gauges that match the selected kilometer range. |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
896 * |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
897 * @param flys the flys artifact. |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
898 * |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
899 * @return the gauges based on the selected kilometer range (null if |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
900 * none/no range set). |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
901 */ |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
902 public static List<Gauge> getGauges(FLYSArtifact flys) { |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
903 |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
904 River river = getRiver(flys); |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
905 if (river == null) { |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
906 logger.debug("getGauges: no river!"); |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
907 return null; |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
908 } |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
909 |
4862
b99656db18de
FLYSUtils: Use RangeAcces, removed getKmRange.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
910 RangeAccess rangeAccess = new RangeAccess(flys, null); |
b99656db18de
FLYSUtils: Use RangeAcces, removed getKmRange.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
911 double[] dist = rangeAccess.getKmRange(); |
3444
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
912 if (dist == null) { |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
913 logger.debug("getGauges: no dist!"); |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
914 return null; |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
915 } |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
916 logger.debug("getGauges: " + dist[0] + " - " + dist[1]); |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
917 |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
918 return river.determineGauges(dist[0], dist[1]); |
f903f1e5aed6
Preparing W/Q per gauge input for FixationArtifact.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3405
diff
changeset
|
919 } |
1095
f465785ed1ae
Refactored the code to fetch the km range/locations into a utility class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
920 } |
1105
adb52a2005e7
Moved code to extract the river srid defined in the global configuration into FLYSUtils.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1099
diff
changeset
|
921 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |