| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- /* 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/WFSCapabilities.js
- */
- /**
- * Class: OpenLayers.Format.WFSCapabilities.v1
- * Abstract class not to be instantiated directly.
- *
- * Inherits from:
- * - <OpenLayers.Format.XML>
- */
- OpenLayers.Format.WFSCapabilities.v1 = OpenLayers.Class(
- OpenLayers.Format.XML, {
- /**
- * Property: namespaces
- * {Object} Mapping of namespace aliases to namespace URIs.
- */
- namespaces: {
- wfs: "http://www.opengis.net/wfs",
- xlink: "http://www.w3.org/1999/xlink",
- xsi: "http://www.w3.org/2001/XMLSchema-instance",
- ows: "http://www.opengis.net/ows"
- },
- /**
- * APIProperty: errorProperty
- * {String} Which property of the returned object to check for in order to
- * determine whether or not parsing has failed. In the case that the
- * errorProperty is undefined on the returned object, the document will be
- * run through an OGCExceptionReport parser.
- */
- errorProperty: "featureTypeList",
- /**
- * Property: defaultPrefix
- */
- defaultPrefix: "wfs",
-
- /**
- * Constructor: OpenLayers.Format.WFSCapabilities.v1_1
- * 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);
- 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: {
- "wfs": {
- "WFS_Capabilities": function(node, obj) {
- this.readChildNodes(node, obj);
- },
- "FeatureTypeList": function(node, request) {
- request.featureTypeList = {
- featureTypes: []
- };
- this.readChildNodes(node, request.featureTypeList);
- },
- "FeatureType": function(node, featureTypeList) {
- var featureType = {};
- this.readChildNodes(node, featureType);
- featureTypeList.featureTypes.push(featureType);
- },
- "Name": function(node, obj) {
- var name = this.getChildValue(node);
- if(name) {
- var parts = name.split(":");
- obj.name = parts.pop();
- if(parts.length > 0) {
- obj.featureNS = this.lookupNamespaceURI(node, parts[0]);
- }
- }
- },
- "Title": function(node, obj) {
- var title = this.getChildValue(node);
- if(title) {
- obj.title = title;
- }
- },
- "Abstract": function(node, obj) {
- var abst = this.getChildValue(node);
- if(abst) {
- obj["abstract"] = abst;
- }
- }
- }
- },
- CLASS_NAME: "OpenLayers.Format.WFSCapabilities.v1"
- });
|