# HG changeset patch # User Ingo Weinzierl # Date 1331213565 0 # Node ID 501f00e355ebca88774843fe1300af8c44e0d139 # Parent 5a654f2e35bc53dbc112e03f4e2bb334444322ed Added model class for 'floodmaps'. flys-backend/trunk@4129 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r 5a654f2e35bc -r 501f00e355eb flys-backend/ChangeLog --- a/flys-backend/ChangeLog Wed Mar 07 20:37:03 2012 +0000 +++ b/flys-backend/ChangeLog Thu Mar 08 13:32:45 2012 +0000 @@ -1,3 +1,11 @@ +2012-03-08 Ingo Weinzierl + + * src/main/java/de/intevation/flys/model/Floodmaps.java: New model class for + 'floodmaps'. + + * src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java: + Registered the Floodmaps model class. + 2012-03-07 Ingo Weinzierl * contrib/shpimporter/shpimporter.py, diff -r 5a654f2e35bc -r 501f00e355eb flys-backend/src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java --- a/flys-backend/src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java Wed Mar 07 20:37:03 2012 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/backend/SessionFactoryProvider.java Thu Mar 08 13:32:45 2012 +0000 @@ -35,6 +35,7 @@ import de.intevation.flys.model.DischargeTableValue; import de.intevation.flys.model.Edge; import de.intevation.flys.model.Fixpoint; +import de.intevation.flys.model.Floodmaps; import de.intevation.flys.model.Floodplain; import de.intevation.flys.model.Gauge; import de.intevation.flys.model.Hws; diff -r 5a654f2e35bc -r 501f00e355eb flys-backend/src/main/java/de/intevation/flys/model/Floodmaps.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/model/Floodmaps.java Thu Mar 08 13:32:45 2012 +0000 @@ -0,0 +1,155 @@ +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.MultiPolygon; + +import de.intevation.flys.backend.SessionHolder; + + +@Entity +@Table(name = "floodmaps") +public class Floodmaps +implements Serializable +{ + private Integer id; + private River river; + private String name; + private Integer kind; + private Integer count; + private BigDecimal diff; + private BigDecimal area; + private BigDecimal perimeter; + private MultiPolygon geom; + + public Floodmaps() { + } + + + @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; + } + + + @JoinColumn(name = "name") + public String getName() { + return name; + } + + + public void setName(String name) { + this.name = name; + } + + + @Column(name = "kind") + public Integer getKind() { + return kind; + } + + + public void setKind(Integer kind) { + this.kind = kind; + } + + + @Column(name = "count") + public Integer getCount() { + return count; + } + + + public void setCount(Integer count) { + this.count = count; + } + + + @Column(name = "diff") + public BigDecimal getDiff() { + return diff; + } + + + public void setDiff(BigDecimal diff) { + this.diff = diff; + } + + + @Column(name = "area") + public BigDecimal getArea() { + return area; + } + + + public void setArea(BigDecimal area) { + this.area = area; + } + + + @Column(name = "perimeter") + public BigDecimal getPerimeter() { + return perimeter; + } + + + public void setPerimeter(BigDecimal perimeter) { + this.perimeter = perimeter; + } + + + @Column(name = "geom") + @Type(type = "org.hibernatespatial.GeometryUserType") + public MultiPolygon getGeom() { + return geom; + } + + + public void setGeom(MultiPolygon geom) { + this.geom = geom; + } + + + public static List getFloodmaps(int riverId, String name) { + Session session = SessionHolder.HOLDER.get(); + + Query query = session.createQuery( + "from Floodmaps where river.id =:river_id AND name =:name"); + query.setParameter("river_id", riverId); + query.setParameter("name", name); + + return query.list(); + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :