Mercurial > dive4elements > river
annotate flys-backend/src/main/java/de/intevation/flys/model/HydrBoundary.java @ 5779:ebec12def170
Datacage: Add a pool of builders to make it multi threadable.
XML DOM is not thread safe. Therefore the old implementation only allowed one thread
to use the builder at a time. As the complexity of the configuration
has increased over time this has become a bottleneck of the whole application
because it took quiet some time to build a result. Furthermore the builder code path
is visited very frequent. So many concurrent requests were piled up
resulting in long waits for the users.
To mitigate this problem a round robin pool of builders is used now.
Each of the pooled builders has an independent copy of the XML template
and can be run in parallel.
The number of builders is determined by the system property
'flys.datacage.pool.size'. It defaults to 4.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Sun, 21 Apr 2013 12:48:09 +0200 |
parents | 87dab419b924 |
children |
rev | line source |
---|---|
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.model; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
3 import java.io.Serializable; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
4 import java.util.List; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
5 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
6 import javax.persistence.Column; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
7 import javax.persistence.Entity; |
5098
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
8 import javax.persistence.GeneratedValue; |
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
9 import javax.persistence.GenerationType; |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 import javax.persistence.Id; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 import javax.persistence.JoinColumn; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
12 import javax.persistence.OneToOne; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 import javax.persistence.Table; |
5098
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
14 import javax.persistence.SequenceGenerator; |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
15 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
16 import org.hibernate.Session; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
17 import org.hibernate.Query; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
18 import org.hibernate.annotations.Type; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
19 |
5182
8aac391871f9
SCHEME CHANGE: Hydr.Boundaries are now three dimensional multilinestrings
Andre Heinecke <aheinecke@intevation.de>
parents:
5098
diff
changeset
|
20 import com.vividsolutions.jts.geom.MultiLineString; |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
21 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 import de.intevation.flys.backend.SessionHolder; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
23 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
24 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
25 @Entity |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 @Table(name = "hydr_boundaries") |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
27 public class HydrBoundary |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
28 implements Serializable |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
29 { |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
30 private Integer id; |
5062
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
31 private SectieKind sectie; |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
32 private SobekKind sobek; |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
33 private String name; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
34 private River river; |
5182
8aac391871f9
SCHEME CHANGE: Hydr.Boundaries are now three dimensional multilinestrings
Andre Heinecke <aheinecke@intevation.de>
parents:
5098
diff
changeset
|
35 private MultiLineString geom; |
5062
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
36 private BoundaryKind kind; |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
37 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 public HydrBoundary() { |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 @Id |
5098
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
43 @SequenceGenerator( |
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
44 name = "SEQUENCE_HYDR_BOUNDARIES_ID_SEQ", |
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
45 sequenceName = "HYDR_BOUNDARIES_ID_SEQ", |
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
46 allocationSize = 1) |
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
47 @GeneratedValue( |
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
48 strategy = GenerationType.SEQUENCE, |
a2600507761e
Add sequences to the new tables that use sequences
Andre Heinecke <aheinecke@intevation.de>
parents:
5089
diff
changeset
|
49 generator = "SEQUENCE_HYDR_BOUNDARIES_ID_SEQ") |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 @Column(name = "id") |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 public Integer getId() { |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 return id; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
53 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
55 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
56 public void setId(Integer id) { |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
57 this.id = id; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
58 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
59 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
60 @OneToOne |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
61 @JoinColumn(name = "river_id") |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
62 public River getRiver() { |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
63 return river; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
64 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
65 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
66 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
67 public void setRiver(River river) { |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
68 this.river = river; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
69 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
70 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
71 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
72 @Column(name = "name") |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
73 public String getName() { |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
74 return name; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
75 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
76 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
77 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
78 public void setName(String name) { |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
79 this.name = name; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
80 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
81 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
82 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
83 @Column(name = "geom") |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
84 @Type(type = "org.hibernatespatial.GeometryUserType") |
5182
8aac391871f9
SCHEME CHANGE: Hydr.Boundaries are now three dimensional multilinestrings
Andre Heinecke <aheinecke@intevation.de>
parents:
5098
diff
changeset
|
85 public MultiLineString getGeom() { |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
86 return geom; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
87 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
88 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
89 |
5182
8aac391871f9
SCHEME CHANGE: Hydr.Boundaries are now three dimensional multilinestrings
Andre Heinecke <aheinecke@intevation.de>
parents:
5098
diff
changeset
|
90 public void setGeom(MultiLineString geom) { |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
91 this.geom = geom; |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
92 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
93 |
5515
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
94 public static List<HydrBoundary> getHydrBoundaries(int riverId, String name, int kindId) { |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
95 Session session = SessionHolder.HOLDER.get(); |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
96 |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
97 Query query = session.createQuery( |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
98 "from HydrBoundary where river.id =:river_id and name=:name" + |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
99 " and kind.id=:kind_id"); |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
100 query.setParameter("river_id", riverId); |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
101 query.setParameter("name", name); |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
102 query.setParameter("kind_id", kindId); |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
103 |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
104 return query.list(); |
87dab419b924
Properly handle hydr_boundaries and hydr_boundaries_poly in datacage
Andre Heinecke <aheinecke@intevation.de>
parents:
5182
diff
changeset
|
105 } |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
106 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
107 public static List<HydrBoundary> getHydrBoundaries(int riverId, String name) { |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
108 Session session = SessionHolder.HOLDER.get(); |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
109 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
110 Query query = session.createQuery( |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
111 "from HydrBoundary where river.id =:river_id and name=:name"); |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
112 query.setParameter("river_id", riverId); |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
113 query.setParameter("name", name); |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
114 |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
115 return query.list(); |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
116 } |
5062
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
117 |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
118 /** |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
119 * Get sectie. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
120 * |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
121 * @return sectie as SectieKind. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
122 */ |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
123 @OneToOne |
5089
4e03f3976d4b
Fix column decorator for sectie
Andre Heinecke <aheinecke@intevation.de>
parents:
5062
diff
changeset
|
124 @JoinColumn(name = "sectie") |
5062
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
125 public SectieKind getSectie() |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
126 { |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
127 return sectie; |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
128 } |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
129 |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
130 /** |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
131 * Set sectie. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
132 * |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
133 * @param sectie the value to set. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
134 */ |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
135 public void setSectie(SectieKind sectie) |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
136 { |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
137 this.sectie = sectie; |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
138 } |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
139 |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
140 /** |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
141 * Get sobek. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
142 * |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
143 * @return sobek as SobekKind. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
144 */ |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
145 @OneToOne |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
146 @JoinColumn(name = "sobek") |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
147 public SobekKind getSobek() |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
148 { |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
149 return sobek; |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
150 } |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
151 |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
152 /** |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
153 * Set sobek. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
154 * |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
155 * @param sobek the value to set. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
156 */ |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
157 public void setSobek(SobekKind sobek) |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
158 { |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
159 this.sobek = sobek; |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
160 } |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
161 |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
162 /** |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
163 * Get kind. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
164 * |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
165 * @return kind as BoundaryKind. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
166 */ |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
167 @OneToOne |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
168 @JoinColumn(name = "kind") |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
169 public BoundaryKind getKind() |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
170 { |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
171 return kind; |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
172 } |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
173 |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
174 /** |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
175 * Set kind. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
176 * |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
177 * @param kind the value to set. |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
178 */ |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
179 public void setKind(BoundaryKind kind) |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
180 { |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
181 this.kind = kind; |
bafc655ee630
Add kind, sectie and sobek to HydrBoundary class
Andre Heinecke <aheinecke@intevation.de>
parents:
2868
diff
changeset
|
182 } |
2868
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
183 } |
b6f94c5db89e
Added HydrBoundary and HydrBoundaryPoly and adapted method signatures of Line and Building.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
184 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |