view 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 source
/** 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);
    }
}

http://dive4elements.wald.intevation.org