comparison artifacts/src/main/java/org/dive4elements/river/artifacts/model/CollisionHibernateFactory.java @ 9074:766890addcb2

state To client communication;
author gernotbelger
date Fri, 18 May 2018 17:26:26 +0200
parents
children
comparison
equal deleted inserted replaced
9073:cd650cacc926 9074:766890addcb2
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
2 * Software engineering by
3 * Björnsen Beratende Ingenieure GmbH
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
5 *
6 * This file is Free Software under the GNU AGPL (>=v3)
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
8 * documentation coming with Dive4Elements River for details.
9 */
10 package org.dive4elements.river.artifacts.model;
11
12 import java.util.ArrayList;
13 import java.util.Iterator;
14 import java.util.List;
15
16 import org.dive4elements.river.backend.SessionHolder;
17 import org.dive4elements.river.model.River;
18 import org.dive4elements.river.model.sinfo.Collision;
19 import org.hibernate.HibernateException;
20 import org.hibernate.Query;
21 import org.hibernate.Session;
22 import org.hibernate.Transaction;
23
24 /**
25 * @author Domenico Nardi Tironi
26 *
27 */
28 public class CollisionHibernateFactory {
29
30 public static List<Collision> getCollisionsByRiver(final River river) {
31 final String queryStr = "FROM Collision WHERE river_id = :river_id";
32
33 final List<Collision> list = new ArrayList<>();
34
35 final Session session = SessionHolder.HOLDER.get();
36 try {
37 final Transaction transaction = session.beginTransaction();
38
39 final Query query = session.createQuery(queryStr);
40 query.setParameter("river_id", river.getId());
41
42 final List<Collision> collisions = query.list();
43 final Iterator<Collision> iterator = collisions.iterator();
44 while (iterator.hasNext()) {
45 final Collision coll = iterator.next();
46 // final CollisionHibernateFactory factory = new CollisionHibernateFactory(coll.getId(), coll.getYear());
47 list.add(coll);
48 }
49 transaction.commit(); // komisch, dass die Iteration davor im Code steht...
50 }
51 catch (final HibernateException e) {
52 e.printStackTrace();
53 }
54 return list;
55 }
56
57 }

http://dive4elements.wald.intevation.org