Mercurial > dive4elements > river
diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java @ 3749:3dcc4feff243
Created the initial structure for MINFO bed quality chart generation.
flys-artifacts/trunk@5439 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 12 Sep 2012 13:37:58 +0000 |
parents | f3717e625b0a |
children | e560a9a10eb1 |
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java Tue Sep 11 14:46:09 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java Wed Sep 12 13:37:58 2012 +0000 @@ -1,7 +1,49 @@ package de.intevation.flys.artifacts.states.minfo; +import java.util.ArrayList; +import java.util.List; + +import org.apache.log4j.Logger; + +import de.intevation.artifactdatabase.state.Facet; +import de.intevation.artifacts.CallContext; +import de.intevation.flys.artifacts.FLYSArtifact; +import de.intevation.flys.artifacts.access.BedQualityAccess; +import de.intevation.flys.artifacts.model.BedQualityCalculation; +import de.intevation.flys.artifacts.model.CalculationResult; import de.intevation.flys.artifacts.states.DefaultState; public class BedQualityState extends DefaultState { + + private static final Logger logger = Logger.getLogger(BedQualityState.class); + + @Override + public Object computeAdvance( + FLYSArtifact artifact, + String hash, + CallContext context, + List<Facet> facets, + Object old + ) { + logger.debug("BedQualityState.computeAdvance"); + List<Facet> newFacets = new ArrayList<Facet>(); + + BedQualityAccess access = new BedQualityAccess(artifact); + + CalculationResult res = old instanceof CalculationResult + ? (CalculationResult) old + : new BedQualityCalculation().calculate(access); + + if (facets == null || res == null) { + return res; + } + + logger.debug("Created " + newFacets.size() + " new Facets."); + + facets.addAll(newFacets); + + return res; + } } +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : \ No newline at end of file