# HG changeset patch # User Ingo Weinzierl # Date 1320161438 0 # Node ID 9df06b88c079cc1e67f50cdcd43b321a04813214 # Parent 33062484cc565bc89185075a23162e9d12d04bd1 Added model class for relation 'river_axes_km'. flys-backend/trunk@3133 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r 33062484cc56 -r 9df06b88c079 flys-backend/ChangeLog --- a/flys-backend/ChangeLog Tue Oct 25 15:19:56 2011 +0000 +++ b/flys-backend/ChangeLog Tue Nov 01 15:30:38 2011 +0000 @@ -1,3 +1,11 @@ +2011-11-01 Ingo Weinzierl + + * src/main/java/de/intevation/flys/model/RiverAxisKm.java: New. Model class + for 'river_axes_km' relation. + + * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java: + Added mapping for RiverAxisKm. + 2011-10-25 Bjoern Schilberg * doc/schema/oracle_create_user.sql: diff -r 33062484cc56 -r 9df06b88c079 flys-backend/src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java --- a/flys-backend/src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java Tue Oct 25 15:19:56 2011 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java Tue Nov 01 15:30:38 2011 +0000 @@ -47,6 +47,7 @@ import de.intevation.flys.model.Range; import de.intevation.flys.model.River; import de.intevation.flys.model.RiverAxis; +import de.intevation.flys.model.RiverAxisKm; import de.intevation.flys.model.TimeInterval; import de.intevation.flys.model.Unit; import de.intevation.flys.model.WstColumn; @@ -232,6 +233,7 @@ cfg.addAnnotatedClass(Range.class); cfg.addAnnotatedClass(River.class); cfg.addAnnotatedClass(RiverAxis.class); + cfg.addAnnotatedClass(RiverAxisKm.class); cfg.addAnnotatedClass(TimeInterval.class); cfg.addAnnotatedClass(Unit.class); cfg.addAnnotatedClass(WstColumn.class); diff -r 33062484cc56 -r 9df06b88c079 flys-backend/src/main/java/de/intevation/flys/model/RiverAxisKm.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/model/RiverAxisKm.java Tue Nov 01 15:30:38 2011 +0000 @@ -0,0 +1,104 @@ +package de.intevation.flys.model; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.List; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.OneToOne; +import javax.persistence.Table; + +import org.hibernate.Session; +import org.hibernate.Query; +import org.hibernate.annotations.Type; + +import com.vividsolutions.jts.geom.Point; + +import de.intevation.flys.backend.SessionHolder; + + +@Entity +@Table(name = "river_axes_km") +public class RiverAxisKm +implements Serializable +{ + private Integer id; + private River river; + private BigDecimal km; + private Point geom; + + + public RiverAxisKm() { + } + + + @Id + @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; + } + + + @Column(name = "km") + public BigDecimal getKm() { + return km; + } + + + public void setKm(BigDecimal km) { + this.km = km; + } + + + @Column(name = "geom") + @Type(type = "org.hibernatespatial.GeometryUserType") + public Point getGeom() { + return geom; + } + + + public void setGeom(Point geom) { + this.geom = geom; + } + + + /** + * Returns a list of RiverAxisKm objects for a given river. + * + * @param riverid The ID of a river in the database. + * + * @return a list of RiverAxisKm objects. + */ + public static List getRiverAxisKms(int riverid) { + Session session = SessionHolder.HOLDER.get(); + + Query query = session.createQuery( + "from RiverAxisKm where river.id =:riverid"); + query.setParameter("riverid", riverid); + + List list = query.list(); + + return list; + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :