Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/artifacts/WMSGaugeLocationArtifact.java @ 6693:88bb0c794833
issue1391: Enable GaugeDischarge artifact to directly load a table by its ID
This allows us to use the GaugeDischargeArtifact for any discharge
tables that we have in our database. The name of the created facet
is taken from the ids string as is also usual in the WMS artifacts.
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Mon, 29 Jul 2013 12:19:57 +0200 |
parents | af13ceeba52a |
children | 8d5ca5175038 |
rev | line source |
---|---|
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
2 * Software engineering by Intevation GmbH |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
3 * |
5994
af13ceeba52a
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5865
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
5994
af13ceeba52a
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5865
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
7 */ |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
8 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
9 package org.dive4elements.river.artifacts; |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 import java.util.List; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
12 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 import org.w3c.dom.Document; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
14 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
15 import org.apache.log4j.Logger; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
16 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
17 import com.vividsolutions.jts.geom.Envelope; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
18 import com.vividsolutions.jts.geom.Geometry; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
19 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
20 import org.dive4elements.artifacts.ArtifactFactory; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
21 import org.dive4elements.artifacts.CallMeta; |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
23 import org.dive4elements.artifactdatabase.state.Facet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
24 import org.dive4elements.artifactdatabase.state.DefaultOutput; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
25 import org.dive4elements.artifactdatabase.state.State; |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
27 import org.dive4elements.river.model.River; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
28 import org.dive4elements.river.model.GaugeLocation; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
29 |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
30 import org.dive4elements.river.artifacts.WMSDBArtifact.WMSDBState; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
31 import org.dive4elements.river.artifacts.model.FacetTypes; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
32 import org.dive4elements.river.artifacts.model.RiverFactory; |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
33 import org.dive4elements.river.utils.RiverUtils; |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4497
diff
changeset
|
34 import org.dive4elements.river.utils.GeometryUtils; |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
35 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
36 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
37 public class WMSGaugeLocationArtifact extends WMSDBArtifact { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 public static final String NAME = "wmsgaugelocation"; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 private static final Logger logger = |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
43 Logger.getLogger(WMSGaugeLocationArtifact.class); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
44 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
45 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
46 @Override |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
47 public void setup( |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
48 String identifier, |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
49 ArtifactFactory factory, |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 Object context, |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 CallMeta callMeta, |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 Document data) |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
53 { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 logger.debug("WMSGaugeLocationArtifact.setup"); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
55 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
56 super.setup(identifier, factory, context, callMeta, data); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
57 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
58 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
59 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
60 @Override |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
61 public String getName() { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
62 return NAME; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
63 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
64 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
65 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
66 @Override |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
67 public State getCurrentState(Object cc) { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
68 State s = new WMSGaugeLocationState(this); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
69 |
4497
a2735a4bf75e
Change facets member variable to private
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3918
diff
changeset
|
70 List<Facet> fs = getFacets(getCurrentStateId()); |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
71 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
72 DefaultOutput o = new DefaultOutput( |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
73 "floodmap", |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
74 "floodmap", |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
75 "image/png", |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
76 fs, |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
77 "map"); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
78 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
79 s.getOutputs().add(o); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
80 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
81 return s; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
82 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
83 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
84 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
85 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
86 public static class WMSGaugeLocationState extends WMSDBState implements FacetTypes { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
87 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
88 private static final Logger logger = |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
89 Logger.getLogger(WMSGaugeLocationState.class); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
90 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
91 protected Geometry geom; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
92 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
93 public WMSGaugeLocationState(WMSDBArtifact artifact) { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
94 super(artifact); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
95 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
96 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
97 @Override |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
98 protected String getFacetType() { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
99 return FLOODMAP_GAUGE_LOCATION; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
100 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
101 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
102 @Override |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
103 protected String getUrl() { |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
104 return RiverUtils.getUserWMSUrl(artifact.identifier()); |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
105 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
106 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
107 @Override |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
108 protected String getSrid() { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
109 River river = RiverFactory.getRiver(getRiverId()); |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
110 return RiverUtils.getRiverSrid(river.getName()); |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
111 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
112 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
113 @Override |
3918
2fdbe78a8fc2
Fixed various projection issues during map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3301
diff
changeset
|
114 protected Envelope getExtent(boolean reproject) { |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
115 List<GaugeLocation> gauges = |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
116 GaugeLocation.getGaugeLocations(getRiverId(), getName()); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
117 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
118 Envelope max = null; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
119 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
120 for (GaugeLocation gauge: gauges) { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
121 Envelope env = gauge.getGeom().getEnvelopeInternal(); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
122 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
123 if (max == null) { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
124 max = env; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
125 continue; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
126 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
127 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
128 max.expandToInclude(env); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
129 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
130 |
3918
2fdbe78a8fc2
Fixed various projection issues during map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3301
diff
changeset
|
131 return max != null && reproject |
3301
c8f670ae96e8
Create extent of a map layer in the correct coordinate reference system.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2699
diff
changeset
|
132 ? GeometryUtils.transform(max, getSrid()) |
c8f670ae96e8
Create extent of a map layer in the correct coordinate reference system.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2699
diff
changeset
|
133 : max; |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
134 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
135 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
136 @Override |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
137 protected String getFilter() { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
138 return "river_id=" + String.valueOf(getRiverId()) + |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
139 " and name='" + getName() + "'"; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
140 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
141 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
142 @Override |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
143 protected String getDataString() { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
144 String srid = getSrid(); |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
145 |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
146 if (RiverUtils.isUsingOracle()) { |
2684
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
147 return "geom FROM gauge_location USING SRID " + srid; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
148 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
149 else { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
150 return "geom FROM gauge_location " + |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
151 "USING UNIQUE id USING SRID " + srid; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
152 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
153 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
154 |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
155 @Override |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
156 protected String getGeometryType() { |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
157 return "POINT"; |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
158 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
159 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
160 } |
14188f8daefb
Added support for WMS gauges in floodmaps and maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
161 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |