# HG changeset patch # User Ingo Weinzierl # Date 1334907648 0 # Node ID 0d55b7722fae13faab460f99a62e0f1b2326dd9a # Parent 6be2bf2492f936a028774c8693e5b70e54ace288 Added new model classes for MINFO specific waterlevel data. flys-backend/trunk@4281 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r 6be2bf2492f9 -r 0d55b7722fae flys-backend/ChangeLog --- a/flys-backend/ChangeLog Fri Apr 20 06:59:03 2012 +0000 +++ b/flys-backend/ChangeLog Fri Apr 20 07:40:48 2012 +0000 @@ -1,3 +1,13 @@ +2012-04-20 Ingo Weinzierl + + * src/main/java/de/intevation/flys/model/WaterlevelQRange.java, + src/main/java/de/intevation/flys/model/WaterlevelValue.java, + src/main/java/de/intevation/flys/model/Waterlevel.java: New model + classes for MINFO specific waterlevel data. + + * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java: + Registered new model classes. + 2012-04-20 Ingo Weinzierl * doc/schema/oracle-minfo.sql, diff -r 6be2bf2492f9 -r 0d55b7722fae flys-backend/src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java --- a/flys-backend/src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java Fri Apr 20 06:59:03 2012 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java Fri Apr 20 07:40:48 2012 +0000 @@ -75,6 +75,9 @@ import de.intevation.flys.model.SedimentYieldValue; import de.intevation.flys.model.TimeInterval; import de.intevation.flys.model.Unit; +import de.intevation.flys.model.Waterlevel; +import de.intevation.flys.model.WaterlevelQRange; +import de.intevation.flys.model.WaterlevelValue; import de.intevation.flys.model.WstColumn; import de.intevation.flys.model.WstColumnQRange; import de.intevation.flys.model.WstColumnValue; @@ -284,6 +287,9 @@ cfg.addAnnotatedClass(SedimentYieldValue.class); cfg.addAnnotatedClass(TimeInterval.class); cfg.addAnnotatedClass(Unit.class); + cfg.addAnnotatedClass(Waterlevel.class); + cfg.addAnnotatedClass(WaterlevelQRange.class); + cfg.addAnnotatedClass(WaterlevelValue.class); cfg.addAnnotatedClass(WstColumn.class); cfg.addAnnotatedClass(WstColumnQRange.class); cfg.addAnnotatedClass(WstColumnValue.class); diff -r 6be2bf2492f9 -r 0d55b7722fae flys-backend/src/main/java/de/intevation/flys/model/Waterlevel.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/model/Waterlevel.java Fri Apr 20 07:40:48 2012 +0000 @@ -0,0 +1,113 @@ +package de.intevation.flys.model; + +import java.io.Serializable; +import java.util.List; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; +import javax.persistence.GeneratedValue; +import javax.persistence.Column; +import javax.persistence.SequenceGenerator; +import javax.persistence.GenerationType; +import javax.persistence.JoinColumn; +import javax.persistence.OneToOne; +import javax.persistence.OneToMany; + +import org.apache.log4j.Logger; + + + + +@Entity +@Table(name = "waterlevel") +public class Waterlevel +implements Serializable +{ + private static Logger logger = Logger.getLogger(Waterlevel.class); + + private Integer id; + + private River river; + + private Unit unit; + + private String description; + + private List qRanges; + + + public Waterlevel() { + } + + public Waterlevel(River river, Unit unit) { + this.river = river; + this.unit = unit; + } + + public Waterlevel(River river, Unit unit, String description) { + this(river, unit); + this.description = description; + } + + @Id + @SequenceGenerator( + name = "SEQUENCE_WATERLEVEL_ID_SEQ", + sequenceName = "WATERLEVEL_ID_SEQ", + allocationSize = 1) + @GeneratedValue( + strategy = GenerationType.SEQUENCE, + generator = "SEQUENCE_WATERLEVEL_ID_SEQ") + @Column(name = "id") + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + @OneToOne + @JoinColumn(name = "river_id" ) + public River getRiver() { + return river; + } + + public void setRiver(River river) { + this.river = river; + } + + @OneToOne + @JoinColumn(name = "unit_id") + public Unit getUnit() { + return unit; + } + + public void setUnit(Unit unit) { + this.unit = unit; + } + + @Column(name = "description") + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + @OneToMany + @JoinColumn(name="waterlevel_id") + public List getQRanges() { + return qRanges; + } + + public void setQRanges(List qRanges) { + this.qRanges = qRanges; + } + + public void addQRange(WaterlevelQRange qRange) { + qRanges.add(qRange); + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 6be2bf2492f9 -r 0d55b7722fae flys-backend/src/main/java/de/intevation/flys/model/WaterlevelQRange.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/model/WaterlevelQRange.java Fri Apr 20 07:40:48 2012 +0000 @@ -0,0 +1,100 @@ +package de.intevation.flys.model; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; +import javax.persistence.GeneratedValue; +import javax.persistence.Column; +import javax.persistence.SequenceGenerator; +import javax.persistence.GenerationType; +import javax.persistence.JoinColumn; +import javax.persistence.OneToOne; +import javax.persistence.OneToMany; + +import org.apache.log4j.Logger; + + + + +@Entity +@Table(name = "waterlevel_q_range") +public class WaterlevelQRange +implements Serializable +{ + private static Logger logger = Logger.getLogger(WaterlevelQRange.class); + + private Integer id; + + private Waterlevel waterlevel; + + private Double q; + + private List values; + + + public WaterlevelQRange() { + this.values = new ArrayList(); + } + + public WaterlevelQRange(Waterlevel waterlevel, Double q) { + this(); + this.q = q; + this.waterlevel = waterlevel; + } + + + @Id + @SequenceGenerator( + name = "SEQUENCE_WATERLEVEL_Q_RANGE_ID_SEQ", + sequenceName = "WATERLEVEL_Q_RANGES_ID_SEQ", + allocationSize = 1) + @GeneratedValue( + strategy = GenerationType.SEQUENCE, + generator = "SEQUENCE_WATERLEVEL_Q_RANGE_ID_SEQ") + @Column(name = "id") + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + @OneToOne + @JoinColumn(name = "waterlevel_id" ) + public Waterlevel getWaterlevel() { + return waterlevel; + } + + public void setWaterlevel(Waterlevel waterlevel) { + this.waterlevel = waterlevel; + } + + @Column(name = "q") + public Double getQ() { + return q; + } + + public void setQ(Double q) { + this.q = q; + } + + @OneToMany + @Column(name = "waterlevel_q_range_id") + public List getValues() { + return values; + } + + public void setValues(List values) { + this.values = values; + } + + public void addValue(WaterlevelValue value) { + values.add(value); + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 6be2bf2492f9 -r 0d55b7722fae flys-backend/src/main/java/de/intevation/flys/model/WaterlevelValue.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/model/WaterlevelValue.java Fri Apr 20 07:40:48 2012 +0000 @@ -0,0 +1,90 @@ +package de.intevation.flys.model; + +import java.io.Serializable; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; +import javax.persistence.GeneratedValue; +import javax.persistence.Column; +import javax.persistence.SequenceGenerator; +import javax.persistence.GenerationType; +import javax.persistence.JoinColumn; +import javax.persistence.OneToOne; + +import org.apache.log4j.Logger; + + + + +@Entity +@Table(name = "waterlevel_values") +public class WaterlevelValue +implements Serializable +{ + private static Logger logger = Logger.getLogger(WaterlevelValue.class); + + private Integer id; + + private WaterlevelQRange qRange; + + private Double station; + private Double w; + + + public WaterlevelValue() { + } + + public WaterlevelValue(WaterlevelQRange qRange, Double station, Double w) { + this.qRange = qRange; + this.station = station; + this.w = w; + } + + + @Id + @SequenceGenerator( + name = "SEQUENCE_WATERLEVEL_VALUES_ID_SEQ", + sequenceName = "WATERLEVEL_VALUES_ID_SEQ", + allocationSize = 1) + @GeneratedValue( + strategy = GenerationType.SEQUENCE, + generator = "SEQUENCE_WATERLEVEL_VALUES_ID_SEQ") + @Column(name = "id") + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + @OneToOne + @JoinColumn(name = "waterlevel_q_range_id" ) + public WaterlevelQRange getQRange() { + return qRange; + } + + public void setQRange(WaterlevelQRange qRange) { + this.qRange = qRange; + } + + @Column(name = "station") + public Double getStation() { + return station; + } + + public void setStation(Double station) { + this.station = station; + } + + @Column(name = "w") + public Double getW() { + return w; + } + + public void setW(Double w) { + this.w = w; + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :