Mercurial > dive4elements > river
comparison flys-backend/src/main/java/org/dive4elements/river/importer/ImportWstQRange.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/importer/ImportWstQRange.java@f3b270e5462e |
children | 18619c1e7c2a |
comparison
equal
deleted
inserted
replaced
5827:e308d4ecd35a | 5828:dfb26b03b179 |
---|---|
1 package de.intevation.flys.importer; | |
2 | |
3 import java.math.BigDecimal; | |
4 | |
5 import de.intevation.flys.model.WstQRange; | |
6 import de.intevation.flys.model.River; | |
7 import de.intevation.flys.model.Range; | |
8 | |
9 import org.hibernate.Session; | |
10 import org.hibernate.Query; | |
11 | |
12 import java.util.List; | |
13 | |
14 public class ImportWstQRange | |
15 { | |
16 protected ImportRange range; | |
17 protected BigDecimal q; | |
18 | |
19 protected WstQRange peer; | |
20 | |
21 public ImportWstQRange() { | |
22 } | |
23 | |
24 public ImportWstQRange( | |
25 ImportRange range, | |
26 BigDecimal q | |
27 ) { | |
28 this.range = range; | |
29 this.q = q; | |
30 } | |
31 | |
32 public ImportRange getRange() { | |
33 return range; | |
34 } | |
35 | |
36 public void setRange(ImportRange range) { | |
37 this.range = range; | |
38 } | |
39 | |
40 public BigDecimal getQ() { | |
41 return q; | |
42 } | |
43 | |
44 public void setQ(BigDecimal q) { | |
45 this.q = q; | |
46 } | |
47 | |
48 public void fixRangesOrder() { | |
49 range.fixRangesOrder(); | |
50 } | |
51 | |
52 public WstQRange getPeer(River river) { | |
53 if (peer == null) { | |
54 Range r = range.getPeer(river); | |
55 Session session = ImporterSession.getInstance().getDatabaseSession(); | |
56 Query query = session.createQuery( | |
57 "from WstQRange where " + | |
58 "range=:range and q=:q"); | |
59 query.setParameter("range", r); | |
60 query.setParameter("q", q); | |
61 List<WstQRange> wstQRanges = query.list(); | |
62 if (wstQRanges.isEmpty()) { | |
63 peer = new WstQRange(r, q); | |
64 session.save(peer); | |
65 } | |
66 else { | |
67 peer = wstQRanges.get(0); | |
68 } | |
69 } | |
70 return peer; | |
71 } | |
72 } | |
73 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |