Mercurial > dive4elements > river
diff backend/src/main/java/org/dive4elements/river/importer/ImportBedHeightType.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/ImportBedHeightType.java Tue Apr 03 10:29:57 2018 +0200 +++ b/backend/src/main/java/org/dive4elements/river/importer/ImportBedHeightType.java Tue Apr 03 10:37:30 2018 +0200 @@ -11,29 +11,27 @@ import java.util.List; import org.apache.log4j.Logger; - +import org.dive4elements.river.model.BedHeightType; +import org.hibernate.Query; import org.hibernate.Session; -import org.hibernate.Query; - -import org.dive4elements.river.model.BedHeightType; public class ImportBedHeightType { private static final Logger log = - Logger.getLogger(ImportBedHeightType.class); + Logger.getLogger(ImportBedHeightType.class); protected String name; protected BedHeightType peer; - public ImportBedHeightType(BedHeightType peer) { + public ImportBedHeightType(final BedHeightType peer) { this.peer = peer; - name = peer.getName(); + this.name = peer.getName(); } - public ImportBedHeightType(String name) { + public ImportBedHeightType(final String name) { this.name = name; } @@ -44,27 +42,19 @@ public BedHeightType getPeer() { - if (peer == null) { - Session session = ImporterSession.getInstance() - .getDatabaseSession(); - - Query query = session.createQuery("from BedHeightType " - + "where name=:name and description=:description"); - - query.setParameter("name", name); - - List<BedHeightType> types = query.list(); - - if (types.isEmpty()) { - peer = new BedHeightType(name); - session.save(peer); - } - else { - peer = types.get(0); - } + if (this.peer != null) + return this.peer; + final Session session = ImporterSession.getInstance().getDatabaseSession(); + final Query query = session.createQuery("FROM BedHeightType WHERE (trim(name)=:name) AND (trim(description)=:description)"); + query.setParameter("name", this.name); + final List<BedHeightType> types = query.list(); + if (types.isEmpty()) { + this.peer = new BedHeightType(this.name); + session.save(this.peer); + } else { + this.peer = types.get(0); } - - return peer; + return this.peer; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :