Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/WMSHydrBoundaryPolyArtifact.java @ 5540:25c2505df28f
Merged
author | Christian Lins <christian.lins@intevation.de> |
---|---|
date | Wed, 03 Apr 2013 16:00:21 +0200 |
parents | 87dab419b924 |
children |
comparison
equal
deleted
inserted
replaced
5539:8d0af912351c | 5540:25c2505df28f |
---|---|
100 return FLYSUtils.getRiverSrid(river.getName()); | 100 return FLYSUtils.getRiverSrid(river.getName()); |
101 } | 101 } |
102 | 102 |
103 @Override | 103 @Override |
104 protected Envelope getExtent(boolean reproject) { | 104 protected Envelope getExtent(boolean reproject) { |
105 List<HydrBoundaryPoly> boundaries = HydrBoundaryPoly.getHydrBoundaries( | 105 String kind = getIdPart(2); |
106 getRiverId(), getName()); | 106 String sectie = getIdPart(3); |
107 String sobek = getIdPart(4); | |
108 int kindId = -1; | |
109 int sectieId = -1; | |
110 int sobekId = -1; | |
111 | |
112 if (kind != null) { | |
113 kindId = Integer.parseInt(kind); | |
114 } | |
115 if (sectie != null && !sectie.equals("-1")) { | |
116 sectieId = Integer.parseInt(sectie); | |
117 } | |
118 if (sobek != null && !sobek.equals("-1")) { | |
119 sobekId = Integer.parseInt(sobek); | |
120 } | |
121 | |
122 List<HydrBoundaryPoly> boundaries; | |
123 if (kindId == -1 && sobekId == -1 && sectieId == -1) { | |
124 boundaries = HydrBoundaryPoly.getHydrBoundaries( | |
125 getRiverId(), getName()); | |
126 } else { | |
127 boundaries = HydrBoundaryPoly.getHydrBoundaries( | |
128 getRiverId(), kindId, sectieId, sobekId); | |
129 } | |
107 | 130 |
108 Envelope max = null; | 131 Envelope max = null; |
109 | 132 |
110 for (HydrBoundaryPoly b: boundaries) { | 133 for (HydrBoundaryPoly b: boundaries) { |
111 Envelope env = b.getGeom().getEnvelopeInternal(); | 134 Envelope env = b.getGeom().getEnvelopeInternal(); |
123 : max; | 146 : max; |
124 } | 147 } |
125 | 148 |
126 @Override | 149 @Override |
127 protected String getFilter() { | 150 protected String getFilter() { |
151 // Expected id string: | |
152 // river_id;layer_name;kind;sectie;sobek | |
153 String kind = getIdPart(2); | |
154 String sectie = getIdPart(3); | |
155 String sobek = getIdPart(4); | |
156 | |
157 String filter = ""; | |
158 if (kind != null && !kind.equals("-1")) { | |
159 filter += " AND kind = " + kind; | |
160 } | |
161 if (sectie != null && !sectie.equals("-1")) { | |
162 filter += " AND sectie = " + sectie; | |
163 } | |
164 if (sobek != null && !sobek.equals("-1")) { | |
165 filter += " AND sobek = " + sobek; | |
166 } | |
167 | |
168 if (filter.isEmpty()) { | |
169 filter = " AND name='" + getName() + "'"; | |
170 } | |
171 | |
128 return "river_id=" + String.valueOf(getRiverId()) | 172 return "river_id=" + String.valueOf(getRiverId()) |
129 + " AND name='" + getName() + "'"; | 173 + filter; |
130 } | 174 } |
131 | 175 |
132 @Override | 176 @Override |
133 protected String getDataString() { | 177 protected String getDataString() { |
134 String srid = getSrid(); | 178 String srid = getSrid(); |
135 | 179 |
136 if (FLYSUtils.isUsingOracle()) { | 180 if (FLYSUtils.isUsingOracle()) { |
137 return "geom FROM hydr_boundaries USING SRID " + srid; | 181 return "geom FROM hydr_boundaries_poly USING SRID " + srid; |
138 } | 182 } |
139 else { | 183 else { |
140 return "geom FROM hydr_boundaries USING UNIQUE id USING SRID " + srid; | 184 return "geom FROM hydr_boundaries_poly USING UNIQUE id USING SRID " + srid; |
141 } | 185 } |
142 } | 186 } |
143 | 187 |
144 @Override | 188 @Override |
145 protected String getGeometryType() { | 189 protected String getGeometryType() { |