Mercurial > dive4elements > river
diff flys-backend/src/main/java/de/intevation/flys/importer/ImportWst.java @ 2346:f834b411ca57
Added db table, model class and importer stuff for units.
flys-backend/trunk@2877 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 04 Oct 2011 06:47:00 +0000 |
parents | bcc18293a547 |
children | 0acf28a3d28a |
line wrap: on
line diff
--- a/flys-backend/src/main/java/de/intevation/flys/importer/ImportWst.java Tue Oct 04 05:06:10 2011 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/importer/ImportWst.java Tue Oct 04 06:47:00 2011 +0000 @@ -2,6 +2,7 @@ import de.intevation.flys.model.Wst; import de.intevation.flys.model.River; +import de.intevation.flys.model.Unit; import org.apache.log4j.Logger; @@ -21,6 +22,8 @@ protected List<ImportWstColumn> columns; + protected ImportUnit unit; + protected Wst peer; public ImportWst() { @@ -64,6 +67,10 @@ return columns.get(index); } + public void setUnit(ImportUnit unit) { + this.unit = unit; + } + public void storeDependencies(River river) { log.info("store '" + description + "'"); @@ -72,12 +79,16 @@ for (ImportWstColumn column: columns) { column.storeDependencies(river); } + + unit.storeDependencies(river); + Session session = ImporterSession.getInstance().getDatabaseSession(); session.flush(); } public Wst getPeer(River river) { if (peer == null) { + Unit u = unit.getPeer(river); Session session = ImporterSession.getInstance().getDatabaseSession(); Query query = session.createQuery( "from Wst where " + @@ -87,7 +98,7 @@ query.setParameter("kind", kind); List<Wst> wsts = query.list(); if (wsts.isEmpty()) { - peer = new Wst(river, description, kind); + peer = new Wst(river, description, kind, u); session.save(peer); } else {