comparison flys-aft/src/main/java/de/intevation/aft/Rivers.java @ 4753:a310aceb2e51

Fetch calculation range (Berechnungsstrecke) for FLYS rivers, too.
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 03 Jan 2013 14:19:45 +0100
parents b20b710aa86f
children f939e1e6cfa4
comparison
equal deleted inserted replaced
4752:ce570c74aa94 4753:a310aceb2e51
25 log.info("sync: rivers"); 25 log.info("sync: rivers");
26 26
27 ConnectedStatements flysStatements = context.getFlysStatements(); 27 ConnectedStatements flysStatements = context.getFlysStatements();
28 ConnectedStatements aftStatements = context.getAftStatements(); 28 ConnectedStatements aftStatements = context.getAftStatements();
29 29
30 Map<String, Integer> flysRivers = new HashMap<String, Integer>(); 30 Map<String, River> flysRivers = new HashMap<String, River>();
31 31
32 ResultSet flysRs = flysStatements 32 ResultSet flysRs = flysStatements
33 .getStatement("select.river").executeQuery(); 33 .getStatement("select.rivers").executeQuery();
34 34
35 while (flysRs.next()) { 35 try {
36 Integer id = flysRs.getInt("id"); 36 while (flysRs.next()) {
37 String name = flysRs.getString("name").toLowerCase(); 37 int id = flysRs.getInt("id");
38 flysRivers.put(name, id); 38 String name = flysRs.getString("name");
39 double from = flysRs.getDouble("min_km");
40 double to = flysRs.getDouble("max_km");
41 flysRivers.put(name.toLowerCase(), new River(id, name, from, to));
42 }
39 } 43 }
40 44 finally {
41 flysRs.close(); 45 flysRs.close();
46 }
42 47
43 List<River> commonRivers = new ArrayList<River>(); 48 List<River> commonRivers = new ArrayList<River>();
44 49
45 ResultSet aftRs = aftStatements 50 ResultSet aftRs = aftStatements
46 .getStatement("select.gewaesser").executeQuery(); 51 .getStatement("select.gewaesser").executeQuery();
47 52
48 while (aftRs.next()) { 53 try {
49 String name = aftRs.getString("NAME"); 54 while (aftRs.next()) {
50 Integer id1 = flysRivers.get(name.toLowerCase()); 55 String name = aftRs.getString("NAME");
51 if (id1 != null) { 56 River river = flysRivers.get(name.toLowerCase());
52 int id2 = aftRs.getInt("GEWAESSER_NR"); 57 if (river != null) {
53 River river = new River(id1, id2, name); 58 int id2 = aftRs.getInt("GEWAESSER_NR");
54 commonRivers.add(river); 59 river.setId2(id2);
60 commonRivers.add(river);
61 }
55 } 62 }
56 } 63 }
64 finally {
65 aftRs.close();
66 }
57 67
58 aftRs.close();
59 68
60 boolean modified = false; 69 boolean modified = false;
61 70
62 for (River river: commonRivers) { 71 for (River river: commonRivers) {
63 modified |= river.sync(context); 72 modified |= river.sync(context);

http://dive4elements.wald.intevation.org