comparison artifacts/src/main/java/org/dive4elements/river/exports/process/BedQualityPorosityProcessor.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 import org.dive4elements.river.artifacts.model.minfo.Porosity;
26 21
27 public class BedQualityPorosityProcessor extends DefaultProcessor { 22 public class BedQualityPorosityProcessor extends DefaultProcessor {
28 23
29 private final static Logger logger = 24 private final static Logger logger =
30 Logger.getLogger(BedQualityPorosityProcessor.class); 25 Logger.getLogger(BedQualityPorosityProcessor.class);
46 Map<String, String> metaData = bundle.getFacet().getMetaData(); 41 Map<String, String> metaData = bundle.getFacet().getMetaData();
47 StyledXYSeries series = new StyledXYSeries(bundle.getFacetDescription(), 42 StyledXYSeries series = new StyledXYSeries(bundle.getFacetDescription(),
48 theme); 43 theme);
49 series.putMetaData(metaData, bundle.getArtifact(), context); 44 series.putMetaData(metaData, bundle.getArtifact(), context);
50 yAxisLabel = metaData.get("Y"); 45 yAxisLabel = metaData.get("Y");
51 Object data = bundle.getData(context);
52 String facetName = bundle.getFacetName();
53 double [][] points;
54 46
55 if (facetName.equals(FacetTypes.BED_QUALITY_POROSITY_TOPLAYER)) { 47 Object raw = bundle.getData(context);
56 points = ((BedParametersResult) data).getPorosityCapData(); 48 if (!(raw instanceof double[][])) {
57 } else if (facetName.equals(FacetTypes.BED_QUALITY_POROSITY_SUBLAYER)) { 49 logger.error("Unknown data type: " + raw.getClass().getName());
58 points = ((BedParametersResult) data).getPorositySubData();
59 } else if (facetName.equals(FacetTypes.POROSITY)) {
60 points = ((Porosity)data).getAsArray();
61 } else {
62 logger.error("Unknown facet name: " + facetName);
63 return; 50 return;
64 } 51 }
65 StyledSeriesBuilder.addPoints(series, points, true); 52
53 double[][] values = (double[][])raw;
54 StyledSeriesBuilder.addPoints(series, values, true);
66 55
67 generator.addAxisSeries(series, axisName, visible); 56 generator.addAxisSeries(series, axisName, visible);
68 } 57 }
69 58
70 @Override 59 @Override

http://dive4elements.wald.intevation.org