Mercurial > dive4elements > river
diff backend/src/main/java/org/dive4elements/river/importer/ImportElevationModel.java @ 8974:a275ddf7a3a1
Added some trim and lowercase in the where clauses of the selects of existing recordsets; added AnnotationType select
author | mschaefer |
---|---|
date | Tue, 03 Apr 2018 10:37:30 +0200 |
parents | 5e38e2924c07 |
children |
line wrap: on
line diff
--- a/backend/src/main/java/org/dive4elements/river/importer/ImportElevationModel.java Tue Apr 03 10:29:57 2018 +0200 +++ b/backend/src/main/java/org/dive4elements/river/importer/ImportElevationModel.java Tue Apr 03 10:37:30 2018 +0200 @@ -11,17 +11,15 @@ import java.util.List; import org.apache.log4j.Logger; - +import org.dive4elements.river.model.ElevationModel; +import org.hibernate.Query; import org.hibernate.Session; -import org.hibernate.Query; - -import org.dive4elements.river.model.ElevationModel; public class ImportElevationModel { private static final Logger log = - Logger.getLogger(ImportElevationModel.class); + Logger.getLogger(ImportElevationModel.class); protected String name; @@ -30,44 +28,40 @@ protected ElevationModel peer; - public ImportElevationModel(String name, ImportUnit unit) { + public ImportElevationModel(final String name, final ImportUnit unit) { this.name = name; this.unit = unit; } public void storeDependencies() { - ElevationModel model = getPeer(); + final ElevationModel model = getPeer(); } public ElevationModel getPeer() { - if (unit == null) { + if (this.unit == null) { log.warn("No elevation model specified."); return null; } - - if (peer == null) { - Session session = ImporterSession.getInstance() - .getDatabaseSession(); - Query query = session.createQuery( - "from ElevationModel where " + - "name=:name and unit=:unit"); - query.setParameter("name", name); - query.setParameter("unit", unit.getPeer()); - List<ElevationModel> models = query.list(); + if (this.peer != null) + return this.peer; - if (models.isEmpty()) { - log.info("Create new ElevationModel DB instance."); + final Session session = ImporterSession.getInstance().getDatabaseSession(); + final Query query = session.createQuery("FROM ElevationModel WHERE (trim(name)=:name) AND (unit=:unit)"); + query.setParameter("name", this.name); + query.setParameter("unit", this.unit.getPeer()); + final List<ElevationModel> models = query.list(); - peer = new ElevationModel(name, unit.getPeer()); - session.save(peer); - } - else { - peer = models.get(0); - } + if (models.isEmpty()) { + log.info("Create new ElevationModel DB instance."); + + this.peer = new ElevationModel(this.name, this.unit.getPeer()); + session.save(this.peer); } - - return peer; + else { + this.peer = models.get(0); + } + return this.peer; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :