Mercurial > dive4elements > river
diff 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 |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/utils/ArtifactMapfileGenerator.java Wed Sep 11 11:41:29 2013 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/utils/ArtifactMapfileGenerator.java Wed Sep 11 13:15:30 2013 +0200 @@ -10,7 +10,7 @@ import org.dive4elements.artifacts.CallContext; import org.dive4elements.river.artifacts.D4EArtifact; -import org.dive4elements.river.artifacts.access.RiverAccess; +import org.dive4elements.river.artifacts.access.RangeAccess; import org.dive4elements.river.artifacts.model.LayerInfo; import org.dive4elements.river.artifacts.model.map.WMSDBLayerFacet; import org.dive4elements.river.artifacts.model.map.WMSLayerFacet; @@ -33,6 +33,12 @@ private static Logger logger = Logger.getLogger(ArtifactMapfileGenerator.class); + public static final String FLOODMAP_UESK_KEY = + "floodmap.uesk"; + + public static final String FLOODMAP_UESK_DEF = + "Floodmap: {0}-km {1,number,####} - {2,number,####} - {3}"; + @Override protected String getVelocityLogfile() { return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_VELOCITY_LOGFILE); @@ -78,17 +84,32 @@ { logger.debug("createUeskLayer"); + String identifier = flys.identifier(); + + RangeAccess access = new RangeAccess(flys); + LayerInfo layerinfo = new LayerInfo(); - layerinfo.setName(MS_WSPLGEN_PREFIX + flys.identifier()); + layerinfo.setName(MS_WSPLGEN_PREFIX + identifier); layerinfo.setType("POLYGON"); - layerinfo.setDirectory(flys.identifier()); + layerinfo.setDirectory(identifier); layerinfo.setData(WSPLGEN_RESULT_SHAPE); - layerinfo.setTitle(Resources.getMsg(Resources.getLocale(context.getMeta()), - "floodmap.uesk", - "Floodmap")); + + String river = access.getRiver(); + + double from = access.hasFrom() ? access.getFrom() : 0d; + double to = access.hasTo() ? access.getTo() : 0d; + + String title = Resources.format( + context.getMeta(), + FLOODMAP_UESK_KEY, + FLOODMAP_UESK_DEF, + river, + from, to, + identifier); + + layerinfo.setTitle(title); + layerinfo.setStyle(style); - RiverAccess access = new RiverAccess(flys); - String river = access.getRiver(); layerinfo.setSrid(RiverUtils.getRiverDGMSrid(river)); String name = MS_LAYER_PREFIX + wms.getName(); @@ -100,7 +121,7 @@ } try { - File dir = new File(getShapefileBaseDir(), flys.identifier()); + File dir = new File(getShapefileBaseDir(), identifier); writeLayer(layerinfo, new File(dir, name), template); } catch (FileNotFoundException fnfe) { @@ -230,13 +251,12 @@ } @Override - protected String getMapfilePath() { - return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_MAPFILE_PATH); - } + protected String getMapfilePath() { + return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_MAPFILE_PATH); + } @Override - protected String getMapfileTemplate() { - return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_MAPFILE_TEMPLATE); - } - + protected String getMapfileTemplate() { + return RiverUtils.getXPathString(RiverUtils.XPATH_FLOODMAP_MAPFILE_TEMPLATE); + } }