view flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/StaticWQKmsState.java @ 4215:c179cd02177d

Logout the current user Add code to the logout button to remove the current user from the session and to redirect the browser window to the login page. Part of flys/issue916 (Logout: "Abmelden" Knopf mit Funktion belegen)
author Björn Ricks <bjoern.ricks@intevation.de>
date Tue, 23 Oct 2012 09:59:16 +0200
parents d626ae185305
children 5a2c7d24fd29
line wrap: on
line source
package de.intevation.flys.artifacts.states;

import java.util.List;

import org.apache.log4j.Logger;

import de.intevation.artifacts.CallContext;
import de.intevation.artifacts.CallMeta;

import de.intevation.artifactdatabase.state.Facet;

import de.intevation.flys.artifacts.FLYSArtifact;
import de.intevation.flys.artifacts.StaticWQKmsArtifact;

import de.intevation.flys.artifacts.model.FacetTypes;
import de.intevation.flys.artifacts.model.WQKms;
import de.intevation.flys.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);

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

        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