Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/FixingsOverviewService.java @ 4041:75a90d9d2024
Register new calculation mode 'extreme'.
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Fri, 05 Oct 2012 10:11:08 +0200 |
parents | 9c147bbffc36 |
children |
line wrap: on
line source
package de.intevation.flys.artifacts.services; import de.intevation.artifacts.CallMeta; import de.intevation.artifacts.GlobalContext; import de.intevation.artifacts.common.utils.XMLUtils; import de.intevation.flys.artifacts.model.FixingsFilterBuilder; import de.intevation.flys.artifacts.model.FixingsOverview.Fixing.Filter; import de.intevation.flys.artifacts.model.Range; import de.intevation.flys.artifacts.model.FixingsOverview; import de.intevation.flys.artifacts.model.FixingsOverviewFactory; import org.apache.log4j.Logger; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NodeList; public class FixingsOverviewService extends FLYSService { private static Logger log = Logger.getLogger(FixingsOverviewService.class); public FixingsOverviewService() { } @Override public Document doProcess( Document data, GlobalContext globalContext, CallMeta callMeta ) { log.debug("FixingsOverviewService.doProcess"); Document document = XMLUtils.newDocument(); NodeList nodes = data.getElementsByTagName("river"); String river = nodes.getLength() > 0 ? ((Element)nodes.item(0)).getAttribute("name") : ""; FixingsOverview overview = FixingsOverviewFactory.getOverview(river); if (overview != null) { FixingsFilterBuilder ffb = new FixingsFilterBuilder(data); Range range = ffb.getRange(); Filter filter = ffb.getFilter(); overview.generateOverview(document, range, filter); } else { log.warn("No overview for river '" + river + "' available."); } return document; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :