Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/WMSBuildingsArtifact.java @ 2683:f5af3adb3b95
Improved datacage configuration for floodmaps and maps and modified the WMS layer artifacts to support names for layers.
flys-artifacts/trunk@4383 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Thu, 10 May 2012 11:14:17 +0000 |
parents | 257f7b54a943 |
children | 0ca00d547f35 |
comparison
equal
deleted
inserted
replaced
2682:0795c296f718 | 2683:f5af3adb3b95 |
---|---|
82 public BuildingsState(WMSDBArtifact artifact) { | 82 public BuildingsState(WMSDBArtifact artifact) { |
83 super(artifact); | 83 super(artifact); |
84 riverId = 0; | 84 riverId = 0; |
85 } | 85 } |
86 | 86 |
87 public int getRiverId() { | |
88 if (riverId == 0) { | |
89 String ids = artifact.getDataAsString("ids"); | |
90 | |
91 try { | |
92 riverId = Integer.valueOf(ids); | |
93 } | |
94 catch (NumberFormatException nfe) { | |
95 logger.error("Cannot parse river id from '" + ids + "'"); | |
96 } | |
97 } | |
98 | |
99 return riverId; | |
100 } | |
101 | |
102 @Override | 87 @Override |
103 protected String getFacetType() { | 88 protected String getFacetType() { |
104 return FLOODMAP_BUILDINGS; | 89 return FLOODMAP_BUILDINGS; |
105 } | |
106 | |
107 @Override | |
108 protected String getTitle(CallMeta meta) { | |
109 return Resources.getMsg( | |
110 meta, | |
111 FLOODMAP_BUILDINGS, | |
112 FLOODMAP_BUILDINGS); | |
113 } | 90 } |
114 | 91 |
115 @Override | 92 @Override |
116 protected String getUrl() { | 93 protected String getUrl() { |
117 return FLYSUtils.getUserWMSUrl(artifact.identifier()); | 94 return FLYSUtils.getUserWMSUrl(artifact.identifier()); |
123 return FLYSUtils.getRiverSrid(river.getName()); | 100 return FLYSUtils.getRiverSrid(river.getName()); |
124 } | 101 } |
125 | 102 |
126 @Override | 103 @Override |
127 protected Envelope getExtent() { | 104 protected Envelope getExtent() { |
128 List<Building> buildings = Building.getBuildings(getRiverId()); | 105 List<Building> buildings = |
106 Building.getBuildings(getRiverId(), getName()); | |
129 | 107 |
130 Envelope max = null; | 108 Envelope max = null; |
131 | 109 |
132 for (Building b: buildings) { | 110 for (Building b: buildings) { |
133 Envelope env = b.getGeom().getEnvelopeInternal(); | 111 Envelope env = b.getGeom().getEnvelopeInternal(); |
143 return max; | 121 return max; |
144 } | 122 } |
145 | 123 |
146 @Override | 124 @Override |
147 protected String getFilter() { | 125 protected String getFilter() { |
148 return "river_id=" + String.valueOf(getRiverId()); | 126 return "river_id=" + String.valueOf(getRiverId()) + |
127 " AND name='" + getName() + "'"; | |
149 } | 128 } |
150 | 129 |
151 @Override | 130 @Override |
152 protected String getDataString() { | 131 protected String getDataString() { |
153 String srid = getSrid(); | 132 String srid = getSrid(); |