Mercurial > dive4elements > river
comparison flys-backend/src/main/java/de/intevation/flys/importer/ImportHYK.java @ 1218:00e37d22a589
Added importer models for HYKs.
flys-backend/trunk@2344 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Sun, 17 Jul 2011 19:03:33 +0000 |
parents | |
children | d80997bd94ce |
comparison
equal
deleted
inserted
replaced
1217:d5e39c16fd2a | 1218:00e37d22a589 |
---|---|
1 package de.intevation.flys.importer; | |
2 | |
3 import de.intevation.flys.model.HYK; | |
4 import de.intevation.flys.model.River; | |
5 | |
6 import java.util.List; | |
7 import java.util.ArrayList; | |
8 | |
9 import org.hibernate.Session; | |
10 import org.hibernate.Query; | |
11 | |
12 public class ImportHYK | |
13 { | |
14 protected ImportRiver river; | |
15 protected String description; | |
16 | |
17 protected List<ImportHYKEntry> entries; | |
18 | |
19 protected HYK peer; | |
20 | |
21 public ImportHYK() { | |
22 entries = new ArrayList<ImportHYKEntry>(); | |
23 } | |
24 | |
25 public ImportHYK(ImportRiver river, String description) { | |
26 this(); | |
27 this.river = river; | |
28 this.description = description; | |
29 } | |
30 | |
31 public void addEntry(ImportHYKEntry entry) { | |
32 entries.add(entry); | |
33 entry.setHYK(this); | |
34 } | |
35 | |
36 public HYK getPeer() { | |
37 if (peer == null) { | |
38 River r = river.getPeer(); | |
39 Session session = ImporterSession.getInstance() | |
40 .getDatabaseSession(); | |
41 Query query = session.createQuery( | |
42 "from HYK where river=:river and description=:description"); | |
43 query.setParameter("river", r); | |
44 query.setParameter("description", description); | |
45 List<HYK> hyks = query.list(); | |
46 if (hyks.isEmpty()) { | |
47 peer = new HYK(r, description); | |
48 session.save(peer); | |
49 } | |
50 else { | |
51 peer = hyks.get(0); | |
52 } | |
53 } | |
54 return peer; | |
55 } | |
56 } | |
57 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |