comparison artifacts/src/main/java/org/dive4elements/river/artifacts/model/sq/MeasurementFactory.java @ 8566:fe7e9da6312a

(issue1797) Move close into session release and guard it. To avoid leaking open and Held sessions we centrally close the session in the SessionHolder on release. This also removes some duplicated code in SedDBSessionHolder
author Andre Heinecke <andre.heinecke@intevation.de>
date Tue, 24 Feb 2015 17:16:14 +0100
parents 84929f882fa2
children 2e11fc7f5d35
comparison
equal deleted inserted replaced
8565:ea17665c5aad 8566:fe7e9da6312a
256 double location, 256 double location,
257 DateRange dateRange, 257 DateRange dateRange,
258 SQ.Factory sqFactory 258 SQ.Factory sqFactory
259 ) { 259 ) {
260 Session session = SedDBSessionHolder.HOLDER.get(); 260 Session session = SedDBSessionHolder.HOLDER.get();
261 try { 261 List<Measurement> totals = loadTotals(
262 List<Measurement> totals = loadTotals( 262 session, river, location, dateRange);
263 session, river, location, dateRange); 263
264 264 List<Measurement> accumulated = loadFractions(
265 List<Measurement> accumulated = loadFractions( 265 session, river, location, dateRange);
266 session, river, location, dateRange); 266
267 267 return new Measurements(totals, accumulated, sqFactory);
268 return new Measurements(totals, accumulated, sqFactory);
269 }
270 finally {
271 session.close();
272 }
273 } 268 }
274 269
275 @SuppressWarnings("unchecked") 270 @SuppressWarnings("unchecked")
276 protected static List<Measurement> loadTotals( 271 protected static List<Measurement> loadTotals(
277 Session session, 272 Session session,

http://dive4elements.wald.intevation.org