Mercurial > dive4elements > river
diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java @ 692:22e4bffbe240 facets-slt
Generated facets for each output aspect.
flys-artifacts/branches/facets-slt@2132 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Thu, 16 Jun 2011 10:05:44 +0000 |
parents | f8ac04b2dbd0 |
children | 708b270dfd30 |
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java Thu Jun 16 09:04:59 2011 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java Thu Jun 16 10:05:44 2011 +0000 @@ -4,12 +4,18 @@ import org.apache.log4j.Logger; +import de.intevation.artifacts.CallContext; + +import de.intevation.artifactdatabase.state.DefaultFacet; import de.intevation.artifactdatabase.state.Facet; import de.intevation.flys.artifacts.FLYSArtifact; import de.intevation.flys.artifacts.WINFOArtifact; import de.intevation.flys.artifacts.model.ComputeCallback; import de.intevation.flys.artifacts.model.ComputeCallbackAdapter; +import de.intevation.flys.artifacts.model.FacetTypes; +import de.intevation.flys.artifacts.model.WQDay; +import de.intevation.flys.artifacts.resources.Resources; /** * The final state that will be reached after the duration curve calculation @@ -17,8 +23,10 @@ * * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ -public class DurationCurveState extends DefaultState { - +public class DurationCurveState +extends DefaultState +implements FacetTypes +{ /** The logger that is used in this state.*/ private static Logger logger = Logger.getLogger(DurationCurveState.class); @@ -35,8 +43,40 @@ return new ComputeCallbackAdapter() { @Override - public Object computeAdvance(List<Facet> facets) { - return winfo.getDurationCurveData(); + public Object computeAdvance( + CallContext context, + List<Facet> facets) + { + WQDay res = winfo.getDurationCurveData(); + + if (res == null) { + logger.debug("No results given."); + return null; + } + + Object[] args = new Object[] { + winfo.getRiver().getName() + }; + + String nameW = Resources.getMsg( + context.getMeta(), + "chart.duration.curve.curve.w", + "", + args); + + String nameQ = Resources.getMsg( + context.getMeta(), + "chart.duration.curve.curve.q", + "", + args); + + Facet w = new DefaultFacet(0, DURATION_W, nameW); + Facet q = new DefaultFacet(0, DURATION_Q, nameQ); + + facets.add(w); + facets.add(q); + + return res; } }; }