comparison artifacts/src/main/java/org/dive4elements/river/exports/process/BedQualityDensityProcessor.java @ 7987:98ca61cb58fb facet-metadata

Split bed quality facets and updated processors and state.
author Raimund Renkert <rrenkert@intevation.de>
date Wed, 02 Jul 2014 09:31:14 +0200
parents e844be34a606
children 5277483044d9
comparison
equal deleted inserted replaced
7986:b0cee7dfd6fe 7987:98ca61cb58fb
9 package org.dive4elements.river.exports.process; 9 package org.dive4elements.river.exports.process;
10 10
11 import java.util.Map; 11 import java.util.Map;
12 12
13 import org.apache.log4j.Logger; 13 import org.apache.log4j.Logger;
14 import org.jfree.data.xy.XYSeries;
15
16 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; 14 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet;
17 import org.dive4elements.artifacts.CallContext; 15 import org.dive4elements.artifacts.CallContext;
18 import org.dive4elements.river.artifacts.model.FacetTypes; 16 import org.dive4elements.river.artifacts.model.FacetTypes;
19 import org.dive4elements.river.exports.DiagramGenerator; 17 import org.dive4elements.river.exports.DiagramGenerator;
20 import org.dive4elements.river.exports.StyledSeriesBuilder; 18 import org.dive4elements.river.exports.StyledSeriesBuilder;
21 import org.dive4elements.river.jfree.StyledXYSeries; 19 import org.dive4elements.river.jfree.StyledXYSeries;
22 import org.dive4elements.river.themes.ThemeDocument; 20 import org.dive4elements.river.themes.ThemeDocument;
23
24 import org.dive4elements.river.artifacts.model.minfo.BedParametersResult;
25 21
26 public class BedQualityDensityProcessor extends DefaultProcessor { 22 public class BedQualityDensityProcessor extends DefaultProcessor {
27 23
28 private final static Logger logger = 24 private final static Logger logger =
29 Logger.getLogger(BedQualityDensityProcessor.class); 25 Logger.getLogger(BedQualityDensityProcessor.class);
41 ThemeDocument theme, 37 ThemeDocument theme,
42 boolean visible) { 38 boolean visible) {
43 CallContext context = generator.getCallContext(); 39 CallContext context = generator.getCallContext();
44 StyledXYSeries series = new StyledXYSeries(bundle.getFacetDescription(), 40 StyledXYSeries series = new StyledXYSeries(bundle.getFacetDescription(),
45 theme); 41 theme);
46 Object data = bundle.getData(context);
47 Map<String, String> metaData = bundle.getFacet().getMetaData(); 42 Map<String, String> metaData = bundle.getFacet().getMetaData();
48 series.putMetaData(metaData, bundle.getArtifact(), context); 43 series.putMetaData(metaData, bundle.getArtifact(), context);
49 yAxisLabel = metaData.get("Y"); 44 yAxisLabel = metaData.get("Y");
50 String facetName = bundle.getFacetName();
51 double [][] points;
52 45
53 if (facetName.equals(FacetTypes.BED_QUALITY_SEDIMENT_DENSITY_TOPLAYER)) { 46 Object data = bundle.getData(context);
54 points = ((BedParametersResult) data).getDensityCapData(); 47 if (!(data instanceof double[][])) {
55 } else if (facetName.equals(FacetTypes.BED_QUALITY_SEDIMENT_DENSITY_SUBLAYER)) { 48 logger.error("Unknown data type: " + data.getClass().getName());
56 points = ((BedParametersResult) data).getDensitySubData();
57 } else {
58 logger.error("Unknown facet name: " + facetName);
59 return; 49 return;
60 } 50 }
61 StyledSeriesBuilder.addPoints(series, points, true); 51
52 double[][] values = (double[][])data;
53 StyledSeriesBuilder.addPoints(series, values, true);
62 54
63 generator.addAxisSeries(series, axisName, visible); 55 generator.addAxisSeries(series, axisName, visible);
64 } 56 }
65 57
66 @Override 58 @Override

http://dive4elements.wald.intevation.org