Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/MainValuesWFacet.java @ 1946:a584a26d5fde
Introduce pre-rendering inter-facet communication phase ('blackboard pass').
flys-artifacts/trunk@3336 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Wed, 30 Nov 2011 10:18:38 +0000 |
parents | f6a190f6aaff |
children | 3b08b8aacfb0 |
line wrap: on
line source
package de.intevation.flys.artifacts.model; import java.util.ArrayList; import java.util.List; import org.jfree.chart.annotations.XYTextAnnotation; import de.intevation.artifacts.Artifact; import de.intevation.artifacts.CallContext; import de.intevation.artifactdatabase.state.DefaultFacet; import de.intevation.flys.artifacts.MainValuesArtifact; import de.intevation.flys.artifacts.model.FacetTypes; import de.intevation.flys.jfree.FLYSAnnotation; import de.intevation.flys.jfree.StickyAxisAnnotation; /** * Facet to show Main W Values. */ public class MainValuesWFacet extends DefaultFacet implements FacetTypes { /** Trivial Constructor. */ public MainValuesWFacet(String name, String description) { this.description = description; this.name = name; index = 0; } /** * Returns the data this facet requires. * * @param artifact the owner artifact. * @param context the CallContext (ignored). * * @return the data. */ @Override public Object getData(Artifact artifact, CallContext context) { MainValuesArtifact mvArtifact = (MainValuesArtifact) artifact; List<NamedDouble> ws = mvArtifact.getMainValuesW(); List<XYTextAnnotation> xy = new ArrayList<XYTextAnnotation>(); for (NamedDouble w: ws) { xy.add(new StickyAxisAnnotation( w.getName(), (float) w.getValue(), StickyAxisAnnotation.SimpleAxis.Y_AXIS)); } return new FLYSAnnotation(description, xy); } /** * Create a deep copy of this Facet. * @return a deep copy. */ @Override public MainValuesWFacet deepCopy() { MainValuesWFacet copy = new MainValuesWFacet(this.name, description); copy.set(this); return copy; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :