Mercurial > dive4elements > river
diff 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 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/model/WstColumnFactory.java Wed Mar 28 17:03:11 2018 +0200 @@ -0,0 +1,41 @@ +/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde + * Software engineering by + * Björnsen Beratende Ingenieure GmbH + * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt + * + * This file is Free Software under the GNU AGPL (>=v3) + * and comes with ABSOLUTELY NO WARRANTY! Check out the + * documentation coming with Dive4Elements River for details. + */ +package org.dive4elements.river.artifacts.model; + +import java.util.List; + +import org.dive4elements.river.backend.SessionHolder; +import org.dive4elements.river.model.Wst; +import org.dive4elements.river.model.WstColumn; +import org.hibernate.Query; +import org.hibernate.Session; + +/** + * @author Gernot Belger + */ +public final class WstColumnFactory { + private WstColumnFactory() { + throw new UnsupportedOperationException("helper class"); + } + + public static WstColumn getWstColumn(final int wst_id, final int columnPosition) { + final Session session = SessionHolder.HOLDER.get(); + + final Wst wst = WstFactory.getWst(wst_id); + + final Query query = session.createQuery("from WstColumn where wst=:wst_id and position = :position"); + query.setParameter("wst_id", wst); + query.setInteger("position", columnPosition); + + final List<WstColumn> columns = query.list(); + + return columns.isEmpty() ? null : columns.get(0); + } +} \ No newline at end of file