annotate backend/src/main/java/org/dive4elements/river/model/Jetty.java @ 6229:3fea9701d58d

Fix gauge determination. If we look upstream ( a > b ) we still have to compare the start value of our range against the gauge and not the end value. The start value is always the relevant value as we handle the direction by checking this against A or B of the gauge. Also: I will never compare doubles with == again. I will never compare doubles with == again. I will never compare doubles with == again. I will never compare doubles with == again. I will never compare doubles with == again.
author Andre Heinecke <aheinecke@intevation.de>
date Thu, 06 Jun 2013 18:23:17 +0200
parents 4c3ccf2b0304
children
rev   line source
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
6 * documentation coming with Dive4Elements River for details.
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
9 package org.dive4elements.river.model;
5437
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
10
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
11 import java.io.Serializable;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
12 import java.util.List;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
13
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
14 import javax.persistence.Column;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
15 import javax.persistence.Entity;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
16 import javax.persistence.Id;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
17 import javax.persistence.JoinColumn;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
18 import javax.persistence.OneToOne;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
19 import javax.persistence.Table;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
20
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
21 import com.vividsolutions.jts.geom.Geometry;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
22
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
23 import org.hibernate.Session;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
24 import org.hibernate.Query;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
25 import org.hibernate.annotations.Type;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
26
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
27 import org.dive4elements.river.backend.SessionHolder;
5437
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
28
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
29 @Entity
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
30 @Table(name = "jetties")
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
31 public class Jetty
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
32 implements Serializable
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
33 {
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
34 private Integer id;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
35 private River river;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
36 private Geometry geom;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
37
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
38 public Jetty() {
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
39 }
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
40
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
41
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
42 @Id
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
43 @Column(name = "id")
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
44 public Integer getId() {
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
45 return id;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
46 }
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
47
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
48
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
49 public void setId(Integer id) {
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
50 this.id = id;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
51 }
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
52
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
53
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
54 @OneToOne
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
55 @JoinColumn(name = "river_id")
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
56 public River getRiver() {
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
57 return river;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
58 }
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
59
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
60
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
61 public void setRiver(River river) {
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
62 this.river = river;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
63 }
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
64
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
65 @Column(name = "geom")
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
66 @Type(type = "org.hibernatespatial.GeometryUserType")
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
67 public Geometry getGeom() {
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
68 return geom;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
69 }
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
70
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
71
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
72 public void setGeom(Geometry geom) {
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
73 this.geom = geom;
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
74 }
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
75
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
76 public static List<Jetty> getJetties(int riverId, int kindId) {
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
77 Session session = SessionHolder.HOLDER.get();
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
78
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
79 Query query = session.createQuery(
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
80 "from Jetty where river.id =:river_id and kind_id=:kind_id");
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
81 query.setParameter("kind_id", kindId);
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
82 query.setParameter("river_id", riverId);
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
83
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
84 return query.list();
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
85 }
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
86 }
b582df0c7b00 Add Jetties to floodmap
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
87 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org