view flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DurationCurveState.java @ 687:06689035024c facets-slt

Added a compute() method to WINFOArtifact which acts as a dispatcher for different computations. It triggers a calculation based on ComputeCallbacks that are generated by the current states. flys-artifacts/branches/facets-slt@2127 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Thu, 16 Jun 2011 07:50:56 +0000
parents fdc898a134a7
children f8ac04b2dbd0
line wrap: on
line source
package de.intevation.flys.artifacts.states;

import java.util.List;

import org.apache.log4j.Logger;

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;

/**
 * The final state that will be reached after the duration curve calculation
 * mode has been chosen.
 *
 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
 */
public class DurationCurveState extends DefaultState {

    /** The logger that is used in this state.*/
    private static Logger logger = Logger.getLogger(DurationCurveState.class);

    public DurationCurveState() {
    }


    @Override
    public ComputeCallback createComputeCallback(
        String hash, FLYSArtifact flys)
    {
        final WINFOArtifact winfo = (WINFOArtifact) flys;

        return new ComputeCallback() {
            public Object compute(List<Facet> facets) {
                return winfo.getDurationCurveData();
            }
        };
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org