view flys-client/src/main/java/de/intevation/flys/client/server/ArtifactServiceImpl.java @ 4253:a1bc5b8cff0f

Refactor GaugePanel to create it's own SectionStackSection The GaugePanel constructor now creates a SectionStackSection instead of using a provided one. Improve the rendering of the GaugePanel by having access to the SmartGWT wrapper (WidgetCanvas) object for the GWT Tree (GaugeTree) directly. Add methods to close and open the section. Also add a getter for the section.
author Björn Ricks <bjoern.ricks@intevation.de>
date Thu, 25 Oct 2012 13:52:58 +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