sascha@1218: package de.intevation.flys.importer; sascha@1218: sascha@1218: import de.intevation.flys.model.HYK; sascha@1218: import de.intevation.flys.model.River; sascha@1218: sascha@1218: import java.util.List; sascha@1218: import java.util.ArrayList; sascha@1218: sascha@1218: import org.hibernate.Session; sascha@1218: import org.hibernate.Query; sascha@1218: sascha@1218: public class ImportHYK sascha@1218: { sascha@1218: protected ImportRiver river; sascha@1218: protected String description; sascha@1218: sascha@1218: protected List entries; sascha@1218: sascha@1218: protected HYK peer; sascha@1218: sascha@1218: public ImportHYK() { sascha@1218: entries = new ArrayList(); sascha@1218: } sascha@1218: sascha@1218: public ImportHYK(ImportRiver river, String description) { sascha@1218: this(); sascha@1218: this.river = river; sascha@1218: this.description = description; sascha@1218: } sascha@1218: sascha@1219: public ImportRiver getRiver() { sascha@1219: return river; sascha@1219: } sascha@1219: sascha@1219: public void setRiver(ImportRiver river) { sascha@1219: this.river = river; sascha@1219: } sascha@1219: sascha@1218: public void addEntry(ImportHYKEntry entry) { sascha@1218: entries.add(entry); sascha@1218: entry.setHYK(this); sascha@1218: } sascha@1218: sascha@1218: public HYK getPeer() { sascha@1218: if (peer == null) { sascha@1218: River r = river.getPeer(); sascha@1218: Session session = ImporterSession.getInstance() sascha@1218: .getDatabaseSession(); sascha@1218: Query query = session.createQuery( sascha@1218: "from HYK where river=:river and description=:description"); sascha@1218: query.setParameter("river", r); sascha@1218: query.setParameter("description", description); sascha@1218: List hyks = query.list(); sascha@1218: if (hyks.isEmpty()) { sascha@1218: peer = new HYK(r, description); sascha@1218: session.save(peer); sascha@1218: } sascha@1218: else { sascha@1218: peer = hyks.get(0); sascha@1218: } sascha@1218: } sascha@1218: return peer; sascha@1218: } sascha@1218: } sascha@1218: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :