annotate backend/src/main/java/org/dive4elements/river/model/Floodplain.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 5e38e2924c07
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;
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 import java.io.Serializable;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
12 import java.util.List;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14 import javax.persistence.Column;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15 import javax.persistence.Entity;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
16 import javax.persistence.Id;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17 import javax.persistence.JoinColumn;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18 import javax.persistence.OneToOne;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19 import javax.persistence.Table;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
20
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
21 import org.hibernate.Query;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22 import org.hibernate.Session;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
23 import org.hibernate.annotations.Type;
5496
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
24 import org.hibernate.HibernateException;
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25
2361
e9b0fd1de89d Made flys-backend compatible with oracle spatial.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1237
diff changeset
26 import com.vividsolutions.jts.geom.Polygon;
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
27
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
28 import org.dive4elements.river.backend.SessionHolder;
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
29
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
31 @Entity
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32 @Table(name = "floodplain")
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 public class Floodplain
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34 implements Serializable
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35 {
5242
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
36 private Integer id;
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37
5242
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
38 private FloodplainKind kind;
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39
5242
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
40 private River river;
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
41
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
42 private Polygon geom;
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
43
5496
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
44 private String name;
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
45
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47 public Floodplain() {
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48 }
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
51 @Id
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52 @Column(name = "id")
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53 public Integer getId() {
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54 return id;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
55 }
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57 public void setId(Integer id) {
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58 this.id = id;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59 }
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61 @OneToOne
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62 @JoinColumn(name = "river_id")
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 public River getRiver() {
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64 return river;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
65 }
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
66
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
67 public void setRiver(River river) {
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
68 this.river = river;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
69 }
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
70
5242
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
71 @OneToOne
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
72 @JoinColumn(name = "kind_id")
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
73 public FloodplainKind getKind() {
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
74 return kind;
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
75 }
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
76
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
77 public void setKind(FloodplainKind kind) {
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
78 this.kind = kind;
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
79 }
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
80
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
81 @Column(name = "geom")
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
82 @Type(type = "org.hibernatespatial.GeometryUserType")
2361
e9b0fd1de89d Made flys-backend compatible with oracle spatial.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1237
diff changeset
83 public Polygon getGeom() {
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
84 return geom;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
85 }
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
86
2361
e9b0fd1de89d Made flys-backend compatible with oracle spatial.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1237
diff changeset
87 public void setGeom(Polygon geom) {
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
88 this.geom = geom;
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
89 }
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
90
5496
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
91 @Column(name = "name")
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
92 public String getName() {
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
93 return name;
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
94 }
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
95
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
96
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
97 public void setName(String name) {
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
98 this.name = name;
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
99 }
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
100
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
101 public static List<Floodplain> getFloodplains(String river, String name, int kind)
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
102 throws HibernateException {
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
103 Session session = SessionHolder.HOLDER.get();
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
104 Query query = session.createQuery(
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
105 "from Floodplain as fp where river.name =:river" +
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
106 " and kind.id =:kind" +
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
107 " and fp.name=:name");
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
108 query.setParameter("river", river);
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
109 query.setParameter("kind", kind);
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
110 query.setParameter("name", name);
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
111
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
112 List<Floodplain> list = query.list();
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
113 return list.isEmpty() ? null : list;
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
114 }
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
115
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
116 public static List<Floodplain> getFloodplains(String river, int kind)
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
117 throws HibernateException {
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
118 Session session = SessionHolder.HOLDER.get();
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
119 Query query = session.createQuery(
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
120 "from Floodplain where river.name =:river AND kind.id =:kind");
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
121 query.setParameter("river", river);
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
122 query.setParameter("kind", kind);
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
123
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
124 List<Floodplain> list = query.list();
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
125 return list.isEmpty() ? null : list;
23d8f2700b38 Add support for multiple floodplains and add them to the datacage accordingly
Andre Heinecke <aheinecke@intevation.de>
parents: 5242
diff changeset
126 }
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
127
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
128 public static Floodplain getFloodplain(String river) {
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
129 Session session = SessionHolder.HOLDER.get();
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
130
5242
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
131 // kind_id 0 -> Offical
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
132 // kind_id 1 -> Misc.
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
133 Query query = session.createQuery(
5242
88e3473a3846 Add kind handling for floodplains and crossectiontracks
Andre Heinecke <aheinecke@intevation.de>
parents: 2361
diff changeset
134 "from Floodplain where river.name =:river and kind_id=1");
1237
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
135 query.setParameter("river", river);
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
136
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
137 List<Floodplain> result = query.list();
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
138
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
139 return result.isEmpty() ? null : result.get(0);
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
140 }
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
141 }
774dff3ee546 Added relation and hibernate classes for floodplains (german 'Talaue').
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
142 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org