Mercurial > dive4elements > river
view backend/src/main/java/org/dive4elements/river/importer/sinfo/importitem/DailyDischargeDayLineImport.java @ 9032:1f63e9d3b0ec
New columns for bed_height, tkh and depth_evolution, a few syntactic corrections for Oracle
author | mschaefer |
---|---|
date | Fri, 27 Apr 2018 17:35:12 +0200 |
parents | 50416a0df385 |
children | d86c7cb68b41 |
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.importer.sinfo.importitem; import java.util.Date; import java.util.List; import org.dive4elements.river.importer.common.AbstractKmLineImport; import org.dive4elements.river.model.sinfo.DailyDischarge; import org.dive4elements.river.model.sinfo.DailyDischargeValue; import org.hibernate.Query; import org.hibernate.Session; /** * Imported daily discharge of a gauge. * * @author Matthias Schäfer * */ public class DailyDischargeDayLineImport extends AbstractKmLineImport<DailyDischarge, DailyDischargeValue> { /***** FIELDS *****/ private final Date day; private final Double discharge; /***** CONSTRUCTOR *****/ public DailyDischargeDayLineImport(final Date day, final Double discharge) { super(Double.NaN); this.day = day; this.discharge = discharge; } /***** METHODS *****/ @Override protected DailyDischargeValue queryValueItem(final Session session, final DailyDischarge parent) { final Query query = session.createQuery("FROM DailyDischargeValue WHERE (DailyDischarge=:parent) AND (day=:day)"); query.setParameter("parent", parent); query.setParameter("day", this.day); final List rows = query.list(); if (!rows.isEmpty()) return (DailyDischargeValue) rows.get(0); else return null; } @Override protected DailyDischargeValue createValueItem(final DailyDischarge parent) { return new DailyDischargeValue(parent, this.day, this.discharge); } }