Mercurial > dive4elements > river
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 : |