Mercurial > dive4elements > gnv-client
diff gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/services/DummyMetaDataService.java @ 597:cf38b983d1f3
Added the Implementation of the MetaDataService which will deliver FIS and Parameters that match to Mapservices, Region and Layers that were sent to the Service.
gnv-artifacts/trunk@653 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Mon, 01 Feb 2010 14:52:05 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/services/DummyMetaDataService.java Mon Feb 01 14:52:05 2010 +0000 @@ -0,0 +1,93 @@ +/** + * + */ +package de.intevation.gnv.artifacts.services; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.Iterator; + +import org.apache.log4j.Logger; + +import com.vividsolutions.jts.geom.Geometry; + +import de.intevation.gnv.artifacts.services.requestobjects.DefaultFIS; +import de.intevation.gnv.artifacts.services.requestobjects.DefaultParameter; +import de.intevation.gnv.artifacts.services.requestobjects.FIS; +import de.intevation.gnv.artifacts.services.requestobjects.Layer; +import de.intevation.gnv.artifacts.services.requestobjects.MapService; +import de.intevation.gnv.artifacts.services.requestobjects.Parameter; + +/** + * Dummy of the MetaDataWebservice to simulate an answering Service + * until the Databasebackend will serve the required Data. + * bb + * @author Tim Englich <tim.englich@intevation.de> + * + */ +public class DummyMetaDataService extends MetaDataService{ + + /** + * the logger, used to log exceptions and additionally information + */ + private static Logger log = Logger.getLogger(DummyMetaDataService.class); + /** + * The UID of this Class. + */ + private static final long serialVersionUID = 4712607258043392650L; + + /** + * Constructor + */ + public DummyMetaDataService() { + super(); + } + + /** + * @see de.intevation.gnv.artifacts.services.MetaDataService#getFIS(java.util.Collection) + */ + @Override + protected Collection<FIS> getFIS(Collection<MapService> mapServices) + throws MetaDataServiceException { + log.debug("DummyMetaDataService.getFIS ==> MapServices"); + Collection<FIS> returnValue = null; + if (mapServices != null && !mapServices.isEmpty()){ + returnValue = new ArrayList<FIS>(mapServices.size()); + Iterator<MapService> mit = mapServices.iterator(); + while(mit.hasNext()){ + MapService mapService = mit.next(); + Collection<Layer> layer = mapService.getLayer(); + Collection<Parameter> parameter = + new ArrayList<Parameter>(layer.size()); + if (layer != null){ + Iterator<Layer> layerIt = layer.iterator(); + while (layerIt.hasNext()){ + Layer tmpLayer = layerIt.next(); + if (!tmpLayer.isGroupLayer()){ + parameter.add(new DefaultParameter(tmpLayer.getID(), + tmpLayer.getName())); + } + } + } + returnValue.add(new DefaultFIS(mapService.getID(),parameter)); + } + } + return returnValue; + } + + /** + * @see de.intevation.gnv.artifacts.services.MetaDataService#getFIS(com.vividsolutions.jts.geom.Geometry) + */ + @Override + protected Collection<FIS> getFIS(Geometry g) + throws MetaDataServiceException { + log.debug("DummyMetaDataService.getFIS ==> Geometry"); + Collection<FIS> returnValue = null; + if (g != null){ + returnValue = new ArrayList<FIS>(2); + returnValue.add(new DefaultFIS("fis_modeldata")); + returnValue.add(new DefaultFIS("fis_marnet")); + } + return returnValue; + } +} \ No newline at end of file