comparison flys-backend/src/main/java/de/intevation/flys/importer/ImportGrainFraction.java @ 5439:7aeb2c101628

removed unit from model and importer for grain fractions (its always mm, otherwise a typo)
author Tom Gottfried <tom.gottfried@intevation.de>
date Tue, 26 Mar 2013 18:04:59 +0100
parents 71175502d868
children
comparison
equal deleted inserted replaced
5438:91b14ade2149 5439:7aeb2c101628
6 6
7 import org.hibernate.Session; 7 import org.hibernate.Session;
8 import org.hibernate.Query; 8 import org.hibernate.Query;
9 9
10 import de.intevation.flys.model.GrainFraction; 10 import de.intevation.flys.model.GrainFraction;
11 import de.intevation.flys.model.Unit;
12 11
13 12
14 public class ImportGrainFraction { 13 public class ImportGrainFraction {
15 14
16 private static final Logger log = 15 private static final Logger log =
19 private String name; 18 private String name;
20 19
21 private Double lower; 20 private Double lower;
22 private Double upper; 21 private Double upper;
23 22
24 private ImportUnit unit;
25
26 private GrainFraction peer; 23 private GrainFraction peer;
27 24
28 25
29 public ImportGrainFraction(String name) { 26 public ImportGrainFraction(String name) {
30 this.name = name; 27 this.name = name;
32 29
33 30
34 public ImportGrainFraction( 31 public ImportGrainFraction(
35 String name, 32 String name,
36 Double lower, 33 Double lower,
37 Double upper, 34 Double upper
38 ImportUnit unit
39 ) { 35 ) {
40 this.name = name; 36 this.name = name;
41 this.lower = lower; 37 this.lower = lower;
42 this.upper = upper; 38 this.upper = upper;
43 this.unit = unit;
44 } 39 }
45 40
46 41
47 public void storeDependencies() { 42 public void storeDependencies() {
48 log.debug("store dependencies"); 43 log.debug("store dependencies");
52 47
53 48
54 public GrainFraction getPeer() { 49 public GrainFraction getPeer() {
55 log.debug("get peer"); 50 log.debug("get peer");
56 51
57 Unit u = unit != null ? unit.getPeer() : null;
58
59 if (peer == null) { 52 if (peer == null) {
60 Session session = ImporterSession.getInstance().getDatabaseSession(); 53 Session session = ImporterSession.getInstance().getDatabaseSession();
61 Query query = session.createQuery( 54 Query query = session.createQuery(
62 "from GrainFraction where " + 55 "from GrainFraction where " +
63 " name=:name and " + 56 " name=:name and " +
64 " lower=:lower and " + 57 " lower=:lower and " +
65 " upper=:upper and " + 58 " upper=:upper"
66 " unit=:unit"
67 ); 59 );
68 60
69 query.setParameter("name", name); 61 query.setParameter("name", name);
70 query.setParameter("lower", lower); 62 query.setParameter("lower", lower);
71 query.setParameter("upper", upper); 63 query.setParameter("upper", upper);
72 query.setParameter("unit", u);
73 64
74 List<GrainFraction> fractions = query.list(); 65 List<GrainFraction> fractions = query.list();
75 if (fractions.isEmpty()) { 66 if (fractions.isEmpty()) {
76 log.info("create new GrainFraction"); 67 log.info("create new GrainFraction");
77 68
78 peer = new GrainFraction(name, lower, upper, u); 69 peer = new GrainFraction(name, lower, upper);
79 session.save(peer); 70 session.save(peer);
80 } 71 }
81 else { 72 else {
82 peer = fractions.get(0); 73 peer = fractions.get(0);
83 } 74 }

http://dive4elements.wald.intevation.org