Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/shared/model/WMSLayer.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 | ea2aae01e7c4 |
children |
rev | line source |
---|---|
1411
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.shared.model; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
3 import java.io.Serializable; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
4 import java.util.ArrayList; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
5 import java.util.List; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
6 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
7 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
8 public class WMSLayer implements Serializable { |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
9 |
1414
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
10 protected String server; |
1411
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 protected String name; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
12 protected String title; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 |
1417
42d6cf6e10b7
Moved code to parse WMS Capabilities to an own class 'CapabilitiesParser' and added code to parse SRS definitions.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1414
diff
changeset
|
14 protected List<String> srs; |
1411
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
15 protected List<WMSLayer> layers; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
16 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
17 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
18 public WMSLayer() { |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
19 layers = new ArrayList<WMSLayer>(); |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
20 } |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
21 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 |
1414
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
23 /** |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
24 * @param server |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
25 * @param title |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
26 * @param name |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
27 * @param layers |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
28 */ |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
29 public WMSLayer( |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
30 String server, |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
31 String title, |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
32 String name, |
1417
42d6cf6e10b7
Moved code to parse WMS Capabilities to an own class 'CapabilitiesParser' and added code to parse SRS definitions.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1414
diff
changeset
|
33 List<String> srs, |
1414
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
34 List<WMSLayer> layers |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
35 ) { |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
36 this.server = server; |
1411
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
37 this.title = title; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 this.name = name; |
1417
42d6cf6e10b7
Moved code to parse WMS Capabilities to an own class 'CapabilitiesParser' and added code to parse SRS definitions.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1414
diff
changeset
|
39 this.srs = srs; |
1411
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 this.layers = layers; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 } |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
43 |
1414
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
44 public String getServer() { |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
45 return server; |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
46 } |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
47 |
3484cbfaf369
Create new Artifacts for selected WMS layers of the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1411
diff
changeset
|
48 |
1411
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
49 public String getName() { |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 return name; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 } |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
53 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 public String getTitle() { |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
55 return title; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
56 } |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
57 |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
58 |
1417
42d6cf6e10b7
Moved code to parse WMS Capabilities to an own class 'CapabilitiesParser' and added code to parse SRS definitions.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1414
diff
changeset
|
59 public List<String> getSrs() { |
42d6cf6e10b7
Moved code to parse WMS Capabilities to an own class 'CapabilitiesParser' and added code to parse SRS definitions.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1414
diff
changeset
|
60 return srs; |
42d6cf6e10b7
Moved code to parse WMS Capabilities to an own class 'CapabilitiesParser' and added code to parse SRS definitions.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1414
diff
changeset
|
61 } |
42d6cf6e10b7
Moved code to parse WMS Capabilities to an own class 'CapabilitiesParser' and added code to parse SRS definitions.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1414
diff
changeset
|
62 |
42d6cf6e10b7
Moved code to parse WMS Capabilities to an own class 'CapabilitiesParser' and added code to parse SRS definitions.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1414
diff
changeset
|
63 |
1411
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
64 public List<WMSLayer> getLayers() { |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
65 return layers; |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
66 } |
1418
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
67 |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
68 |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
69 public boolean supportsSrs(String srs) { |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
70 if (this.srs == null || this.srs.size() == 0) { |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
71 return true; |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
72 } |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
73 |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
74 if (!srs.startsWith("EPSG:")) { |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
75 srs = "EPSG:" + srs; |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
76 } |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
77 |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
78 return this.srs.contains(srs); |
750a53950e9f
The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1417
diff
changeset
|
79 } |
1487
ea2aae01e7c4
Improved CapabilitiesParser to test WMS using its main() method.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1418
diff
changeset
|
80 |
ea2aae01e7c4
Improved CapabilitiesParser to test WMS using its main() method.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1418
diff
changeset
|
81 |
ea2aae01e7c4
Improved CapabilitiesParser to test WMS using its main() method.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1418
diff
changeset
|
82 @Override |
ea2aae01e7c4
Improved CapabilitiesParser to test WMS using its main() method.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1418
diff
changeset
|
83 public String toString() { |
ea2aae01e7c4
Improved CapabilitiesParser to test WMS using its main() method.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1418
diff
changeset
|
84 return "WMS Layer: " + title + " (" + name + ") " + server; |
ea2aae01e7c4
Improved CapabilitiesParser to test WMS using its main() method.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1418
diff
changeset
|
85 } |
1411
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
86 } |
63be3137abac
Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
87 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |