comparison flys-backend/src/main/java/de/intevation/flys/importer/ImportDischargeZone.java @ 2833:5b54a648f702

Finished flow velocity data import: finished parsing meta data of model files and repaired broken HQL statements. flys-backend/trunk@4259 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Wed, 18 Apr 2012 08:54:55 +0000
parents 85b25e74594f
children 8649e4ed01ec
comparison
equal deleted inserted replaced
2832:ac5bd90697c1 2833:5b54a648f702
21 Logger.getLogger(ImportDischargeZone.class); 21 Logger.getLogger(ImportDischargeZone.class);
22 22
23 23
24 private String gaugeName; 24 private String gaugeName;
25 25
26 private ImportNamedMainValue mainValue; 26 private BigDecimal value;
27 27
28 private BigDecimal lowerFactor; 28 private String lowerDischarge;
29 29 private String upperDischarge;
30 private BigDecimal upperFactor;
31 30
32 private DischargeZone peer; 31 private DischargeZone peer;
33 32
34 33
35 public ImportDischargeZone( 34 public ImportDischargeZone(
36 ImportNamedMainValue mainValue, 35 String gaugeName,
37 String gaugeName, 36 BigDecimal value,
38 BigDecimal lowerFactor, 37 String lowerDischarge,
39 BigDecimal upperFactor 38 String upperDischarge
40 ) { 39 ) {
41 this.mainValue = mainValue; 40 this.gaugeName = gaugeName;
42 this.gaugeName = gaugeName; 41 this.value = value;
43 this.lowerFactor = lowerFactor; 42 this.lowerDischarge = lowerDischarge;
44 this.upperFactor = upperFactor; 43 this.upperDischarge = upperDischarge;
45 } 44 }
46 45
47 46
48 public void storeDependencies(River river) 47 public void storeDependencies(River river)
49 throws SQLException, ConstraintViolationException 48 throws SQLException, ConstraintViolationException
50 { 49 {
51 log.debug("store dependencies"); 50 log.debug("store dependencies");
52
53 mainValue.getPeer();
54 51
55 getPeer(river); 52 getPeer(river);
56 } 53 }
57 54
58 55
59 public DischargeZone getPeer(River river) { 56 public DischargeZone getPeer(River river) {
60 if (peer == null) { 57 if (peer == null) {
61 Session session = ImporterSession.getInstance().getDatabaseSession(); 58 Session session = ImporterSession.getInstance().getDatabaseSession();
62 59
63 NamedMainValue namedMainValue = mainValue.getPeer();
64
65 Query query = session.createQuery( 60 Query query = session.createQuery(
66 "from DischargeZone where " + 61 "from DischargeZone where " +
67 " river:=river and " + 62 " river=:river and " +
68 " gaugeName=:gaugeName and " + 63 " gaugeName=:gaugeName and " +
69 " mainValue=:mainValue" 64 " value=:value"
70 ); 65 );
71 66
72 query.setParameter("river", river); 67 query.setParameter("river", river);
73 query.setParameter("gaugeName", gaugeName); 68 query.setParameter("gaugeName", gaugeName);
74 query.setParameter("mainValue", namedMainValue); 69 query.setParameter("value", value);
75 70
76 List<DischargeZone> zone = query.list(); 71 List<DischargeZone> zone = query.list();
77 72
78 if (zone.isEmpty()) { 73 if (zone.isEmpty()) {
79 peer = new DischargeZone( 74 peer = new DischargeZone(
75 river,
80 gaugeName, 76 gaugeName,
81 river, 77 value,
82 namedMainValue, 78 lowerDischarge,
83 lowerFactor, 79 upperDischarge);
84 upperFactor);
85 80
86 session.save(peer); 81 session.save(peer);
87 } 82 }
88 else { 83 else {
89 peer = zone.get(0); 84 peer = zone.get(0);

http://dive4elements.wald.intevation.org