[Dive4elements-commits] [PATCH] MapInfoService now submits layer names as well as WMS urls
Wald Commits
scm-commit at wald.intevation.org
Tue Jan 15 13:32:33 CET 2013
# HG changeset patch
# User Christian Lins <christian.lins at intevation.de>
# Date 1358253134 -3600
# Node ID 6aa1b8abe2d36dd7a4fef5ee126c3cb68cd34a58
# Parent c6814695c82cd984ddc04374b9b9dda6cdaf8f88
MapInfoService now submits layer names as well as WMS urls.
diff -r c6814695c82c -r 6aa1b8abe2d3 flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java Sun Jan 13 17:00:37 2013 +0100
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/MapInfoService.java Tue Jan 15 13:32:14 2013 +0100
@@ -1,29 +1,25 @@
package de.intevation.flys.artifacts.services;
-import org.apache.log4j.Logger;
-
-import java.util.Map;
-import java.util.HashMap;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.Element;
-
-import javax.xml.xpath.XPathConstants;
-
import com.vividsolutions.jts.geom.Envelope;
+import de.intevation.artifactdatabase.XMLService;
import de.intevation.artifacts.CallMeta;
import de.intevation.artifacts.GlobalContext;
-
import de.intevation.artifacts.common.ArtifactNamespaceContext;
import de.intevation.artifacts.common.utils.Config;
import de.intevation.artifacts.common.utils.XMLUtils;
import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator;
+import de.intevation.flys.utils.GeometryUtils;
-import de.intevation.artifactdatabase.XMLService;
+import java.util.HashMap;
+import java.util.Map;
-import de.intevation.flys.utils.GeometryUtils;
+import javax.xml.xpath.XPathConstants;
+
+import org.apache.log4j.Logger;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
/**
* This service provides information about the supported rivers by this
@@ -43,7 +39,7 @@
"/artifact-database/floodmap/river[@name=$river]/background-wms";
public static final String XPATH_RIVER_WMS =
- "/artifact-database/floodmap/river[@name=$river]/river-wms/@url";
+ "/artifact-database/floodmap/river[@name=$river]/river-wms";
/** The logger used in this service.*/
@@ -119,22 +115,38 @@
root.appendChild(srid);
}
- Element back = (Element)getNodeXPath(XPATH_RIVER_BACKGROUND, vars);
- if (back != null) {
- Element background = cr.create("background-wms");
- cr.addAttr(background, "url", back.getAttribute("url"));
- cr.addAttr(background, "layers", back.getAttribute("layers"));
- root.appendChild(background);
+ logger.debug("processXML: " + XMLUtils.toString(root));
+ root.appendChild(
+ createWMSElement("background-wms", XPATH_RIVER_BACKGROUND, vars, cr));
+ root.appendChild(
+ createWMSElement("river-wms", XPATH_RIVER_WMS, vars, cr));
+
+ return result;
+ }
+
+
+ protected Element createWMSElement(
+ String elementName,
+ String xpath,
+ Map<String, String> vars,
+ ElementCreator cr)
+ {
+ logger.debug("createWMSElement()");
+
+ Element el = cr.create(elementName);
+ Element wms = (Element)getNodeXPath(xpath, vars);
+
+ if (wms != null) {
+ cr.addAttr(el, "url", wms.getAttribute("url"));
+ cr.addAttr(el, "layers", wms.getAttribute("layers"));
+
+ logger.debug("createWMSElement: " + XMLUtils.toString(el));
+ }
+ else {
+ logger.debug("createWMSElement: wms == null");
}
- String wmsStr = getStringXPath(XPATH_RIVER_WMS, vars);
- if (wmsStr != null && wmsStr.length() > 0) {
- Element wms = cr.create("river-wms");
- cr.addAttr(wms, "url", wmsStr);
- root.appendChild(wms);
- }
-
- return result;
+ return el;
}
diff -r c6814695c82c -r 6aa1b8abe2d3 flys-client/src/main/java/de/intevation/flys/client/client/ui/DigitizePanel.java
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/DigitizePanel.java Sun Jan 13 17:00:37 2013 +0100
+++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/DigitizePanel.java Tue Jan 15 13:32:14 2013 +0100
@@ -2,7 +2,6 @@
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.rpc.AsyncCallback;
-
import com.smartgwt.client.types.Encoding;
import com.smartgwt.client.types.VerticalAlignment;
import com.smartgwt.client.util.SC;
@@ -22,6 +21,8 @@
import com.smartgwt.client.widgets.tab.events.TabSelectedHandler;
import de.intevation.flys.client.client.Config;
+import de.intevation.flys.client.client.FLYS;
+import de.intevation.flys.client.client.FLYSConstants;
import de.intevation.flys.client.client.services.MapInfoService;
import de.intevation.flys.client.client.services.MapInfoServiceAsync;
import de.intevation.flys.client.client.ui.map.FloodMap;
@@ -58,6 +59,8 @@
public static final String UESK_BARRIERS = "uesk.barriers";
+ /** The message class that provides i18n strings. */
+ protected FLYSConstants MSG = GWT.create(FLYSConstants.class);
public DigitizePanel() {
}
@@ -104,7 +107,7 @@
String msg = caught.getMessage();
GWT.log("Error while fetching MapInfo: " + msg);
- SC.warn(MSG.getString(msg));
+ SC.warn(FLYS.getExceptionString(MSG, caught));
}
@Override
More information about the Dive4elements-commits
mailing list