comparison artifacts/src/main/java/org/dive4elements/river/exports/DurationCurveGenerator.java @ 9123:1cc7653ca84f

Cleanup of ChartGenerator and ChartGenerator2 code. Put some of the copy/pasted code into a common abstraction.
author gernotbelger
date Tue, 05 Jun 2018 19:21:16 +0200
parents 5e38e2924c07
children 740d65e4aa14
comparison
equal deleted inserted replaced
9122:b8e7f6becf78 9123:1cc7653ca84f
7 */ 7 */
8 8
9 package org.dive4elements.river.exports; 9 package org.dive4elements.river.exports;
10 10
11 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; 11 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet;
12 import org.dive4elements.artifacts.CallContext;
12 import org.dive4elements.river.artifacts.model.FacetTypes; 13 import org.dive4elements.river.artifacts.model.FacetTypes;
13 import org.dive4elements.river.artifacts.model.WQDay; 14 import org.dive4elements.river.artifacts.model.WQDay;
14 import org.dive4elements.river.jfree.Bounds; 15 import org.dive4elements.river.jfree.Bounds;
15 import org.dive4elements.river.jfree.RiverAnnotation; 16 import org.dive4elements.river.jfree.RiverAnnotation;
16 import org.dive4elements.river.jfree.StyledXYSeries; 17 import org.dive4elements.river.jfree.StyledXYSeries;
93 return axis; 94 return axis;
94 } 95 }
95 96
96 97
97 @Override 98 @Override
98 protected String getDefaultChartTitle() { 99 protected String getDefaultChartTitle(final CallContext context) {
99 return msg(I18N_CHART_TITLE, I18N_CHART_TITLE_DEFAULT); 100 return msg(I18N_CHART_TITLE, I18N_CHART_TITLE_DEFAULT);
100 } 101 }
101 102
102 103
103 @Override 104 @Override
104 protected String getDefaultChartSubtitle() { 105 protected String getDefaultChartSubtitle(final CallContext context) {
105 double[] dist = getRange(); 106 double[] dist = getRange();
106 107
107 Object[] args = new Object[] { 108 Object[] args = new Object[] {
108 getRiverName(), 109 getRiverName(),
109 dist[0] 110 dist[0]
112 return msg(I18N_CHART_SUBTITLE, "", args); 113 return msg(I18N_CHART_SUBTITLE, "", args);
113 } 114 }
114 115
115 116
116 @Override 117 @Override
117 protected String getDefaultXAxisLabel() { 118 protected String getDefaultXAxisLabel(final CallContext context) {
118 return msg(I18N_XAXIS_LABEL, I18N_XAXIS_LABEL_DEFAULT); 119 return msg(I18N_XAXIS_LABEL, I18N_XAXIS_LABEL_DEFAULT);
119 } 120 }
120 121
121 122
122 @Override 123 @Override
123 protected String getDefaultYAxisLabel(int index) { 124 protected String getDefaultYAxisLabel(int index) {
124 String label = "default"; 125 String label = "default";
125 if (index == YAXIS.W.idx) { 126 if (index == YAXIS.W.idx) {
126 label = msg(I18N_YAXIS_LABEL_W, new Object[] { getRiverUnit() }); 127 label = msg(I18N_YAXIS_LABEL_W, I18N_YAXIS_LABEL_W, new Object[] { getRiverUnit() });
127 } 128 }
128 else if (index == YAXIS.Q.idx) { 129 else if (index == YAXIS.Q.idx) {
129 label = msg(I18N_YAXIS_LABEL_Q); 130 label = msg(I18N_YAXIS_LABEL_Q);
130 } 131 }
131 132
190 191
191 if (name == null || name.length() == 0) { 192 if (name == null || name.length() == 0) {
192 log.error("No facet given. Cannot create dataset."); 193 log.error("No facet given. Cannot create dataset.");
193 return; 194 return;
194 } 195 }
196
197 final CallContext context = getContext();
195 198
196 if (name.equals(DURATION_W)) { 199 if (name.equals(DURATION_W)) {
197 doWOut( 200 doWOut(
198 (WQDay) artifactFacet.getData(context), 201 (WQDay) artifactFacet.getData(context),
199 artifactFacet, 202 artifactFacet,

http://dive4elements.wald.intevation.org