view artifacts/src/main/java/org/dive4elements/river/artifacts/states/HWSDatacageState.java @ 5863:4897a58c8746

River artifacts: Added new copyright headers.
author Sascha L. Teichmann <teichmann@intevation.de>
date Sun, 28 Apr 2013 14:40:59 +0200
parents 5aa05a7a34b7
children 59ff03ff48f1
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.states;

import org.apache.log4j.Logger;
import org.w3c.dom.Element;

import org.dive4elements.artifacts.Artifact;
import org.dive4elements.artifacts.CallContext;
import org.dive4elements.artifacts.common.utils.XMLUtils.ElementCreator;
import org.dive4elements.river.artifacts.FLYSArtifact;


public class HWSDatacageState
extends DefaultState
{

    private static final Logger logger = Logger.getLogger(HWSDatacageState.class);

    @Override
    protected String getUIProvider() {
        return "hws_datacage_panel";
    }


    @Override
    protected Element createStaticData(
        FLYSArtifact   flys,
        ElementCreator creator,
        CallContext    cc,
        String         name,
        String         value,
        String         type
    ) {
        Element dataElement = creator.create("data");
        creator.addAttr(dataElement, "name", name, true);
        creator.addAttr(dataElement, "type", type, true);

        Element itemElement = creator.create("item");
        creator.addAttr(itemElement, "value", value, true);

        creator.addAttr(itemElement, "label", getLabel(cc, value), true);
        dataElement.appendChild(itemElement);

        return dataElement;
    }


    public static String getLabel(CallContext cc, String value) {
        logger.debug("Create label for value: " + value);

        return value;
    }


    @Override
    public boolean validate(Artifact artifact)
    throws IllegalArgumentException
    {
        FLYSArtifact flys = (FLYSArtifact) artifact;
        String hws = flys.getDataAsString("uesk.hws");
        logger.debug("hws: " + hws);
        return true;
    }


    /**
     * Returns the DGM specified in the parameters of <i>flys</i>.
     *
     * @param flys The FLYSArtifact that knows the ID of a DGM.
     *
     * @throws IllegalArgumentException If the FLYSArtifact doesn't know the ID
     * of a DGM.
     *
     * @return the DGM specified by FLYSArtifact's parameters.
     */
    public static String getHWS(FLYSArtifact flys)
    throws IllegalArgumentException
    {
        String hws= flys.getDataAsString("uesk.hws");
        if (hws == null) {
            return null;
        }

        logger.debug("Found selected hws: '" + hws + "'");

        return hws;
    }



}

http://dive4elements.wald.intevation.org