annotate flys-artifacts/src/main/java/de/intevation/flys/artifacts/WMSHWSPointsArtifact.java @ 5645:696d710470f5

flys/issue1077: Show loads as step line, therefore transform data in SedimentLoadFacet to stretch as in the measurement stations bounds. Deal with this new kind of data in the Generator.
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Wed, 10 Apr 2013 09:35:07 +0200
parents 0b5c0c15b13f
children
rev   line source
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.artifacts;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
3 import java.util.List;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
4
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
5 import org.w3c.dom.Document;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
6
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
7 import org.apache.log4j.Logger;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
8
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
9 import com.vividsolutions.jts.geom.Envelope;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 import de.intevation.artifacts.ArtifactFactory;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
12 import de.intevation.artifacts.CallMeta;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14 import de.intevation.artifactdatabase.state.DefaultOutput;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15 import de.intevation.artifactdatabase.state.Facet;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
16 import de.intevation.artifactdatabase.state.State;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
18 import de.intevation.flys.model.HWSPoint;
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19 import de.intevation.flys.model.River;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
20
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
21 import de.intevation.flys.artifacts.model.FacetTypes;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22 import de.intevation.flys.artifacts.model.RiverFactory;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
23 import de.intevation.flys.utils.FLYSUtils;
3301
c8f670ae96e8 Create extent of a map layer in the correct coordinate reference system.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2699
diff changeset
24 import de.intevation.flys.utils.GeometryUtils;
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
26
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
27 public class WMSHWSPointsArtifact extends WMSDBArtifact {
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
29 public static final String NAME = "hws_points";
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
31
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32 private static final Logger logger =
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
33 Logger.getLogger(WMSHWSPointsArtifact.class);
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
36 @Override
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37 public void setup(
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
38 String identifier,
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39 ArtifactFactory factory,
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
40 Object context,
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
41 CallMeta callMeta,
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
42 Document data)
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
43 {
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
44 logger.debug("WMSHWSPointsArtifact.setup");
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46 super.setup(identifier, factory, context, callMeta, data);
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50 @Override
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
51 public String getName() {
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52 return NAME;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
55
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56 @Override
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57 public State getCurrentState(Object cc) {
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
58 State s = new HWSPointsState(this);
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59
4497
a2735a4bf75e Change facets member variable to private
Björn Ricks <bjoern.ricks@intevation.de>
parents: 3918
diff changeset
60 List<Facet> fs = getFacets(getCurrentStateId());
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62 DefaultOutput o = new DefaultOutput(
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 "floodmap",
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64 "floodmap",
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
65 "image/png",
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
66 fs,
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
67 "map");
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
68
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
69 s.getOutputs().add(o);
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
70
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
71 return s;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
72 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
75 public static class HWSPointsState extends WMSDBState implements FacetTypes
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76 {
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
77 private static final Logger logger =
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
78 Logger.getLogger(HWSPointsState.class);
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
79
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
80 protected int riverId;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
81
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
82 public HWSPointsState(WMSDBArtifact artifact) {
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
83 super(artifact);
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
84 riverId = 0;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
85 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
86
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
87 public int getRiverId() {
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
88 if (riverId == 0) {
2672
5afccab9aac1 Modified floodmap specific datacage configuration and improved WMS hws layer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1855
diff changeset
89 String ids = artifact.getDataAsString("ids");
5afccab9aac1 Modified floodmap specific datacage configuration and improved WMS hws layer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1855
diff changeset
90 String[] parts = ids.split(";");
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
91
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92 try {
3405
b0ba96bbf01d Use Integer.parseInt() instead of Integer.valueOf() + Autounboxing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3301
diff changeset
93 riverId = Integer.parseInt(parts[0]);
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
94 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
95 catch (NumberFormatException nfe) {
2672
5afccab9aac1 Modified floodmap specific datacage configuration and improved WMS hws layer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1855
diff changeset
96 logger.error("Cannot parse river id from '" + parts[0] + "'");
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
97 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
98 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
99
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
100 return riverId;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
101 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
102
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
103 @Override
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
104 protected String getFacetType() {
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
105 return FLOODMAP_HWS_POINTS;
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
106 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
107
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
108 @Override
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
109 protected String getUrl() {
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
110 return FLYSUtils.getUserWMSUrl(artifact.identifier());
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
111 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
112
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
113 @Override
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
114 protected String getSrid() {
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
115 River river = RiverFactory.getRiver(getRiverId());
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
116 return FLYSUtils.getRiverSrid(river.getName());
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
117 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
118
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
119 @Override
3918
2fdbe78a8fc2 Fixed various projection issues during map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3405
diff changeset
120 protected Envelope getExtent(boolean reproject) {
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
121 List<HWSPoint> hws = HWSPoint.getPoints(getRiverId(), getName());
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
122
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
123 Envelope max = null;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
124
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
125 for (HWSPoint h: hws) {
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
126 Envelope env = h.getGeom().getEnvelopeInternal();
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
127
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
128 if (max == null) {
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
129 max = env;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
130 continue;
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
131 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
132
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
133 max.expandToInclude(env);
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
134 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
135
3918
2fdbe78a8fc2 Fixed various projection issues during map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3405
diff changeset
136 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
137 ? 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
138 : max;
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
139 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
140
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
141 @Override
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
142 protected String getFilter() {
2672
5afccab9aac1 Modified floodmap specific datacage configuration and improved WMS hws layer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1855
diff changeset
143 return "river_id=" + String.valueOf(getRiverId())
5afccab9aac1 Modified floodmap specific datacage configuration and improved WMS hws layer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1855
diff changeset
144 + " AND name='" + getName() + "'";
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
145 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
146
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
147 @Override
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
148 protected String getDataString() {
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
149 String srid = getSrid();
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
150
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
151 if (FLYSUtils.isUsingOracle()) {
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
152 return "geom FROM hws_points USING SRID " + srid;
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
153 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
154 else {
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
155 return "geom FROM hws_points USING UNIQUE id USING SRID " + srid;
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
156 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
157 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
158
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
159 @Override
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
160 protected String getGeometryType() {
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
161 return "POINT";
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
162 }
5347
0b5c0c15b13f Split HWSArtifact into HWSPoints and HWSLines
Andre Heinecke <aheinecke@intevation.de>
parents: 5094
diff changeset
163 }
1855
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
164 }
b4798f15edc7 Added new WMSHwsArtifact for displaying flood protection works.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
165 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org