view flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/HistoricalDischargeDifferenceFacet.java @ 4187:21f4e4b79121

Refactor GaugeDischargeCurveFacet to be able to set a facet name For adding another output of the GaugeDischargeCurveArtifact it is necessary to provide to facet instances with different names. Therefore the GaugeDischargeCurveFacet is extended to set the facet name in the constructor.
author Björn Ricks <bjoern.ricks@intevation.de>
date Fri, 19 Oct 2012 13:25:49 +0200
parents b8df8d1476ba
children 49cb65d5932d
line wrap: on
line source
package de.intevation.flys.artifacts.model;

import org.apache.log4j.Logger;

import de.intevation.artifacts.Artifact;
import de.intevation.artifacts.CallContext;

import de.intevation.flys.artifacts.FLYSArtifact;
import de.intevation.flys.artifacts.states.DefaultState.ComputeType;


/**
 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
 */
public class HistoricalDischargeDifferenceFacet
extends      HistoricalDischargeFacet
{
    private static final Logger logger =
        Logger.getLogger(HistoricalDischargeDifferenceFacet.class);


    public HistoricalDischargeDifferenceFacet(
        int    index,
        String name,
        String desc
    ) {
        super(index, name, desc, ComputeType.ADVANCE, null, null);
    }


    public HistoricalDischargeDifferenceFacet(
        int         index,
        String      name,
        String      description,
        ComputeType type,
        String      stateID,
        String      hash

    ) {
        super(index, name, description, type, hash, stateID);
    }


    @Override
    public Object getData(Artifact artifact, CallContext context) {
        if (logger.isDebugEnabled()) {
            logger.debug("Get data for historical discharge difference curves" +
                " at index: " + index + " / stateId: " + stateId);
        }

        FLYSArtifact flys = (FLYSArtifact) artifact;

        CalculationResult res = (CalculationResult)
            flys.compute(context, hash, stateId, type,  false);

        HistoricalWQTimerange[] wqts = (HistoricalWQTimerange[]) res.getData();

        return wqts[index];
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org