sascha@486: package de.intevation.flys.importer; sascha@486: sascha@486: import de.intevation.flys.model.TimeInterval; sascha@486: sascha@486: import org.hibernate.Session; sascha@486: import org.hibernate.Query; sascha@486: sascha@486: import java.util.List; sascha@486: import java.util.Date; sascha@486: sascha@493: import org.apache.log4j.Logger; sascha@493: sascha@486: public class ImportTimeInterval sascha@486: { sascha@493: private static Logger log = Logger.getLogger(ImportTimeInterval.class); sascha@493: sascha@486: protected Date startTime; sascha@486: protected Date stopTime; sascha@486: sascha@486: protected TimeInterval peer; sascha@486: sascha@486: public ImportTimeInterval() { sascha@486: } sascha@486: sascha@486: public ImportTimeInterval(Date startTime, Date stopTime) { sascha@486: this.startTime = startTime; sascha@486: this.stopTime = stopTime; sascha@486: } sascha@486: sascha@486: public Date getStartTime() { sascha@486: return startTime; sascha@486: } sascha@486: sascha@486: public void setStartTime(Date startTime) { sascha@486: this.startTime = startTime; sascha@486: } sascha@486: sascha@486: public Date getStopTime() { sascha@486: return stopTime; sascha@486: } sascha@486: sascha@486: public void setStopTime(Date stopTime) { sascha@486: this.stopTime = stopTime; sascha@486: } sascha@486: sascha@486: public TimeInterval getPeer() { sascha@493: if (peer == null) { sascha@497: Session session = ImporterSession.getInstance().getDatabaseSession(); sascha@486: Query query = session.createQuery( sascha@486: "from TimeInterval where startTime=:a and stopTime=:b"); sascha@486: query.setParameter("a", startTime); sascha@486: query.setParameter("b", stopTime); sascha@486: List intervals = query.list(); sascha@486: if (intervals.isEmpty()) { sascha@486: peer = new TimeInterval(startTime, stopTime); sascha@486: session.save(peer); sascha@486: } sascha@487: else { sascha@487: peer = intervals.get(0); sascha@487: } sascha@486: } sascha@486: return peer; sascha@486: } sascha@486: } sascha@486: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :