Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/FixChartGenerator.java @ 4290:6aa8cd8da224
Display observation start time in measurement station tree
author | Björn Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Mon, 29 Oct 2012 10:04:56 +0100 |
parents | b81f328da582 |
children | dd8a63002fb8 |
line wrap: on
line source
package de.intevation.flys.exports.fixings; import de.intevation.artifacts.ArtifactNamespaceContext; import de.intevation.artifacts.CallContext; import de.intevation.artifacts.common.utils.XMLUtils; import de.intevation.flys.exports.XYChartGenerator; import java.io.OutputStream; import org.apache.log4j.Logger; import org.w3c.dom.Document; /** * Base class for FixChartGenerator. */ public abstract class FixChartGenerator extends XYChartGenerator { /** Private logger. */ private static Logger logger = Logger.getLogger(FixChartGenerator.class); public static final Double INVALID_KM = Double.valueOf(-1d); public static final String CURRENT_KM = "currentKm"; public static final String XPATH_CHART_CURRENTKM = "/art:action/art:attributes/art:currentKm/@art:km"; @Override public void init(Document request, OutputStream out, CallContext context) { super.init(request, out, context); Double currentKm = getCurrentKmFromRequest(request); if (logger.isDebugEnabled()) { logger.debug("currentKm = " + currentKm); } context.putContextValue(CURRENT_KM, currentKm); } public static final Double getCurrentKmFromRequest(Document request) { String km = XMLUtils.xpathString( request, XPATH_CHART_CURRENTKM, ArtifactNamespaceContext.INSTANCE); if (km == null) { return INVALID_KM; } try { return Double.valueOf(km); } catch (NumberFormatException nfe) { return INVALID_KM; } } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :