Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/ReferenceCurveState.java @ 3820:8a75cf0841b1 pre2.7-2012-03-16
merged flys-backend/pre2.7-2012-03-16
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Fri, 28 Sep 2012 12:14:59 +0200 |
parents | c321b39b39ab |
children | 23b4ff116015 |
line wrap: on
line source
package de.intevation.flys.artifacts.states; import de.intevation.artifactdatabase.state.Facet; import de.intevation.artifacts.CallContext; import de.intevation.flys.artifacts.FLYSArtifact; import de.intevation.flys.artifacts.WINFOArtifact; import de.intevation.flys.artifacts.model.CalculationResult; import de.intevation.flys.artifacts.model.DataFacet; import de.intevation.flys.artifacts.model.FacetTypes; import de.intevation.flys.artifacts.model.ReferenceCurveFacet; import de.intevation.flys.artifacts.model.ReportFacet; import de.intevation.flys.artifacts.model.WWQQ; import java.util.List; import org.apache.log4j.Logger; public class ReferenceCurveState extends DefaultState implements FacetTypes { private static Logger logger = Logger.getLogger(ReferenceCurveState.class); public ReferenceCurveState() { } @Override public Object computeAdvance( FLYSArtifact artifact, String hash, CallContext context, List<Facet> facets, Object old ) { if (!(artifact instanceof WINFOArtifact)) { return null; } String id = getID(); WINFOArtifact winfo = (WINFOArtifact)artifact; CalculationResult res = old instanceof CalculationResult ? (CalculationResult)old : winfo.getReferenceCurveData(context); if (facets == null) { return res; } WWQQ [] wws = (WWQQ [])res.getData(); for (int i = 0; i < wws.length; ++i) { String wwsName = wws[i].getName(); facets.add(new ReferenceCurveFacet(i, REFERENCE_CURVE, wwsName )); facets.add(new ReferenceCurveFacet(i, REFERENCE_CURVE_NORMALIZED, wwsName )); } if (wws.length > 0) { logger.debug("Adding CSV and PDF data facet."); Facet csv = new DataFacet (CSV, "CSV data", ComputeType.ADVANCE, hash, id); Facet pdf = new DataFacet (PDF, "PDF data", ComputeType.ADVANCE, hash, id); facets.add(csv); facets.add(pdf); } if (res.getReport().hasProblems()) { facets.add(new ReportFacet(ComputeType.ADVANCE, hash, id)); } return res; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :