annotate artifacts/src/main/java/org/dive4elements/river/artifacts/model/WstColumnFactory.java @ 8962:708f210ff242

Fetching year informations for waterlevels used in sinfo
author gernotbelger
date Wed, 28 Mar 2018 17:03:11 +0200
parents
children
rev   line source
8962
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
2 * Software engineering by
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
5 *
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
9 */
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
10 package org.dive4elements.river.artifacts.model;
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
11
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
12 import java.util.List;
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
13
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
14 import org.dive4elements.river.backend.SessionHolder;
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
15 import org.dive4elements.river.model.Wst;
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
16 import org.dive4elements.river.model.WstColumn;
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
17 import org.hibernate.Query;
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
18 import org.hibernate.Session;
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
19
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
20 /**
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
21 * @author Gernot Belger
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
22 */
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
23 public final class WstColumnFactory {
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
24 private WstColumnFactory() {
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
25 throw new UnsupportedOperationException("helper class");
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
26 }
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
27
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
28 public static WstColumn getWstColumn(final int wst_id, final int columnPosition) {
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
29 final Session session = SessionHolder.HOLDER.get();
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
30
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
31 final Wst wst = WstFactory.getWst(wst_id);
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
32
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
33 final Query query = session.createQuery("from WstColumn where wst=:wst_id and position = :position");
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
34 query.setParameter("wst_id", wst);
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
35 query.setInteger("position", columnPosition);
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
36
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
37 final List<WstColumn> columns = query.list();
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
38
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
39 return columns.isEmpty() ? null : columns.get(0);
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
40 }
708f210ff242 Fetching year informations for waterlevels used in sinfo
gernotbelger
parents:
diff changeset
41 }

http://dive4elements.wald.intevation.org