Mercurial > dive4elements > river
comparison flys-backend/src/main/java/de/intevation/flys/model/DGM.java @ 5379:61bf64b102bc mapgenfix
Merge with default branch
author | Christian Lins <christian.lins@intevation.de> |
---|---|
date | Fri, 22 Mar 2013 11:25:54 +0100 |
parents | 908848b74d7e |
children |
comparison
equal
deleted
inserted
replaced
5175:cfc5540a4eec | 5379:61bf64b102bc |
---|---|
4 import java.util.List; | 4 import java.util.List; |
5 import java.math.BigDecimal; | 5 import java.math.BigDecimal; |
6 | 6 |
7 import javax.persistence.Column; | 7 import javax.persistence.Column; |
8 import javax.persistence.Entity; | 8 import javax.persistence.Entity; |
9 import javax.persistence.GeneratedValue; | |
10 import javax.persistence.GenerationType; | |
9 import javax.persistence.Id; | 11 import javax.persistence.Id; |
10 import javax.persistence.JoinColumn; | 12 import javax.persistence.JoinColumn; |
11 import javax.persistence.OneToOne; | 13 import javax.persistence.OneToOne; |
12 import javax.persistence.Table; | 14 import javax.persistence.Table; |
15 import javax.persistence.SequenceGenerator; | |
13 | 16 |
14 import org.hibernate.Session; | 17 import org.hibernate.Session; |
15 import org.hibernate.Query; | 18 import org.hibernate.Query; |
16 | 19 |
17 import de.intevation.flys.backend.SessionHolder; | 20 import de.intevation.flys.backend.SessionHolder; |
19 | 22 |
20 @Entity | 23 @Entity |
21 @Table(name = "dem") | 24 @Table(name = "dem") |
22 public class DGM implements Serializable { | 25 public class DGM implements Serializable { |
23 | 26 |
24 private Integer id; | 27 private Integer id; |
28 private Integer srid; | |
25 | 29 |
26 private River river; | 30 private River river; |
27 | 31 |
28 private BigDecimal lower; | 32 private Range range; |
29 private BigDecimal upper; | 33 private TimeInterval time_interval; |
30 | 34 |
31 private String path; | 35 private String path; |
32 | 36 |
33 | 37 |
34 public DGM() { | 38 public DGM() { |
35 } | 39 } |
36 | 40 |
38 public void setId(Integer id) { | 42 public void setId(Integer id) { |
39 this.id = id; | 43 this.id = id; |
40 } | 44 } |
41 | 45 |
42 @Id | 46 @Id |
47 @SequenceGenerator( | |
48 name = "SEQUENCE_DEM_ID_SEQ", | |
49 sequenceName = "DEM_ID_SEQ", | |
50 allocationSize = 1) | |
51 @GeneratedValue( | |
52 strategy = GenerationType.SEQUENCE, | |
53 generator = "SEQUENCE_DEM_ID_SEQ") | |
43 @Column(name = "id") | 54 @Column(name = "id") |
44 public Integer getId() { | 55 public Integer getId() { |
45 return id; | 56 return id; |
46 } | 57 } |
47 | 58 |
53 @JoinColumn(name = "river_id") | 64 @JoinColumn(name = "river_id") |
54 public River getRiver() { | 65 public River getRiver() { |
55 return river; | 66 return river; |
56 } | 67 } |
57 | 68 |
58 public void setLower(BigDecimal lower) { | |
59 this.lower = lower; | |
60 } | |
61 | |
62 @Column(name = "lower") | |
63 public BigDecimal getLower() { | |
64 return lower; | |
65 } | |
66 | |
67 public void setUpper(BigDecimal upper) { | |
68 this.upper = upper; | |
69 } | |
70 | |
71 @Column(name = "upper") | |
72 public BigDecimal getUpper() { | |
73 return upper; | |
74 } | |
75 | |
76 public void setPath(String path) { | 69 public void setPath(String path) { |
77 this.path = path; | 70 this.path = path; |
78 } | 71 } |
79 | 72 |
80 @Column(name = "path") | 73 @Column(name = "path") |
81 public String getPath() { | 74 public String getPath() { |
82 return path; | 75 return path; |
83 } | 76 } |
84 | 77 |
78 public void setSrid(int srid) { | |
79 this.srid = srid; | |
80 } | |
81 | |
82 @Column(name = "srid") | |
83 public int getSrid() { | |
84 return srid; | |
85 } | |
85 | 86 |
86 public static DGM getDGM(int id) { | 87 public static DGM getDGM(int id) { |
87 Session session = SessionHolder.HOLDER.get(); | 88 Session session = SessionHolder.HOLDER.get(); |
88 | 89 |
89 Query query = session.createQuery( | 90 Query query = session.createQuery( |
99 public static DGM getDGM(String river, double lower, double upper) { | 100 public static DGM getDGM(String river, double lower, double upper) { |
100 Session session = SessionHolder.HOLDER.get(); | 101 Session session = SessionHolder.HOLDER.get(); |
101 | 102 |
102 Query query = session.createQuery( | 103 Query query = session.createQuery( |
103 "from DGM where river.name =:river and " + | 104 "from DGM where river.name =:river and " + |
104 "lower <=:lower and upper >=:lower and " + | 105 "range.a <=:lower and range.b >=:lower and " + |
105 "lower <=:upper and upper >=:upper"); | 106 "range.a <=:upper and range.b >=:upper"); |
106 query.setParameter("river", river); | 107 query.setParameter("river", river); |
107 query.setParameter("lower", new BigDecimal(lower)); | 108 query.setParameter("lower", new BigDecimal(lower)); |
108 query.setParameter("upper", new BigDecimal(upper)); | 109 query.setParameter("upper", new BigDecimal(upper)); |
109 | 110 |
110 List<DGM> result = query.list(); | 111 List<DGM> result = query.list(); |
111 | 112 |
112 return result.isEmpty() ? null : result.get(0); | 113 return result.isEmpty() ? null : result.get(0); |
113 } | 114 } |
115 | |
116 @OneToOne | |
117 @JoinColumn(name = "range_id") | |
118 public Range getRange() { | |
119 return range; | |
120 } | |
121 | |
122 public void setRange(Range range) { | |
123 this.range = range; | |
124 } | |
125 | |
126 @OneToOne | |
127 @JoinColumn(name = "time_interval_id") | |
128 public TimeInterval getTimeInterval() { | |
129 return time_interval; | |
130 } | |
131 | |
132 public void setTimeInterval(TimeInterval time_interval) { | |
133 this.time_interval = time_interval; | |
134 } | |
135 | |
136 | |
114 } | 137 } |
115 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : | 138 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |