annotate artifacts/src/main/java/org/dive4elements/river/jfree/StyledXYSeries.java @ 8287:4c1f57839ae9

Avoid NPE if river is not accessible.
author "Tom Gottfried <tom@intevation.de>"
date Wed, 17 Sep 2014 13:00:14 +0200
parents e4606eae8ea5
children d4c501d2c098
rev   line source
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5994
af13ceeba52a Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5863
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5994
af13ceeba52a Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5863
diff changeset
6 * documentation coming with Dive4Elements River for details.
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3317
diff changeset
9 package org.dive4elements.river.jfree;
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
3155
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
11 import java.util.List;
7891
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
12 import java.util.Map;
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14 import org.apache.log4j.Logger;
8287
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
15
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
16 import org.dive4elements.river.model.River;
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
17
7891
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
18 import org.dive4elements.artifacts.Artifact;
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
19 import org.dive4elements.artifacts.CallContext;
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
20 import org.dive4elements.river.artifacts.D4EArtifact;
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
21 import org.dive4elements.river.artifacts.access.RiverAccess;
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
22 import org.dive4elements.river.artifacts.resources.Resources;
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
23 import org.dive4elements.river.model.Unit;
6905
1b35b2ddfc28 Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6876
diff changeset
24 import org.dive4elements.river.themes.ThemeDocument;
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25
3155
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
26 import org.jfree.data.xy.XYDataItem;
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
27 import org.jfree.data.xy.XYSeries;
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28
7541
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
29 import java.awt.Shape;
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
30
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
31 /**
2321
991e4a5df323 Enabled styling in timeseries charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2076
diff changeset
32 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 */
7891
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
34 public class StyledXYSeries
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
35 extends XYSeries
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
36 implements StyledSeries, HasLabel, XYMetaDataset {
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7891
diff changeset
38 private static final Logger log = Logger.getLogger(StyledXYSeries.class);
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39
2321
991e4a5df323 Enabled styling in timeseries charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2076
diff changeset
40 protected Style style;
991e4a5df323 Enabled styling in timeseries charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2076
diff changeset
41
2652
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
42 /** If this Series is to be labelled, use this String as label. */
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
43 protected String label;
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
44
7891
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
45 /** The meta data for this series. */
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
46 protected Map<String, String> metaData;
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47
6905
1b35b2ddfc28 Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6876
diff changeset
48 public StyledXYSeries(String key, ThemeDocument theme) {
7541
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
49 this(key, true, theme, (Shape)null);
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50 }
3160
8c78c707aa2d Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3155
diff changeset
51
8c78c707aa2d Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3155
diff changeset
52
6905
1b35b2ddfc28 Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6876
diff changeset
53 public StyledXYSeries(String key, ThemeDocument theme, XYSeries unstyledSeries) {
3155
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
54 this(key, theme);
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
55 add(unstyledSeries);
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
56 }
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57
7541
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
58 public StyledXYSeries(String key, boolean sorted, ThemeDocument theme) {
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
59 this(key, sorted, theme, (Shape)null);
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
60 }
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
61
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
62
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
63 public StyledXYSeries(String key, ThemeDocument theme, Shape shape) {
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
64 this(key, true, theme, shape);
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
65 }
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
66
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
67 /**
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
68 * @param sorted whether or not to sort the points. Sorting will move NANs
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
69 * to one extrema which can cause problems in certain
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
70 * algorithms.
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
71 */
7541
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
72 public StyledXYSeries(String key, boolean sorted, ThemeDocument theme, Shape shape) {
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73 super(key, sorted);
7541
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
74 setStyle(new XYStyle(theme, shape));
2652
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
75 this.label = key.toString();
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76 }
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
77
6876
a071f0a80883 FixA W/Q Diagram: Allow duplicate points. It should work but it doesn't. :-/
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5994
diff changeset
78 public StyledXYSeries(
7541
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
79 String key,
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
80 boolean sorted,
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
81 boolean allowDuplicateXValues,
6905
1b35b2ddfc28 Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6876
diff changeset
82 ThemeDocument theme
6876
a071f0a80883 FixA W/Q Diagram: Allow duplicate points. It should work but it doesn't. :-/
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5994
diff changeset
83 ) {
7541
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
84 this(key, sorted, allowDuplicateXValues, theme, (Shape)null);
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
85 }
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
86
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
87 public StyledXYSeries(
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
88 String key,
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
89 boolean sorted,
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
90 boolean allowDuplicateXValues,
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
91 ThemeDocument theme,
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
92 Shape shape
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
93 ) {
6876
a071f0a80883 FixA W/Q Diagram: Allow duplicate points. It should work but it doesn't. :-/
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5994
diff changeset
94 super(key, sorted, allowDuplicateXValues);
7541
d20a26e96ef1 issue1585: Part 1/2 of patch from Sascha Teichmann to define shape for datapoints.
sascha.teichmann@intevation.de
parents: 6905
diff changeset
95 setStyle(new XYStyle(theme, shape));
6876
a071f0a80883 FixA W/Q Diagram: Allow duplicate points. It should work but it doesn't. :-/
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5994
diff changeset
96 this.label = key.toString();
a071f0a80883 FixA W/Q Diagram: Allow duplicate points. It should work but it doesn't. :-/
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5994
diff changeset
97 }
a071f0a80883 FixA W/Q Diagram: Allow duplicate points. It should work but it doesn't. :-/
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5994
diff changeset
98
a071f0a80883 FixA W/Q Diagram: Allow duplicate points. It should work but it doesn't. :-/
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5994
diff changeset
99
2321
991e4a5df323 Enabled styling in timeseries charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2076
diff changeset
100 @Override
991e4a5df323 Enabled styling in timeseries charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2076
diff changeset
101 public void setStyle(Style style) {
991e4a5df323 Enabled styling in timeseries charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2076
diff changeset
102 this.style = style;
2076
41037d51c8b6 Added support for pointsize in chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2074
diff changeset
103 }
41037d51c8b6 Added support for pointsize in chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2074
diff changeset
104
41037d51c8b6 Added support for pointsize in chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2074
diff changeset
105
2321
991e4a5df323 Enabled styling in timeseries charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2076
diff changeset
106 @Override
991e4a5df323 Enabled styling in timeseries charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2076
diff changeset
107 public Style getStyle() {
991e4a5df323 Enabled styling in timeseries charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2076
diff changeset
108 return style;
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
109 }
2652
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
110
3076
5642a83420f2 FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2652
diff changeset
111
2652
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
112 @Override
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
113 public String getLabel() {
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
114 return label;
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
115 }
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
116
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
117 @Override
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
118 public void setLabel(String label) {
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
119 this.label = label;
9d2a06c3a134 Added DataType for lines that also stores width, use it. Added HasLabel interface for some series.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2321
diff changeset
120 }
3160
8c78c707aa2d Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3155
diff changeset
121
3155
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
122 protected void add(XYSeries series) {
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
123 List<XYDataItem> items = series.getItems();
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
124 add(items);
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
125 }
3160
8c78c707aa2d Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3155
diff changeset
126
3155
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
127 protected void add(List<XYDataItem> items) {
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
128 for(XYDataItem item : items) {
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
129 add(item.getXValue(), item.getYValue());
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
130 }
74c974b10c75 Output code to trackdown the linecolor problem
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
131 }
7891
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
132
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
133
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
134 @Override
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
135 public Map<String, String> getMetaData() {
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
136 return metaData;
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
137 }
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
138
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
139
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
140 @Override
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
141 public void putMetaData(Map<String, String> metaData,
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
142 Artifact artifact,
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
143 CallContext context) {
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
144 this.metaData = metaData;
8287
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
145 River river = new RiverAccess((D4EArtifact)artifact).getRiver();
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
146 String rivername = "";
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
147 String unit = "";
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
148 if (river != null) {
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
149 rivername = river.getName();
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
150 unit = river.getWstUnit().getName();
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
151 }
7891
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
152 if (metaData.containsKey("X")) {
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
153 this.metaData.put("X",
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
154 Resources.getMsg(
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
155 context.getMeta(),
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
156 metaData.get("X"),
8287
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
157 new Object[] { rivername }));
7891
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
158 }
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
159 if (metaData.containsKey("Y")) {
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
160 this.metaData.put("Y",
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
161 Resources.getMsg(
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
162 context.getMeta(),
8287
4c1f57839ae9 Avoid NPE if river is not accessible.
"Tom Gottfried <tom@intevation.de>"
parents: 8202
diff changeset
163 metaData.get("Y"), new Object[] { unit }));
7891
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
164 }
4fe290eddb43 Added metadata to styled series.
Raimund Renkert <rrenkert@intevation.de>
parents: 7541
diff changeset
165 }
2074
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
166 }
a026d005accd Moved JFreeChart specific classes to de.intevation.flys.jfree and added required imports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
167 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org