view artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/vegetationzones/VegetationZonesTableState.java @ 9403:e2da9c8a7c57

VegetationZone umbenennen
author gernotbelger
date Wed, 15 Aug 2018 13:22:00 +0200
parents e511eb935ccd
children 709a73badd48
line wrap: on
line source
/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
 * Software engineering by
 *  Björnsen Beratende Ingenieure GmbH
 *  Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
 *
 * 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.uinfo.vegetationzones;

import org.dive4elements.artifactdatabase.ProtocolUtils;
import org.dive4elements.artifacts.Artifact;
import org.dive4elements.artifacts.CallContext;
import org.dive4elements.artifacts.common.utils.XMLUtils.ElementCreator;
import org.dive4elements.river.artifacts.D4EArtifact;
import org.dive4elements.river.artifacts.access.RiverAccess;
import org.dive4elements.river.artifacts.states.DefaultState;
import org.dive4elements.river.model.River;
import org.w3c.dom.Element;

/**
 * @author Domenico Nardi Tironi
 */
public class VegetationZonesTableState extends DefaultState {

    private static final long serialVersionUID = 1L;

    @Override
    protected String getUIProvider() {
        return "uinfo.vegetationzones.table";
    }

    // TODO GET REAL DATA
    @Override
    protected Element[] createItems(final ElementCreator cr, final Artifact artifact, final String name, final CallContext context) {
        final String datakey = "vegzones";
        if (name.equals(datakey)) {
            final Element item = ProtocolUtils.createArtNode(cr, "item", null, null);
            final Element label = ProtocolUtils.createArtNode(cr, "label", null, null);
            final Element value = ProtocolUtils.createArtNode(cr, "value", null, null);
            final D4EArtifact flys = (D4EArtifact) artifact;
            final River river = new RiverAccess(flys).getRiver();
            final String s = flys.getDataAsString(datakey) == null ? VegetationZoneServerClientXChange.parseListToDataString(VegetationZoneServerClientXChange.getStandardList(river, context))
                    : flys.getDataAsString(datakey);

            value.setTextContent(s);
            item.appendChild(label);
            item.appendChild(value);
            return new Element[] { item };
        }
        return new Element[] {};
    }
}

http://dive4elements.wald.intevation.org