Mercurial > dive4elements > river
comparison flys-backend/src/main/java/de/intevation/flys/model/BedHeightEpoch.java @ 2875:444e52222941
Added lower and upper km to functions that return bed height singles and epochs for a given river.
flys-backend/trunk@4442 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Fri, 18 May 2012 12:31:26 +0000 |
parents | bcfdaa3a5bfc |
children | b9a99fcc78c3 |
comparison
equal
deleted
inserted
replaced
2874:3bca80af6918 | 2875:444e52222941 |
---|---|
161 public void setValues(List<BedHeightEpochValue> values) { | 161 public void setValues(List<BedHeightEpochValue> values) { |
162 this.values = values; | 162 this.values = values; |
163 } | 163 } |
164 | 164 |
165 | 165 |
166 public static List<BedHeightEpoch> getBedHeightEpochs(River river) { | 166 public static List<BedHeightEpoch> getBedHeightEpochs( |
167 River river, | |
168 double kmLo, | |
169 double kmHi | |
170 ) { | |
167 Session session = SessionHolder.HOLDER.get(); | 171 Session session = SessionHolder.HOLDER.get(); |
168 | 172 |
169 Query query = session.createQuery( | 173 Query query = session.createQuery( |
170 "from BedHeightEpoch where river=:river"); | 174 "from BedHeightEpoch where river=:river"); |
171 | 175 |
172 query.setParameter("river", river); | 176 query.setParameter("river", river); |
173 | 177 |
174 return query.list(); | 178 // TODO Do km range filtering in SQL statement |
179 | |
180 List<BedHeightEpoch> epochs = query.list(); | |
181 List<BedHeightEpoch> good = new ArrayList<BedHeightEpoch>(); | |
182 | |
183 for (BedHeightEpoch e: epochs) { | |
184 OUTER: | |
185 for (BedHeightEpochValue value: e.getValues()) { | |
186 double station = value.getStation().doubleValue(); | |
187 | |
188 if (station >= kmLo && station <= kmHi) { | |
189 good.add(e); | |
190 continue OUTER; | |
191 } | |
192 } | |
193 } | |
194 | |
195 return good; | |
175 } | 196 } |
176 | 197 |
177 | 198 |
178 public static BedHeightEpoch getBedHeightEpochById(int id) { | 199 public static BedHeightEpoch getBedHeightEpochById(int id) { |
179 Session session = SessionHolder.HOLDER.get(); | 200 Session session = SessionHolder.HOLDER.get(); |