Mercurial > dive4elements > river
annotate flys-artifacts/src/main/java/de/intevation/flys/artifacts/WMSHWSPointsArtifact.java @ 5462:f2371f3aaf03
Show top level folder icons only if node has no factory
If you have an empty folder the folder icon is still shown.
This makes it possible to add functional "Top Level" entries
in the Datacage
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Tue, 26 Mar 2013 18:29:13 +0100 |
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 : |