Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/HWSDatacageState.java @ 5818:a4ff4167be1e
Request feature info on all layers and show it as html if
the server does not return valid gml.
Non queryable layers produce an error message when the request
fails. This is good enough
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Wed, 24 Apr 2013 17:33:27 +0200 |
parents | 11c853b0854a |
children |
line wrap: on
line source
package de.intevation.flys.artifacts.states; import org.apache.log4j.Logger; import org.w3c.dom.Element; import de.intevation.artifacts.Artifact; import de.intevation.artifacts.CallContext; import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator; import de.intevation.flys.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; } }