view flys-client/src/main/java/de/intevation/flys/client/server/ArtifactServiceImpl.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 436eec3be6ff
children b660090b417d
line wrap: on
line source
package de.intevation.flys.client.server;

import org.apache.log4j.Logger;

import com.google.gwt.user.server.rpc.RemoteServiceServlet;

import de.intevation.flys.client.shared.exceptions.ServerException;
import de.intevation.flys.client.shared.model.Artifact;
import de.intevation.flys.client.client.services.ArtifactService;

import de.intevation.flys.client.shared.model.Collection;
import de.intevation.flys.client.shared.model.Recommendation;

/**
 * This interface provides artifact specific services as CREATE, DESCRIBE, FEED,
 * ADVANCE and OUT.
 *
 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
 */
public class ArtifactServiceImpl
extends      RemoteServiceServlet
implements   ArtifactService
{
    /** Private logger. */
    private static final Logger logger =
        Logger.getLogger(ArtifactServiceImpl.class);


    /**
     * Creates new Artifacts based on a given Recommendation and factory.
     * <b>Note, that all the work is done in ArtifactHelper!</b>
     *
     * @param locale The locale used for HTTP request.
     * @param factory The factory that is used to create the new Artifact.
     * @param recom Recommendation with details of the artifact to create.
     *
     * @return a new Artifact.
     */
    public Artifact create(
        String         locale,
        String         factory,
        Recommendation recom
    )
    throws ServerException
    {
        logger.info("ArtifactServiceImpl.create");

        String url  = getServletContext().getInitParameter("server-url");

        return ArtifactHelper.createArtifact(url, locale, factory, recom);
    }

    /**
     * Create a new GaugeDischageCurveArtifact
     *
     * @param river    the river
     * @param gaugeref reference id of the gauge
     */
    public Artifact createGaugeDischargeCurveArtifact(
            Collection collection,
            String locale,
            String river,
            Long   gaugeref)
    throws ServerException
    {
        logger.info("ArtifactServiceImpl.createGaugeDischargeCurverArtifact");
        String url  = getServletContext().getInitParameter("server-url");

        Artifact artifact = ArtifactHelper.createGaugeDischargeCurveArtifact(url,
                locale, river, gaugeref);
        if (artifact == null) {
            return null;
        }
        logger.info("GaugeDischargeCurveArtifact created successfully");

        CollectionHelper.addArtifact(collection, artifact, url, locale);

        return artifact;
    }

}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org