view artifacts/src/main/java/org/dive4elements/river/artifacts/states/StaticWQKmsState.java @ 5838:5aa05a7a34b7

Rename modules to more fitting names.
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 25 Apr 2013 15:23:37 +0200
parents flys-artifacts/src/main/java/org/dive4elements/river/artifacts/states/StaticWQKmsState.java@bd047b71ab37
children 4897a58c8746
line wrap: on
line source
package org.dive4elements.river.artifacts.states;

import java.util.List;

import org.apache.log4j.Logger;

import org.dive4elements.artifacts.CallContext;
import org.dive4elements.artifacts.CallMeta;

import org.dive4elements.artifactdatabase.state.Facet;

import org.dive4elements.river.artifacts.FLYSArtifact;
import org.dive4elements.river.artifacts.StaticWQKmsArtifact;

import org.dive4elements.river.artifacts.model.CrossSectionWaterLineFacet;
import org.dive4elements.river.artifacts.model.FacetTypes;
import org.dive4elements.river.artifacts.model.RelativePointFacet;
import org.dive4elements.river.artifacts.model.WQKms;
import org.dive4elements.river.artifacts.model.WQKmsFacet;

/**
 * Only state of WQKmsArtifact.
 */
public class StaticWQKmsState
extends      DefaultState
implements   FacetTypes
{
    /** The logger that is used in this state. */
    private static Logger logger = Logger.getLogger(StaticWQKmsState.class);


    /**
     * From this state can not be continued.
     */
    @Override
    protected String getUIProvider() {
        return "noinput";
    }


    /**
     * Compute, create Facets, do the same stuff as all the other states do.
     */
    protected Object compute(
        StaticWQKmsArtifact winfo,
        CallMeta      metaLocale,
        String        hash,
        List<Facet>   facets,
        Object        old
    ) {
        String id = getID();

        WQKms res = old instanceof WQKms
            ? (WQKms)old
            : winfo.getWQKms();

        WQKms wqkms = res;

        if (facets == null) {
            return res;
        }

        /*
         * TODO: re-enable HEIGHTMARKS_POINTS-thing

           String name;
           if (parts[0].equals(HEIGHTMARKS_POINTS)) {
               name = HEIGHTMARKS_POINTS;
           }
           else {
               name = STATIC_WQKMS;
           }
        */

        String wkmsName = wqkms.getName();
        Facet qfacet = new WQKmsFacet(
            STATIC_WQKMS_Q,
            wkmsName
            // TODO re-enable translations.
            /*
            Resources.getMsg(
                metaLocale,
                wkmsName,
                wkmsName)*/);
        facets.add(qfacet);

        Facet rpFacet = new RelativePointFacet(wkmsName);
        facets.add(rpFacet);

        wkmsName = "W (" + wkmsName + ")";

        Facet csFacet = new CrossSectionWaterLineFacet(0,
             wkmsName);
        facets.add(csFacet);

        Facet wfacet = new WQKmsFacet(
            STATIC_WQKMS_W,
            wkmsName
            /*
            // TODO re-enable translations.
            Resources.getMsg(
                metaLocale,
                wkmsName,
                wkmsName)*/);
        facets.add(wfacet);

        return res;
    }


    /**
     * Get data, create the facets.
     *
     * @param context Ignored.
     */
    @Override
    public Object computeFeed(
        FLYSArtifact artifact,
        String       hash,
        CallContext  context,
        List<Facet>  facets,
        Object       old
    ) {
        return compute((StaticWQKmsArtifact) artifact, context.getMeta(),
            hash, facets, old);
    }


    /**
     * Create the facets.
     * @param context Ignored.
     */
    @Override
    public Object computeInit(
        FLYSArtifact artifact,
        String       hash,
        Object       context,
        CallMeta     meta,
        List<Facet>  facets
    ) {
        return compute((StaticWQKmsArtifact) artifact, meta, hash, facets,
            null);
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org