Mercurial > dive4elements > river
annotate flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/map/WSPLGENCalculation.java @ 4282:8b4988815974
Added marker for Ws and Qs in Historical Discharge WQ charts.
Therefore, the XYChartGenerator got two new methods addDomainMarker(Marker, boolean) and addValueMarker(Marker, boolean).
The boolean parameters determine, if the marker should be visible or not. This is analogous to addAxisSeries(XYSeries, int, boolean).
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Mon, 29 Oct 2012 05:59:27 +0100 |
parents | 975f608dd254 |
children |
rev | line source |
---|---|
3300
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.artifacts.model.map; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
3 import java.util.HashMap; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
4 import java.util.Map; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
5 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
6 import org.w3c.dom.Document; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
7 import org.w3c.dom.Element; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
8 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
9 import org.apache.log4j.Logger; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 import de.intevation.artifacts.CallMeta; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
12 import de.intevation.flys.artifacts.model.Calculation; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
14 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
15 public class WSPLGENCalculation extends Calculation { |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
16 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
17 private static final Logger log = Logger.getLogger(WSPLGENCalculation.class); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
18 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
19 protected Map<Integer, String> errors; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
20 protected Map<Integer, String> warnings; |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
21 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
23 public WSPLGENCalculation() { |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
24 errors = new HashMap<Integer, String>(); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
25 warnings = new HashMap<Integer, String>(); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
27 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
28 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
29 public void addError(Integer key, String msg) { |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
30 log.debug("New error: (" + key + ") " + msg); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
31 errors.put(key, msg); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
32 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
33 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
34 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
35 public void addWarning(Integer key, String msg) { |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
36 log.debug("New warning: (" + key + ") " + msg); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
37 warnings.put(key, msg); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 public int numErrors() { |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 return errors.size(); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
43 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
44 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
45 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
46 public int numWarnings() { |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
47 return warnings.size(); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
48 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
49 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 @Override |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 public void toXML(Document document, CallMeta meta) { |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
53 Element root = document.createElement("problems"); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
55 if (numErrors() > 0) { |
4050
975f608dd254
Cleaned up iterating over maps. Removed some dead code.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3300
diff
changeset
|
56 for (Map.Entry<Integer, String> entry: errors.entrySet()) { |
3300
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
57 Element problem = document.createElement("problem"); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
58 problem.setAttribute("error", String.valueOf(entry.getKey())); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
59 problem.setTextContent(entry.getValue()); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
60 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
61 root.appendChild(problem); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
62 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
63 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
64 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
65 if (numWarnings() > 0) { |
4050
975f608dd254
Cleaned up iterating over maps. Removed some dead code.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3300
diff
changeset
|
66 for (Map.Entry<Integer, String> entry: warnings.entrySet()) { |
3300
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
67 Element problem = document.createElement("problem"); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
68 problem.setAttribute("error", String.valueOf(entry.getKey())); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
69 problem.setTextContent(entry.getValue()); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
70 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
71 root.appendChild(problem); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
72 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
73 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
74 |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
75 document.appendChild(root); |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
76 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
77 } |
e1cf76b3ecb4
Moved map and WSPLGEN code to subpackage 'map' in the model package.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
78 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |