Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/utils/ArtifactMapfileGenerator.java @ 6988:fc2de41ebdb8
flys/issue1485 Better titles for UESK layers.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Wed, 11 Sep 2013 13:15:30 +0200 |
parents | d4b9fe13c9b8 |
children | 1f38656b68c4 |
comparison
equal
deleted
inserted
replaced
6986:e562a9a42495 | 6988:fc2de41ebdb8 |
---|---|
8 | 8 |
9 package org.dive4elements.river.utils; | 9 package org.dive4elements.river.utils; |
10 | 10 |
11 import org.dive4elements.artifacts.CallContext; | 11 import org.dive4elements.artifacts.CallContext; |
12 import org.dive4elements.river.artifacts.D4EArtifact; | 12 import org.dive4elements.river.artifacts.D4EArtifact; |
13 import org.dive4elements.river.artifacts.access.RiverAccess; | 13 import org.dive4elements.river.artifacts.access.RangeAccess; |
14 import org.dive4elements.river.artifacts.model.LayerInfo; | 14 import org.dive4elements.river.artifacts.model.LayerInfo; |
15 import org.dive4elements.river.artifacts.model.map.WMSDBLayerFacet; | 15 import org.dive4elements.river.artifacts.model.map.WMSDBLayerFacet; |
16 import org.dive4elements.river.artifacts.model.map.WMSLayerFacet; | 16 import org.dive4elements.river.artifacts.model.map.WMSLayerFacet; |
17 import org.dive4elements.river.artifacts.model.map.WSPLGENLayerFacet; | 17 import org.dive4elements.river.artifacts.model.map.WSPLGENLayerFacet; |
18 import org.dive4elements.river.artifacts.resources.Resources; | 18 import org.dive4elements.river.artifacts.resources.Resources; |
31 | 31 |
32 public class ArtifactMapfileGenerator extends MapfileGenerator { | 32 public class ArtifactMapfileGenerator extends MapfileGenerator { |
33 | 33 |
34 private static Logger logger = Logger.getLogger(ArtifactMapfileGenerator.class); | 34 private static Logger logger = Logger.getLogger(ArtifactMapfileGenerator.class); |
35 | 35 |
36 public static final String FLOODMAP_UESK_KEY = | |
37 "floodmap.uesk"; | |
38 | |
39 public static final String FLOODMAP_UESK_DEF = | |
40 "Floodmap: {0}-km {1,number,####} - {2,number,####} - {3}"; | |
41 | |
36 @Override | 42 @Override |
37 protected String getVelocityLogfile() { | 43 protected String getVelocityLogfile() { |
38 return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_VELOCITY_LOGFILE); | 44 return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_VELOCITY_LOGFILE); |
39 } | 45 } |
40 | 46 |
76 CallContext context | 82 CallContext context |
77 ) throws FileNotFoundException, IOException | 83 ) throws FileNotFoundException, IOException |
78 { | 84 { |
79 logger.debug("createUeskLayer"); | 85 logger.debug("createUeskLayer"); |
80 | 86 |
87 String identifier = flys.identifier(); | |
88 | |
89 RangeAccess access = new RangeAccess(flys); | |
90 | |
81 LayerInfo layerinfo = new LayerInfo(); | 91 LayerInfo layerinfo = new LayerInfo(); |
82 layerinfo.setName(MS_WSPLGEN_PREFIX + flys.identifier()); | 92 layerinfo.setName(MS_WSPLGEN_PREFIX + identifier); |
83 layerinfo.setType("POLYGON"); | 93 layerinfo.setType("POLYGON"); |
84 layerinfo.setDirectory(flys.identifier()); | 94 layerinfo.setDirectory(identifier); |
85 layerinfo.setData(WSPLGEN_RESULT_SHAPE); | 95 layerinfo.setData(WSPLGEN_RESULT_SHAPE); |
86 layerinfo.setTitle(Resources.getMsg(Resources.getLocale(context.getMeta()), | 96 |
87 "floodmap.uesk", | 97 String river = access.getRiver(); |
88 "Floodmap")); | 98 |
99 double from = access.hasFrom() ? access.getFrom() : 0d; | |
100 double to = access.hasTo() ? access.getTo() : 0d; | |
101 | |
102 String title = Resources.format( | |
103 context.getMeta(), | |
104 FLOODMAP_UESK_KEY, | |
105 FLOODMAP_UESK_DEF, | |
106 river, | |
107 from, to, | |
108 identifier); | |
109 | |
110 layerinfo.setTitle(title); | |
111 | |
89 layerinfo.setStyle(style); | 112 layerinfo.setStyle(style); |
90 RiverAccess access = new RiverAccess(flys); | |
91 String river = access.getRiver(); | |
92 layerinfo.setSrid(RiverUtils.getRiverDGMSrid(river)); | 113 layerinfo.setSrid(RiverUtils.getRiverDGMSrid(river)); |
93 | 114 |
94 String name = MS_LAYER_PREFIX + wms.getName(); | 115 String name = MS_LAYER_PREFIX + wms.getName(); |
95 | 116 |
96 Template template = getTemplateByName(WSPLGEN_LAYER_TEMPLATE); | 117 Template template = getTemplateByName(WSPLGEN_LAYER_TEMPLATE); |
98 logger.warn("Template '" + WSPLGEN_LAYER_TEMPLATE + "' found."); | 119 logger.warn("Template '" + WSPLGEN_LAYER_TEMPLATE + "' found."); |
99 return; | 120 return; |
100 } | 121 } |
101 | 122 |
102 try { | 123 try { |
103 File dir = new File(getShapefileBaseDir(), flys.identifier()); | 124 File dir = new File(getShapefileBaseDir(), identifier); |
104 writeLayer(layerinfo, new File(dir, name), template); | 125 writeLayer(layerinfo, new File(dir, name), template); |
105 } | 126 } |
106 catch (FileNotFoundException fnfe) { | 127 catch (FileNotFoundException fnfe) { |
107 logger.error(fnfe, fnfe); | 128 logger.error(fnfe, fnfe); |
108 logger.warn("Unable to write layer: " + name); | 129 logger.warn("Unable to write layer: " + name); |
228 logger.warn("Unable to write layer: " + name); | 249 logger.warn("Unable to write layer: " + name); |
229 } | 250 } |
230 } | 251 } |
231 | 252 |
232 @Override | 253 @Override |
233 protected String getMapfilePath() { | 254 protected String getMapfilePath() { |
234 return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_MAPFILE_PATH); | 255 return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_MAPFILE_PATH); |
235 } | 256 } |
236 | 257 |
237 @Override | 258 @Override |
238 protected String getMapfileTemplate() { | 259 protected String getMapfileTemplate() { |
239 return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_MAPFILE_TEMPLATE); | 260 return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_MAPFILE_TEMPLATE); |
240 } | 261 } |
241 | |
242 } | 262 } |