Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/states/SQRelation.java @ 8264:4d99606a844e
SQ relation overview is now a single chart containing all fractions.
* Added new facet types.
* Add new facets for the overview chart.
* Removed generator code for the old overview.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Fri, 12 Sep 2014 14:55:42 +0200 |
parents | af13ceeba52a |
children | e8283197d889 |
comparison
equal
deleted
inserted
replaced
8262:9321b0cd4ad4 | 8264:4d99606a844e |
---|---|
84 SQ_D_OUTLIER_CURVE, SQ_E_OUTLIER_CURVE, SQ_F_OUTLIER_CURVE | 84 SQ_D_OUTLIER_CURVE, SQ_E_OUTLIER_CURVE, SQ_F_OUTLIER_CURVE |
85 }, | 85 }, |
86 { SQ_A_OUTLIER_MEASUREMENT, SQ_B_OUTLIER_MEASUREMENT, | 86 { SQ_A_OUTLIER_MEASUREMENT, SQ_B_OUTLIER_MEASUREMENT, |
87 SQ_C_OUTLIER_MEASUREMENT, SQ_D_OUTLIER_MEASUREMENT, | 87 SQ_C_OUTLIER_MEASUREMENT, SQ_D_OUTLIER_MEASUREMENT, |
88 SQ_E_OUTLIER_MEASUREMENT, SQ_F_OUTLIER_MEASUREMENT | 88 SQ_E_OUTLIER_MEASUREMENT, SQ_F_OUTLIER_MEASUREMENT |
89 } | |
90 }; | |
91 | |
92 public static final String [][] OV_FACET_NAMES = { | |
93 { SQ_A_CURVE_OV, SQ_B_CURVE_OV, SQ_C_CURVE_OV, | |
94 SQ_D_CURVE_OV, SQ_E_CURVE_OV, SQ_F_CURVE_OV | |
95 }, | |
96 { SQ_A_MEASUREMENT_OV, SQ_B_MEASUREMENT_OV, SQ_C_MEASUREMENT_OV, | |
97 SQ_D_MEASUREMENT_OV, SQ_E_MEASUREMENT_OV, SQ_F_MEASUREMENT_OV | |
98 }, | |
99 { SQ_A_OUTLIER_OV, SQ_B_OUTLIER_OV, SQ_C_OUTLIER_OV, | |
100 SQ_D_OUTLIER_OV, SQ_E_OUTLIER_OV, SQ_F_OUTLIER_OV | |
101 }, | |
102 { SQ_A_OUTLIER_CURVE_OV, SQ_B_OUTLIER_CURVE_OV, SQ_C_OUTLIER_CURVE_OV, | |
103 SQ_D_OUTLIER_CURVE_OV, SQ_E_OUTLIER_CURVE_OV, SQ_F_OUTLIER_CURVE_OV | |
104 }, | |
105 { SQ_A_OUTLIER_MEASUREMENT_OV, SQ_B_OUTLIER_MEASUREMENT_OV, | |
106 SQ_C_OUTLIER_MEASUREMENT_OV, SQ_D_OUTLIER_MEASUREMENT_OV, | |
107 SQ_E_OUTLIER_MEASUREMENT_OV, SQ_F_OUTLIER_MEASUREMENT_OV | |
89 } | 108 } |
90 }; | 109 }; |
91 | 110 |
92 | 111 |
93 static { | 112 static { |
107 name, FACET_NAMES[CURVE_INDEX]) | 126 name, FACET_NAMES[CURVE_INDEX]) |
108 || StringUtils.contains( | 127 || StringUtils.contains( |
109 name, FACET_NAMES[OUTLIER_INDEX]) | 128 name, FACET_NAMES[OUTLIER_INDEX]) |
110 || StringUtils.contains( | 129 || StringUtils.contains( |
111 name, FACET_NAMES[MEASURREMENT_INDEX]) | 130 name, FACET_NAMES[MEASURREMENT_INDEX]) |
131 || StringUtils.contains( | |
132 name, OV_FACET_NAMES[CURVE_INDEX]) | |
133 || StringUtils.contains( | |
134 name, OV_FACET_NAMES[OUTLIER_INDEX]) | |
135 || StringUtils.contains( | |
136 name, OV_FACET_NAMES[MEASURREMENT_INDEX]) | |
112 ) { | 137 ) { |
113 // TODO: Only the last should be active. | 138 // TODO: Only the last should be active. |
114 return Boolean.TRUE; | 139 return Boolean.TRUE; |
115 } | 140 } |
116 | 141 |
117 if (StringUtils.contains( | 142 if (StringUtils.contains( |
118 name, FACET_NAMES[OUTLIER_CURVE_INDEX]) | 143 name, FACET_NAMES[OUTLIER_CURVE_INDEX]) |
119 || StringUtils.contains( | 144 || StringUtils.contains( |
120 name, FACET_NAMES[OUTLIER_MEASUREMENT_INDEX]) | 145 name, FACET_NAMES[OUTLIER_MEASUREMENT_INDEX]) |
146 || StringUtils.contains( | |
147 name, OV_FACET_NAMES[OUTLIER_CURVE_INDEX]) | |
148 || StringUtils.contains( | |
149 name, OV_FACET_NAMES[OUTLIER_MEASUREMENT_INDEX]) | |
121 ) { | 150 ) { |
122 return Boolean.FALSE; | 151 return Boolean.FALSE; |
123 } | 152 } |
124 | 153 |
125 return null; | 154 return null; |
179 ) { | 208 ) { |
180 boolean debug = log.isDebugEnabled(); | 209 boolean debug = log.isDebugEnabled(); |
181 | 210 |
182 CallMeta meta = context.getMeta(); | 211 CallMeta meta = context.getMeta(); |
183 String stateId = getID(); | 212 String stateId = getID(); |
184 for (int i = 0; i < 6; i++) { | |
185 container.add(new SQOverviewFacet( | |
186 i, | |
187 i, | |
188 "sq_chart_overview", | |
189 Resources.getMsg( | |
190 meta, | |
191 I18N_FACET_CURVE, | |
192 I18N_FACET_CURVE | |
193 ), | |
194 hash, | |
195 getID() | |
196 )); | |
197 } | |
198 for (int res = 0, n = sqr.length; res < n; res++) { | 213 for (int res = 0, n = sqr.length; res < n; res++) { |
199 | 214 |
200 for (int i = 0; i < SQResult.NUMBER_FRACTIONS; i++) { | 215 for (int i = 0; i < SQResult.NUMBER_FRACTIONS; i++) { |
201 SQFractionResult result = sqr[res].getFraction(i); | 216 SQFractionResult result = sqr[res].getFraction(i); |
202 | 217 |
216 ), | 231 ), |
217 hash, | 232 hash, |
218 stateId | 233 stateId |
219 )); | 234 )); |
220 | 235 |
236 container.add(new SQCurveFacet( | |
237 res, | |
238 i, | |
239 getFractionOverviewFacetname(CURVE_INDEX, i), | |
240 sqr[res].getFractionName(i) + " - " + | |
241 Resources.getMsg( | |
242 meta, | |
243 I18N_FACET_CURVE, | |
244 I18N_FACET_CURVE | |
245 ), | |
246 hash, | |
247 stateId | |
248 )); | |
249 | |
221 for (int j = 0, C = result.numIterations()-1; j < C; j++) { | 250 for (int j = 0, C = result.numIterations()-1; j < C; j++) { |
222 | 251 |
223 Object [] round = new Object [] { j + 1 }; | 252 Object [] round = new Object [] { j + 1 }; |
224 | 253 |
225 int index = res; | 254 int index = res; |
235 | 264 |
236 container.add(new SQOutlierFacet( | 265 container.add(new SQOutlierFacet( |
237 index, | 266 index, |
238 i, | 267 i, |
239 getFractionFacetname(OUTLIER_INDEX, i), | 268 getFractionFacetname(OUTLIER_INDEX, i), |
269 Resources.getMsg( | |
270 meta, | |
271 I18N_FACET_OUTLIERS, | |
272 I18N_FACET_OUTLIERS, | |
273 round | |
274 ), | |
275 hash, | |
276 stateId | |
277 )); | |
278 container.add(new SQOutlierFacet( | |
279 index, | |
280 i, | |
281 getFractionOverviewFacetname(OUTLIER_INDEX, i), | |
282 sqr[res].getFractionName(i) + " - " + | |
240 Resources.getMsg( | 283 Resources.getMsg( |
241 meta, | 284 meta, |
242 I18N_FACET_OUTLIERS, | 285 I18N_FACET_OUTLIERS, |
243 I18N_FACET_OUTLIERS, | 286 I18N_FACET_OUTLIERS, |
244 round | 287 round |
258 round | 301 round |
259 ), | 302 ), |
260 hash, | 303 hash, |
261 stateId | 304 stateId |
262 )); | 305 )); |
306 container.add(new SQOutlierCurveFacet( | |
307 index, | |
308 i, | |
309 getFractionOverviewFacetname(OUTLIER_CURVE_INDEX, i), | |
310 sqr[res].getFractionName(i) + " - " + | |
311 Resources.getMsg( | |
312 meta, | |
313 I18N_FACET_OUTLIER_CURVE, | |
314 I18N_FACET_OUTLIER_CURVE, | |
315 round | |
316 ), | |
317 hash, | |
318 stateId | |
319 )); | |
263 | 320 |
264 container.add(new SQOutlierMeasurementFacet( | 321 container.add(new SQOutlierMeasurementFacet( |
265 index, | 322 index, |
266 i, | 323 i, |
267 getFractionFacetname(OUTLIER_MEASUREMENT_INDEX, i), | 324 getFractionFacetname(OUTLIER_MEASUREMENT_INDEX, i), |
325 Resources.getMsg( | |
326 meta, | |
327 I18N_FACET_OUTLIER_MEASUREMENT, | |
328 I18N_FACET_OUTLIER_MEASUREMENT, | |
329 round | |
330 ), | |
331 hash, | |
332 stateId | |
333 )); | |
334 container.add(new SQOutlierMeasurementFacet( | |
335 index, | |
336 i, | |
337 getFractionOverviewFacetname(OUTLIER_MEASUREMENT_INDEX, i), | |
338 sqr[res].getFractionName(i) + " - " + | |
268 Resources.getMsg( | 339 Resources.getMsg( |
269 meta, | 340 meta, |
270 I18N_FACET_OUTLIER_MEASUREMENT, | 341 I18N_FACET_OUTLIER_MEASUREMENT, |
271 I18N_FACET_OUTLIER_MEASUREMENT, | 342 I18N_FACET_OUTLIER_MEASUREMENT, |
272 round | 343 round |
286 I18N_FACET_MEASUREMENTS | 357 I18N_FACET_MEASUREMENTS |
287 ), | 358 ), |
288 hash, | 359 hash, |
289 stateId | 360 stateId |
290 )); | 361 )); |
362 container.add(new SQMeasurementFacet( | |
363 res, | |
364 i, | |
365 getFractionOverviewFacetname(MEASURREMENT_INDEX, i), | |
366 sqr[res].getFractionName(i) + " - " + | |
367 Resources.getMsg( | |
368 meta, | |
369 I18N_FACET_MEASUREMENTS, | |
370 I18N_FACET_MEASUREMENTS | |
371 ), | |
372 hash, | |
373 stateId | |
374 )); | |
291 } // for all fractions | 375 } // for all fractions |
292 } // for all results | 376 } // for all results |
293 } | 377 } |
294 | 378 |
295 protected static String getFractionFacetname(int type, int idx) { | 379 protected static String getFractionFacetname(int type, int idx) { |
297 log.debug("getFractionFacetname(): " + type + " | " + idx); | 381 log.debug("getFractionFacetname(): " + type + " | " + idx); |
298 } | 382 } |
299 type %= FACET_NAMES.length; | 383 type %= FACET_NAMES.length; |
300 return FACET_NAMES[type][idx % FACET_NAMES[type].length]; | 384 return FACET_NAMES[type][idx % FACET_NAMES[type].length]; |
301 } | 385 } |
386 | |
387 protected static String getFractionOverviewFacetname(int type, int idx) { | |
388 if (log.isDebugEnabled()) { | |
389 log.debug("getFractionOverviewFacetname(): " + type + " | " + idx); | |
390 } | |
391 type %= OV_FACET_NAMES.length; | |
392 return OV_FACET_NAMES[type][idx % OV_FACET_NAMES[type].length]; | |
393 } | |
302 } | 394 } |
303 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : | 395 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : |