view artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/BedHeightFacet.java @ 7373:793dfb2f4b7b

Removed obsolete imports.
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 17 Oct 2013 12:14:10 +0200
parents 9d3e44ab25f2
children 9513d1af7d58
line wrap: on
line source
/* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
 * Software engineering by Intevation GmbH
 *
 * This file is Free Software under the GNU AGPL (>=v3)
 * and comes with ABSOLUTELY NO WARRANTY! Check out the
 * documentation coming with Dive4Elements River for details.
 */

package org.dive4elements.river.artifacts.model.minfo;

import org.dive4elements.artifacts.Artifact;
import org.dive4elements.artifacts.CallContext;
import org.dive4elements.river.artifacts.D4EArtifact;
import org.dive4elements.river.artifacts.access.BedHeightAccess;
import org.dive4elements.river.artifacts.model.BlackboardDataFacet;
import org.dive4elements.river.artifacts.model.FacetTypes;
import org.dive4elements.river.model.BedHeightSingle;
import org.dive4elements.river.model.BedHeightSingleValue;

public class BedHeightFacet
extends      BlackboardDataFacet
implements   FacetTypes {

    private String type;

    public BedHeightFacet(String name, String description, String type) {
        this.name = name;
        this.description = description;
        this.type = type;
        this.index = 0;
    }

    /**
     * Returns the data this facet requires.
     *
     * @param artifact the owner artifact.
     * @param context  the CallContext (ignored).
     *
     * @return the data.
     */
    @Override
    public Object getData(Artifact artifact, CallContext context) {
        BedHeightAccess access = new BedHeightAccess((D4EArtifact)artifact);
        if (type.equals("singlevalues")) {
            /* Former doc (from BedHeightAccess):
             * Return a {@link List} of {@link BedHeightSingleValue}s
             * at the range of the artifact
             * @return List of {@link BedHeightSingleValue}s
             */
            BedHeightSingle single = BedHeightSingle.getBedHeightSingleById(
                    access.getHeightId());
            return BedHeightSingleValue.getBedHeightSingleValues(single,
                    access.getFrom(),
                    access.getTo());
        }
        else {
            /* Former doc (from BedHeightAccess):
             * Return the {@link BedHeight} at the height_id and time of the artifact
             * @return {@link BedHeight}
             */
            return BedHeightFactory.getHeight(
                access.getType(),
                access.getHeightId(),
                access.getTime());
        }
    }

    /**
     * Create a deep copy of this Facet.
     * @return a deep copy.
     */
    @Override
    public BedHeightFacet deepCopy() {
        BedHeightFacet copy = new BedHeightFacet(name, description, type);
        copy.set(this);
        return copy;
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org