mschaefer@9014: /* Copyright (C) 2017 by Bundesanstalt für Gewässerkunde mschaefer@9014: * Software engineering by mschaefer@9014: * Björnsen Beratende Ingenieure GmbH mschaefer@9014: * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt mschaefer@9014: * mschaefer@9014: * This file is Free Software under the GNU AGPL (>=v3) mschaefer@9014: * and comes with ABSOLUTELY NO WARRANTY! Check out the mschaefer@9014: * documentation coming with Dive4Elements River for details. mschaefer@9014: */ mschaefer@9014: mschaefer@9014: package org.dive4elements.river.importer.uinfo.importitem; mschaefer@9014: mschaefer@9014: import java.util.List; mschaefer@9014: mschaefer@9014: import org.apache.log4j.Logger; mschaefer@9014: import org.dive4elements.river.importer.common.AbstractSeriesImport; mschaefer@9014: import org.dive4elements.river.model.River; mschaefer@9014: import org.dive4elements.river.model.uinfo.Vegetation; mschaefer@9014: import org.dive4elements.river.model.uinfo.VegetationZone; mschaefer@9014: import org.hibernate.Query; mschaefer@9014: import org.hibernate.Session; mschaefer@9014: mschaefer@9014: /** mschaefer@9014: * Imported vegetation data series of a river mschaefer@9014: * mschaefer@9014: * @author Matthias Schäfer mschaefer@9014: * mschaefer@9014: */ mschaefer@9014: public class VegetationSeriesImport extends AbstractSeriesImport { mschaefer@9014: mschaefer@9014: /***** FIELDS *****/ mschaefer@9014: mschaefer@9014: private static Logger log = Logger.getLogger(VegetationSeriesImport.class); mschaefer@9014: mschaefer@9014: private String name; mschaefer@9014: mschaefer@9014: mschaefer@9014: /***** CONSTRUCTORS *****/ mschaefer@9014: mschaefer@9014: public VegetationSeriesImport(final String filename) { mschaefer@9014: super(filename); mschaefer@9014: } mschaefer@9014: mschaefer@9014: mschaefer@9014: /***** METHODS *****/ mschaefer@9014: mschaefer@9014: public void setName(final String name) { mschaefer@9014: this.name = name; mschaefer@9014: } mschaefer@9014: mschaefer@9014: @Override mschaefer@9014: public Logger getLog() { mschaefer@9014: return log; mschaefer@9014: } mschaefer@9014: mschaefer@9014: @Override mschaefer@9014: public List querySeriesItem(final Session session, final River river) { mschaefer@9014: final Query query = session.createQuery("FROM Vegetation WHERE river=:river AND lower(filename)=:filename"); mschaefer@9014: query.setParameter("river", river); mschaefer@9014: query.setParameter("filename", this.filename.toLowerCase()); mschaefer@9014: return query.list(); mschaefer@9014: } mschaefer@9014: mschaefer@9014: mschaefer@9014: @Override mschaefer@9014: public Vegetation createSeriesItem(final River river) { mschaefer@9038: return new Vegetation(river, this.filename, this.name, this.notes); mschaefer@9014: } mschaefer@9014: }