diff --git a/examples/WMSDescribeLayerParser.html b/examples/WMSDescribeLayerParser.html index d1c63e75a2..94be309295 100644 --- a/examples/WMSDescribeLayerParser.html +++ b/examples/WMSDescribeLayerParser.html @@ -12,11 +12,12 @@ format = new OpenLayers.Format.WMSDescribeLayer(); html = "
"; resp = format.read(req.responseText); - for(var i = 0; i < resp.length; i++) { - html += "Layer: typeName: "+ resp[i].typeName+","; + var layerDescriptions = resp.layerDescriptions; + for(var i = 0; i < layerDescriptions.length; i++) { + html += "Layer: typeName: "+layerDescriptions[i].typeName+","; html += "" } document.getElementById('output').innerHTML = html; diff --git a/lib/OpenLayers/Format/WMSDescribeLayer.js b/lib/OpenLayers/Format/WMSDescribeLayer.js index b382d3a882..e18ca83906 100644 --- a/lib/OpenLayers/Format/WMSDescribeLayer.js +++ b/lib/OpenLayers/Format/WMSDescribeLayer.js @@ -23,28 +23,6 @@ OpenLayers.Format.WMSDescribeLayer = OpenLayers.Class(OpenLayers.Format.XML.Vers */ defaultVersion: "1.1.1", - /** - * Method: getVersion - * Returns the version to use. Subclasses can override this function - * if a different version detection is needed. - * - * Parameters: - * root - {DOMElement} - * options - {Object} Optional configuration object. - * - * Returns: - * {String} The version to use. - */ - getVersion: function(root, options) { - var version = OpenLayers.Format.XML.VersionedOGC.prototype.getVersion.apply( - this, arguments); - // these are identical to us, but some WMS use 1.1.1 and some use 1.1.0 - if (version == "1.1.1" || version == "1.1.0") { - version = "1.1"; - } - return version; - }, - /** * Constructor: OpenLayers.Format.WMSDescribeLayer * Create a new parser for WMS DescribeLayer responses. diff --git a/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js b/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js index b2ac8cf28d..82b4ba58ce 100644 --- a/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js +++ b/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js @@ -45,10 +45,12 @@ OpenLayers.Format.WMSDescribeLayer.v1_1 = OpenLayers.Class( * data - {String} or {DOMElement} data to read/parse. * * Returns: - * {Array} Array of {} objects which have: + * {Object} Object with a layerDescriptions property, which holds an Array + * of {} objects which have: * - {String} owsType: WFS/WCS * - {String} owsURL: the online resource - * - {String} typeName: the name of the typename on the service + * - {String} typeName: the name of the typename on the owsType service + * - {String} layerName: the name of the WMS layer we did a lookup for */ read: function(data) { if(typeof data == "string") { @@ -56,7 +58,7 @@ OpenLayers.Format.WMSDescribeLayer.v1_1 = OpenLayers.Class( } var root = data.documentElement; var children = root.childNodes; - var describelayer = []; + var describelayer = {layerDescriptions: []}; var childNode, nodeName; for(var i=0; i