comparison flys-backend/src/main/java/org/dive4elements/river/model/HydrBoundaryPoly.java @ 5828:dfb26b03b179

Moved directories to org.dive4elements.river
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 25 Apr 2013 11:53:11 +0200
parents flys-backend/src/main/java/de/intevation/flys/model/HydrBoundaryPoly.java@87dab419b924
children 18619c1e7c2a
comparison
equal deleted inserted replaced
5827:e308d4ecd35a 5828:dfb26b03b179
1 package de.intevation.flys.model;
2
3 import java.io.Serializable;
4 import java.util.List;
5
6 import javax.persistence.Column;
7 import javax.persistence.Entity;
8 import javax.persistence.GeneratedValue;
9 import javax.persistence.GenerationType;
10 import javax.persistence.Id;
11 import javax.persistence.JoinColumn;
12 import javax.persistence.OneToOne;
13 import javax.persistence.Table;
14 import javax.persistence.SequenceGenerator;
15
16 import org.hibernate.Session;
17 import org.hibernate.Query;
18 import org.hibernate.annotations.Type;
19
20 import com.vividsolutions.jts.geom.Geometry;
21
22 import de.intevation.flys.backend.SessionHolder;
23
24
25 @Entity
26 @Table(name = "hydr_boundaries_poly")
27 public class HydrBoundaryPoly
28 implements Serializable
29 {
30 private Integer id;
31 private String name;
32 private River river;
33 private Geometry geom;
34 private SectieKind sectie;
35 private SobekKind sobek;
36 private BoundaryKind kind;
37
38 public HydrBoundaryPoly() {
39 }
40
41
42 @Id
43 @SequenceGenerator(
44 name = "SEQUENCE_HYDR_BOUNDARIES_POLY_ID_SEQ",
45 sequenceName = "HYDR_BOUNDARIES_POLY_ID_SEQ",
46 allocationSize = 1)
47 @GeneratedValue(
48 strategy = GenerationType.SEQUENCE,
49 generator = "SEQUENCE_HYDR_BOUNDARIES_POLY_ID_SEQ")
50 @Column(name = "id")
51 public Integer getId() {
52 return id;
53 }
54
55
56 public void setId(Integer id) {
57 this.id = id;
58 }
59
60
61 @OneToOne
62 @JoinColumn(name = "river_id")
63 public River getRiver() {
64 return river;
65 }
66
67
68 public void setRiver(River river) {
69 this.river = river;
70 }
71
72
73 @Column(name = "name")
74 public String getName() {
75 return name;
76 }
77
78
79 public void setName(String name) {
80 this.name = name;
81 }
82
83
84 @Column(name = "geom")
85 @Type(type = "org.hibernatespatial.GeometryUserType")
86 public Geometry getGeom() {
87 return geom;
88 }
89
90
91 public void setGeom(Geometry geom) {
92 this.geom = geom;
93 }
94
95
96 public static List<HydrBoundaryPoly> getHydrBoundaries(int riverId, String name) {
97 Session session = SessionHolder.HOLDER.get();
98
99 Query query = session.createQuery(
100 "from HydrBoundaryPoly where river.id =:river_id and name=:name");
101 query.setParameter("river_id", riverId);
102 query.setParameter("name", name);
103
104 return query.list();
105 }
106
107 public static List<HydrBoundaryPoly> getHydrBoundaries(int riverId,
108 int kind, int sectie, int sobek) {
109 Session session = SessionHolder.HOLDER.get();
110
111 String filter = " where river.id =:river_id";
112
113 if (kind != -1) {
114 filter += " and kind = " + kind;
115 }
116 if (sectie != -1) {
117 filter += " and sectie = " + sectie;
118 }
119 if (sobek != -1){
120 filter += " and sobek = " + sobek;
121 }
122
123 Query query = session.createQuery("from HydrBoundaryPoly" + filter);
124 query.setParameter("river_id", riverId);
125 return query.list();
126 }
127
128 /**
129 * Get sectie.
130 *
131 * @return sectie as SectieKind.
132 */
133 @OneToOne
134 @JoinColumn(name = "sectie")
135 public SectieKind getSectie()
136 {
137 return sectie;
138 }
139
140 /**
141 * Set sectie.
142 *
143 * @param sectie the value to set.
144 */
145 public void setSectie(SectieKind sectie)
146 {
147 this.sectie = sectie;
148 }
149
150 /**
151 * Get sobek.
152 *
153 * @return sobek as SobekKind.
154 */
155 @OneToOne
156 @JoinColumn(name = "sobek")
157 public SobekKind getSobek()
158 {
159 return sobek;
160 }
161
162 /**
163 * Set sobek.
164 *
165 * @param sobek the value to set.
166 */
167 public void setSobek(SobekKind sobek)
168 {
169 this.sobek = sobek;
170 }
171
172 /**
173 * Get kind.
174 *
175 * @return kind as BoundaryKind.
176 */
177 @OneToOne
178 @JoinColumn(name = "kind")
179 public BoundaryKind getKind()
180 {
181 return kind;
182 }
183
184 /**
185 * Set kind.
186 *
187 * @param kind the value to set.
188 */
189 public void setKind(BoundaryKind kind)
190 {
191 this.kind = kind;
192 }
193 }
194 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org