summaryrefslogtreecommitdiff
path: root/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1.js
diff options
context:
space:
mode:
Diffstat (limited to 'misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1.js')
-rw-r--r--misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1.js368
1 files changed, 0 insertions, 368 deletions
diff --git a/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1.js b/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1.js
deleted file mode 100644
index ef5c133..0000000
--- a/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1.js
+++ /dev/null
@@ -1,368 +0,0 @@
-/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
- * full list of contributors). Published under the 2-clause BSD license.
- * See license.txt in the OpenLayers distribution or repository for the
- * full text of the license. */
-
-/**
- * @requires OpenLayers/Format/WMSCapabilities.js
- * @requires OpenLayers/Format/OGCExceptionReport.js
- * @requires OpenLayers/Format/XML.js
- */
-
-/**
- * Class: OpenLayers.Format.WMSCapabilities.v1
- * Abstract class not to be instantiated directly. Creates
- * the common parts for both WMS 1.1.X and WMS 1.3.X.
- *
- * Inherits from:
- * - <OpenLayers.Format.XML>
- */
-OpenLayers.Format.WMSCapabilities.v1 = OpenLayers.Class(
- OpenLayers.Format.XML, {
-
- /**
- * Property: namespaces
- * {Object} Mapping of namespace aliases to namespace URIs.
- */
- namespaces: {
- wms: "http://www.opengis.net/wms",
- xlink: "http://www.w3.org/1999/xlink",
- xsi: "http://www.w3.org/2001/XMLSchema-instance"
- },
-
- /**
- * Property: defaultPrefix
- */
- defaultPrefix: "wms",
-
- /**
- * Constructor: OpenLayers.Format.WMSCapabilities.v1
- * Create an instance of one of the subclasses.
- *
- * Parameters:
- * options - {Object} An optional object whose properties will be set on
- * this instance.
- */
-
- /**
- * APIMethod: read
- * Read capabilities data from a string, and return a list of layers.
- *
- * Parameters:
- * data - {String} or {DOMElement} data to read/parse.
- *
- * Returns:
- * {Array} List of named layers.
- */
- read: function(data) {
- if(typeof data == "string") {
- data = OpenLayers.Format.XML.prototype.read.apply(this, [data]);
- }
- var raw = data;
- if(data && data.nodeType == 9) {
- data = data.documentElement;
- }
- var capabilities = {};
- this.readNode(data, capabilities);
- if (capabilities.service === undefined) {
- // an exception must have occurred, so parse it
- var parser = new OpenLayers.Format.OGCExceptionReport();
- capabilities.error = parser.read(raw);
- }
- return capabilities;
- },
-
- /**
- * Property: readers
- * Contains public functions, grouped by namespace prefix, that will
- * be applied when a namespaced node is found matching the function
- * name. The function will be applied in the scope of this parser
- * with two arguments: the node being read and a context object passed
- * from the parent.
- */
- readers: {
- "wms": {
- "Service": function(node, obj) {
- obj.service = {};
- this.readChildNodes(node, obj.service);
- },
- "Name": function(node, obj) {
- obj.name = this.getChildValue(node);
- },
- "Title": function(node, obj) {
- obj.title = this.getChildValue(node);
- },
- "Abstract": function(node, obj) {
- obj["abstract"] = this.getChildValue(node);
- },
- "BoundingBox": function(node, obj) {
- var bbox = {};
- bbox.bbox = [
- parseFloat(node.getAttribute("minx")),
- parseFloat(node.getAttribute("miny")),
- parseFloat(node.getAttribute("maxx")),
- parseFloat(node.getAttribute("maxy"))
- ];
- var res = {
- x: parseFloat(node.getAttribute("resx")),
- y: parseFloat(node.getAttribute("resy"))
- };
-
- if (! (isNaN(res.x) && isNaN(res.y))) {
- bbox.res = res;
- }
- // return the bbox so that descendant classes can set the
- // CRS and SRS and add it to the obj
- return bbox;
- },
- "OnlineResource": function(node, obj) {
- obj.href = this.getAttributeNS(node, this.namespaces.xlink,
- "href");
- },
- "ContactInformation": function(node, obj) {
- obj.contactInformation = {};
- this.readChildNodes(node, obj.contactInformation);
- },
- "ContactPersonPrimary": function(node, obj) {
- obj.personPrimary = {};
- this.readChildNodes(node, obj.personPrimary);
- },
- "ContactPerson": function(node, obj) {
- obj.person = this.getChildValue(node);
- },
- "ContactOrganization": function(node, obj) {
- obj.organization = this.getChildValue(node);
- },
- "ContactPosition": function(node, obj) {
- obj.position = this.getChildValue(node);
- },
- "ContactAddress": function(node, obj) {
- obj.contactAddress = {};
- this.readChildNodes(node, obj.contactAddress);
- },
- "AddressType": function(node, obj) {
- obj.type = this.getChildValue(node);
- },
- "Address": function(node, obj) {
- obj.address = this.getChildValue(node);
- },
- "City": function(node, obj) {
- obj.city = this.getChildValue(node);
- },
- "StateOrProvince": function(node, obj) {
- obj.stateOrProvince = this.getChildValue(node);
- },
- "PostCode": function(node, obj) {
- obj.postcode = this.getChildValue(node);
- },
- "Country": function(node, obj) {
- obj.country = this.getChildValue(node);
- },
- "ContactVoiceTelephone": function(node, obj) {
- obj.phone = this.getChildValue(node);
- },
- "ContactFacsimileTelephone": function(node, obj) {
- obj.fax = this.getChildValue(node);
- },
- "ContactElectronicMailAddress": function(node, obj) {
- obj.email = this.getChildValue(node);
- },
- "Fees": function(node, obj) {
- var fees = this.getChildValue(node);
- if (fees && fees.toLowerCase() != "none") {
- obj.fees = fees;
- }
- },
- "AccessConstraints": function(node, obj) {
- var constraints = this.getChildValue(node);
- if (constraints && constraints.toLowerCase() != "none") {
- obj.accessConstraints = constraints;
- }
- },
- "Capability": function(node, obj) {
- obj.capability = {
- nestedLayers: [],
- layers: []
- };
- this.readChildNodes(node, obj.capability);
- },
- "Request": function(node, obj) {
- obj.request = {};
- this.readChildNodes(node, obj.request);
- },
- "GetCapabilities": function(node, obj) {
- obj.getcapabilities = {formats: []};
- this.readChildNodes(node, obj.getcapabilities);
- },
- "Format": function(node, obj) {
- if (OpenLayers.Util.isArray(obj.formats)) {
- obj.formats.push(this.getChildValue(node));
- } else {
- obj.format = this.getChildValue(node);
- }
- },
- "DCPType": function(node, obj) {
- this.readChildNodes(node, obj);
- },
- "HTTP": function(node, obj) {
- this.readChildNodes(node, obj);
- },
- "Get": function(node, obj) {
- obj.get = {};
- this.readChildNodes(node, obj.get);
- // backwards compatibility
- if (!obj.href) {
- obj.href = obj.get.href;
- }
- },
- "Post": function(node, obj) {
- obj.post = {};
- this.readChildNodes(node, obj.post);
- // backwards compatibility
- if (!obj.href) {
- obj.href = obj.get.href;
- }
- },
- "GetMap": function(node, obj) {
- obj.getmap = {formats: []};
- this.readChildNodes(node, obj.getmap);
- },
- "GetFeatureInfo": function(node, obj) {
- obj.getfeatureinfo = {formats: []};
- this.readChildNodes(node, obj.getfeatureinfo);
- },
- "Exception": function(node, obj) {
- obj.exception = {formats: []};
- this.readChildNodes(node, obj.exception);
- },
- "Layer": function(node, obj) {
- var parentLayer, capability;
- if (obj.capability) {
- capability = obj.capability;
- parentLayer = obj;
- } else {
- capability = obj;
- }
- var attrNode = node.getAttributeNode("queryable");
- var queryable = (attrNode && attrNode.specified) ?
- node.getAttribute("queryable") : null;
- attrNode = node.getAttributeNode("cascaded");
- var cascaded = (attrNode && attrNode.specified) ?
- node.getAttribute("cascaded") : null;
- attrNode = node.getAttributeNode("opaque");
- var opaque = (attrNode && attrNode.specified) ?
- node.getAttribute('opaque') : null;
- var noSubsets = node.getAttribute('noSubsets');
- var fixedWidth = node.getAttribute('fixedWidth');
- var fixedHeight = node.getAttribute('fixedHeight');
- var parent = parentLayer || {},
- extend = OpenLayers.Util.extend;
- var layer = {
- nestedLayers: [],
- styles: parentLayer ? [].concat(parentLayer.styles) : [],
- srs: parentLayer ? extend({}, parent.srs) : {},
- metadataURLs: [],
- bbox: parentLayer ? extend({}, parent.bbox) : {},
- llbbox: parent.llbbox,
- dimensions: parentLayer ? extend({}, parent.dimensions) : {},
- authorityURLs: parentLayer ? extend({}, parent.authorityURLs) : {},
- identifiers: {},
- keywords: [],
- queryable: (queryable && queryable !== "") ?
- (queryable === "1" || queryable === "true" ) :
- (parent.queryable || false),
- cascaded: (cascaded !== null) ? parseInt(cascaded) :
- (parent.cascaded || 0),
- opaque: opaque ?
- (opaque === "1" || opaque === "true" ) :
- (parent.opaque || false),
- noSubsets: (noSubsets !== null) ?
- (noSubsets === "1" || noSubsets === "true" ) :
- (parent.noSubsets || false),
- fixedWidth: (fixedWidth != null) ?
- parseInt(fixedWidth) : (parent.fixedWidth || 0),
- fixedHeight: (fixedHeight != null) ?
- parseInt(fixedHeight) : (parent.fixedHeight || 0),
- minScale: parent.minScale,
- maxScale: parent.maxScale,
- attribution: parent.attribution
- };
- obj.nestedLayers.push(layer);
- layer.capability = capability;
- this.readChildNodes(node, layer);
- delete layer.capability;
- if(layer.name) {
- var parts = layer.name.split(":"),
- request = capability.request,
- gfi = request.getfeatureinfo;
- if(parts.length > 0) {
- layer.prefix = parts[0];
- }
- capability.layers.push(layer);
- if (layer.formats === undefined) {
- layer.formats = request.getmap.formats;
- }
- if (layer.infoFormats === undefined && gfi) {
- layer.infoFormats = gfi.formats;
- }
- }
- },
- "Attribution": function(node, obj) {
- obj.attribution = {};
- this.readChildNodes(node, obj.attribution);
- },
- "LogoURL": function(node, obj) {
- obj.logo = {
- width: node.getAttribute("width"),
- height: node.getAttribute("height")
- };
- this.readChildNodes(node, obj.logo);
- },
- "Style": function(node, obj) {
- var style = {};
- obj.styles.push(style);
- this.readChildNodes(node, style);
- },
- "LegendURL": function(node, obj) {
- var legend = {
- width: node.getAttribute("width"),
- height: node.getAttribute("height")
- };
- obj.legend = legend;
- this.readChildNodes(node, legend);
- },
- "MetadataURL": function(node, obj) {
- var metadataURL = {type: node.getAttribute("type")};
- obj.metadataURLs.push(metadataURL);
- this.readChildNodes(node, metadataURL);
- },
- "DataURL": function(node, obj) {
- obj.dataURL = {};
- this.readChildNodes(node, obj.dataURL);
- },
- "FeatureListURL": function(node, obj) {
- obj.featureListURL = {};
- this.readChildNodes(node, obj.featureListURL);
- },
- "AuthorityURL": function(node, obj) {
- var name = node.getAttribute("name");
- var authority = {};
- this.readChildNodes(node, authority);
- obj.authorityURLs[name] = authority.href;
- },
- "Identifier": function(node, obj) {
- var authority = node.getAttribute("authority");
- obj.identifiers[authority] = this.getChildValue(node);
- },
- "KeywordList": function(node, obj) {
- this.readChildNodes(node, obj);
- },
- "SRS": function(node, obj) {
- obj.srs[this.getChildValue(node)] = true;
- }
- }
- },
-
- CLASS_NAME: "OpenLayers.Format.WMSCapabilities.v1"
-
-});