summaryrefslogtreecommitdiff
path: root/misc/openlayers/lib/OpenLayers/Format/OWSContext.js
diff options
context:
space:
mode:
Diffstat (limited to 'misc/openlayers/lib/OpenLayers/Format/OWSContext.js')
-rw-r--r--misc/openlayers/lib/OpenLayers/Format/OWSContext.js86
1 files changed, 86 insertions, 0 deletions
diff --git a/misc/openlayers/lib/OpenLayers/Format/OWSContext.js b/misc/openlayers/lib/OpenLayers/Format/OWSContext.js
new file mode 100644
index 0000000..ab38734
--- /dev/null
+++ b/misc/openlayers/lib/OpenLayers/Format/OWSContext.js
@@ -0,0 +1,86 @@
+/* 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/Context.js
+ */
+
+/**
+ * Class: OpenLayers.Format.OWSContext
+ * Read and write OWS Context documents. OWS Context documents are a
+ * preliminary OGC (Open Geospatial Consortium) standard for storing the
+ * state of a web mapping application. In a way it is the successor to
+ * Web Map Context (WMC), since it is more generic and more types of layers
+ * can be stored. Also, nesting of layers is supported since version 0.3.1.
+ * For more information see: http://www.ogcnetwork.net/context
+ *
+ * Inherits from:
+ * - <OpenLayers.Format.Context>
+ */
+OpenLayers.Format.OWSContext = OpenLayers.Class(OpenLayers.Format.Context,{
+
+ /**
+ * APIProperty: defaultVersion
+ * {String} Version number to assume if none found. Default is "0.3.1".
+ */
+ defaultVersion: "0.3.1",
+
+ /**
+ * Constructor: OpenLayers.Format.OWSContext
+ * Create a new parser for OWS Context documents.
+ *
+ * Parameters:
+ * options - {Object} An optional object whose properties will be set on
+ * this instance.
+ */
+
+ /**
+ * 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);
+ // 0.3.1 is backwards compatible with 0.3.0
+ if (version === "0.3.0") {
+ version = this.defaultVersion;
+ }
+ return version;
+ },
+
+ /**
+ * Method: toContext
+ * Create a context object free from layer given a map or a
+ * context object.
+ *
+ * Parameters:
+ * obj - {<OpenLayers.Map> | Object} The map or context.
+ *
+ * Returns:
+ * {Object} A context object.
+ */
+ toContext: function(obj) {
+ var context = {};
+ if(obj.CLASS_NAME == "OpenLayers.Map") {
+ context.bounds = obj.getExtent();
+ context.maxExtent = obj.maxExtent;
+ context.projection = obj.projection;
+ context.size = obj.getSize();
+ context.layers = obj.layers;
+ }
+ return context;
+ },
+
+ CLASS_NAME: "OpenLayers.Format.OWSContext"
+
+});