comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/RiverAxisState.java @ 1105:adb52a2005e7

Moved code to extract the river srid defined in the global configuration into FLYSUtils. flys-artifacts/trunk@2608 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Tue, 30 Aug 2011 08:09:52 +0000
parents e7c1ebfc2701
children c07e9e9c7482
comparison
equal deleted inserted replaced
1104:9383a4608d9f 1105:adb52a2005e7
1 package de.intevation.flys.artifacts.states; 1 package de.intevation.flys.artifacts.states;
2 2
3 import java.util.HashMap;
4 import java.util.List; 3 import java.util.List;
5 import java.util.Map; 4 import java.util.Map;
6
7 import javax.xml.xpath.XPathConstants;
8 5
9 import com.vividsolutions.jts.geom.Geometry; 6 import com.vividsolutions.jts.geom.Geometry;
10 7
11 import org.apache.log4j.Logger; 8 import org.apache.log4j.Logger;
12 9
13 import org.w3c.dom.Document;
14
15 import de.intevation.artifacts.CallContext; 10 import de.intevation.artifacts.CallContext;
16 import de.intevation.artifacts.CallMeta; 11 import de.intevation.artifacts.CallMeta;
17
18 import de.intevation.artifacts.common.utils.Config;
19 import de.intevation.artifacts.common.utils.XMLUtils;
20 12
21 import de.intevation.artifactdatabase.state.Facet; 13 import de.intevation.artifactdatabase.state.Facet;
22 14
23 import de.intevation.flys.model.RiverAxis; 15 import de.intevation.flys.model.RiverAxis;
24 16
25 import de.intevation.flys.artifacts.FLYSArtifact; 17 import de.intevation.flys.artifacts.FLYSArtifact;
26 import de.intevation.flys.artifacts.context.FLYSContext; 18 import de.intevation.flys.artifacts.context.FLYSContext;
27 import de.intevation.flys.artifacts.model.WMSLayerFacet; 19 import de.intevation.flys.artifacts.model.WMSLayerFacet;
28 import de.intevation.flys.artifacts.resources.Resources; 20 import de.intevation.flys.artifacts.resources.Resources;
29 import de.intevation.flys.artifacts.states.DefaultState.ComputeType; 21 import de.intevation.flys.artifacts.states.DefaultState.ComputeType;
22 import de.intevation.flys.utils.FLYSUtils;
30 import de.intevation.flys.utils.GeometryUtils; 23 import de.intevation.flys.utils.GeometryUtils;
31 24
32 25
33 public class RiverAxisState extends OutputState { 26 public class RiverAxisState extends OutputState {
34 27
35 public static final String I18N_DESCRIPTION = "floodmap.riveraxis"; 28 public static final String I18N_DESCRIPTION = "floodmap.riveraxis";
36 29
37 public static final String WMS_LAYER_NAME = "riveraxis"; 30 public static final String WMS_LAYER_NAME = "riveraxis";
38 31
39 public static final String XPATH_RIVER_PROJECTION =
40 "/artifact-database/floodmap/river[@name=$name]/srid/@value";
41 32
42 33
43 private static final Logger logger = Logger.getLogger(RiverAxisState.class); 34 private static final Logger logger = Logger.getLogger(RiverAxisState.class);
44 35
45 36
95 logger.debug("River '" + river + "' bounds: " + bounds); 86 logger.debug("River '" + river + "' bounds: " + bounds);
96 87
97 facet.setExtent(bounds); 88 facet.setExtent(bounds);
98 } 89 }
99 90
100 Map<String, String> variables = new HashMap<String, String>(1); 91 facet.setSrid(FLYSUtils.getRiverSrid(artifact));
101 variables.put("name", river);
102
103 Document cfg = Config.getConfig();
104
105 String srid = (String) XMLUtils.xpath(
106 cfg,
107 XPATH_RIVER_PROJECTION,
108 XPathConstants.STRING,
109 null,
110 variables);
111
112 facet.setSrid(srid);
113 92
114 facets.add(facet); 93 facets.add(facet);
115 94
116 return null; 95 return null;
117 } 96 }

http://dive4elements.wald.intevation.org