Mercurial > dive4elements > river
changeset 4864:dc0d37715e16
Floodmap uses the static River-WMS instead of User-WMS via RiverAxisArtifact.
author | Christian Lins <christian.lins@intevation.de> |
---|---|
date | Thu, 24 Jan 2013 15:04:01 +0100 |
parents | f2e7f07f608d |
children | 1358d0c8481c |
files | flys-artifacts/src/main/java/de/intevation/flys/artifacts/MapArtifact.java flys-artifacts/src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java flys-artifacts/src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java flys-artifacts/src/main/java/de/intevation/flys/exports/MapGenerator.java flys-artifacts/src/main/java/de/intevation/flys/utils/FLYSUtils.java flys-artifacts/src/main/java/de/intevation/flys/utils/ThemeUtil.java |
diffstat | 8 files changed, 67 insertions(+), 49 deletions(-) [+] |
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/MapArtifact.java Thu Jan 24 10:02:45 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/MapArtifact.java Thu Jan 24 15:04:01 2013 +0100 @@ -1,32 +1,27 @@ package de.intevation.flys.artifacts; -import org.apache.log4j.Logger; - -import java.util.List; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import de.intevation.artifacts.ArtifactFactory; -import de.intevation.artifacts.CallMeta; -import de.intevation.artifacts.CallContext; - -import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator; - import de.intevation.artifactdatabase.ProtocolUtils; import de.intevation.artifactdatabase.state.Facet; +import de.intevation.artifactdatabase.state.Output; import de.intevation.artifactdatabase.state.State; import de.intevation.artifactdatabase.state.StateEngine; -import de.intevation.artifactdatabase.state.Output; - +import de.intevation.artifacts.ArtifactFactory; +import de.intevation.artifacts.CallContext; +import de.intevation.artifacts.CallMeta; +import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator; +import de.intevation.flys.artifacts.RiverAxisArtifact.RiverAxisState; +import de.intevation.flys.artifacts.context.FLYSContext; +import de.intevation.flys.artifacts.model.map.WMSDBLayerFacet; +import de.intevation.flys.artifacts.states.DefaultState; import de.intevation.flys.model.River; import de.intevation.flys.utils.FLYSUtils; import de.intevation.flys.utils.MapUtils; -import de.intevation.flys.artifacts.RiverAxisArtifact.RiverAxisState; -import de.intevation.flys.artifacts.states.DefaultState; -import de.intevation.flys.artifacts.context.FLYSContext; -import de.intevation.flys.artifacts.model.map.WMSDBLayerFacet; +import java.util.List; + +import org.apache.log4j.Logger; +import org.w3c.dom.Document; +import org.w3c.dom.Element; public class MapArtifact extends FLYSArtifact { @@ -164,6 +159,7 @@ getUrl()); String name = type + "-" + artifact.identifier(); + facet.addLayer(name); facet.setExtent(getExtent(false)); facet.setOriginalExtent(getExtent(true));
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java Thu Jan 24 10:02:45 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/RiverAxisArtifact.java Thu Jan 24 15:04:01 2013 +0100 @@ -1,29 +1,25 @@ package de.intevation.flys.artifacts; -import java.util.List; - -import org.w3c.dom.Document; - -import org.apache.log4j.Logger; - import com.vividsolutions.jts.geom.Envelope; import com.vividsolutions.jts.geom.Geometry; -import de.intevation.artifacts.ArtifactFactory; -import de.intevation.artifacts.CallMeta; - import de.intevation.artifactdatabase.state.DefaultOutput; import de.intevation.artifactdatabase.state.Facet; import de.intevation.artifactdatabase.state.State; - -import de.intevation.flys.model.River; - +import de.intevation.artifacts.ArtifactFactory; +import de.intevation.artifacts.CallMeta; import de.intevation.flys.artifacts.model.FacetTypes; import de.intevation.flys.artifacts.model.RiverFactory; +import de.intevation.flys.model.River; import de.intevation.flys.utils.FLYSUtils; import de.intevation.flys.utils.GeometryUtils; +import java.util.List; +import org.apache.log4j.Logger; +import org.w3c.dom.Document; + +@Deprecated public class RiverAxisArtifact extends WMSDBArtifact { public static final String NAME = "riveraxis"; @@ -87,6 +83,7 @@ riverId = 0; } + @Override public int getRiverId() { if (riverId == 0) { String ids = artifact.getDataAsString("ids"); @@ -108,8 +105,13 @@ } @Override + protected String getLayer() { + return RiverFactory.getRiver(getRiverId()).getName(); + } + + @Override protected String getUrl() { - return FLYSUtils.getUserWMSUrl(artifact.identifier()); + return FLYSUtils.getRiverWMSUrl(); } @Override
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java Thu Jan 24 10:02:45 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/WMSDBArtifact.java Thu Jan 24 15:04:01 2013 +0100 @@ -3,32 +3,23 @@ import com.vividsolutions.jts.geom.Envelope; import de.intevation.artifactdatabase.data.DefaultStateData; - import de.intevation.artifactdatabase.state.Facet; import de.intevation.artifactdatabase.state.State; - import de.intevation.artifacts.Artifact; import de.intevation.artifacts.ArtifactFactory; import de.intevation.artifacts.CallMeta; - import de.intevation.artifacts.common.utils.FileTools; - import de.intevation.flys.artifacts.model.map.WMSDBLayerFacet; - import de.intevation.flys.artifacts.resources.Resources; - import de.intevation.flys.artifacts.states.DefaultState; - import de.intevation.flys.utils.FLYSUtils; import de.intevation.flys.utils.MapUtils; import java.io.File; - import java.util.ArrayList; import java.util.List; import org.apache.log4j.Logger; - import org.w3c.dom.Document; @@ -136,9 +127,7 @@ getID(), hash, getUrl()); - String name = type + "-" + artifact.identifier(); - - facet.addLayer(name); + facet.addLayer(getLayer()); facet.setExtent(getExtent()); facet.setOriginalExtent(getExtent(true)); facet.setSrid(getSrid()); @@ -174,6 +163,12 @@ return riverId; } + protected String getLayer() { + String type = getFacetType(); + String name = type + "-" + artifact.identifier(); + return name; + } + /** * Returns the name of the WMS layer. This method extracts the name * from 'ids' data string. It is expected, that the 'ids' string is
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java Thu Jan 24 10:02:45 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java Thu Jan 24 15:04:01 2013 +0100 @@ -157,6 +157,7 @@ String FLOODMAP_BARRIERS = "floodmap.barriers"; String FLOODMAP_USERSHAPE = "floodmap.usershape"; String FLOODMAP_RIVERAXIS = "floodmap.riveraxis"; + @Deprecated String FLOODMAP_WMSBACKGROUND = "floodmap.wmsbackground"; String FLOODMAP_KMS = "floodmap.kms"; String FLOODMAP_QPS = "floodmap.qps";
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java Thu Jan 24 10:02:45 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/FloodMapState.java Thu Jan 24 15:04:01 2013 +0100 @@ -28,6 +28,7 @@ import de.intevation.flys.model.DGM; import de.intevation.flys.model.Floodplain; import de.intevation.flys.model.RiverAxis; +import de.intevation.flys.utils.ArtifactMapfileGenerator; import de.intevation.flys.utils.FLYSUtils; import de.intevation.flys.utils.GeometryUtils; import de.intevation.flys.utils.MapfileGenerator; @@ -102,6 +103,14 @@ copyShapeDir(orig, owner); modifyFacets(orig, owner, context, callMeta); + + ArtifactMapfileGenerator amfg = new ArtifactMapfileGenerator(); + try { + amfg.generate(); + } + catch (IOException e) { + logger.error(e.getMessage(), e); + } }
--- a/flys-artifacts/src/main/java/de/intevation/flys/exports/MapGenerator.java Thu Jan 24 10:02:45 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/MapGenerator.java Thu Jan 24 15:04:01 2013 +0100 @@ -117,6 +117,7 @@ createUserShapeLayer(flys, wms); } else { + logger.debug("doOut: createDatabaseLayer for facet name: " + name); createDatabaseLayer(flys, wms, attr); } }
--- a/flys-artifacts/src/main/java/de/intevation/flys/utils/FLYSUtils.java Thu Jan 24 10:02:45 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/utils/FLYSUtils.java Thu Jan 24 15:04:01 2013 +0100 @@ -5,11 +5,10 @@ import de.intevation.artifacts.CallContext; import de.intevation.artifacts.common.utils.Config; import de.intevation.artifacts.common.utils.XMLUtils; - -import de.intevation.flys.artifacts.access.RangeAccess; import de.intevation.flys.artifacts.FLYSArtifact; import de.intevation.flys.artifacts.StaticWKmsArtifact; import de.intevation.flys.artifacts.WINFOArtifact; +import de.intevation.flys.artifacts.access.RangeAccess; import de.intevation.flys.artifacts.context.FLYSContext; import de.intevation.flys.artifacts.model.LocationProvider; import de.intevation.flys.artifacts.model.RiverFactory; @@ -82,6 +81,9 @@ public static final String XPATH_FLOODMAP_MAPSERVER_URL = "/artifact-database/floodmap/mapserver/server/@path"; + public static final String XPATH_RIVERMAP_MAPSERVER_URL = + "/artifact-database/rivermap/mapserver/server/@path"; + public static final String XPATH_FLOODMAP_MAPFILE_PATH = "/artifact-database/floodmap/mapserver/mapfile/@path"; @@ -658,6 +660,14 @@ } + public static String getRiverWMSUrl() { + String url = getXPathString(XPATH_RIVERMAP_MAPSERVER_URL); + url = url.endsWith("/") ? url + "river-wms" : url + "/" + "river-wms"; + + return url; + } + + /** * This method returns the description for a given <i>km</i> for a specific * river. The river is provided by the FLYSArtifact <i>flys</i>.
--- a/flys-artifacts/src/main/java/de/intevation/flys/utils/ThemeUtil.java Thu Jan 24 10:02:45 2013 +0100 +++ b/flys-artifacts/src/main/java/de/intevation/flys/utils/ThemeUtil.java Thu Jan 24 15:04:01 2013 +0100 @@ -721,6 +721,10 @@ String symbol = getSymbol(theme); String backcolor = getLabelBackgroundColorString(theme); String linecolor = getLineColorString(theme); + if (linecolor == null || "".equals(linecolor)) { + logger.warn("createMapserverStyle: linecolor String is empty"); + linecolor = "0,128,255"; + } int linewidth = parseLineWidth(theme); @@ -729,10 +733,10 @@ Clazz c = new Clazz(" "); Style s = new Style(); - s.setOutlineColor(linecolor.replace(",", "")); + s.setOutlineColor(linecolor.replace(",", " ")); if (backcolor != null && backcolor.length() > 0) { - s.setColor(backcolor.replace(",", "")); + s.setColor(backcolor.replace(",", " ")); } s.setSize(linewidth); @@ -744,7 +748,7 @@ if (textcolor != null && textcolor.length() > 0 && textsize > 0) { Label l = new Label(); - l.setColor(textcolor.replace(",", "")); + l.setColor(textcolor.replace(",", " ")); l.setSize(textsize); c.addItem(l); }