From 13698d0d0633d16a7071b33e3b713f778eca7075 Mon Sep 17 00:00:00 2001 From: Frederic Junod Date: Wed, 12 Feb 2014 10:05:58 +0100 Subject: [PATCH] Add ol.format.XML --- src/ol/format/xmlformat.js | 45 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 src/ol/format/xmlformat.js diff --git a/src/ol/format/xmlformat.js b/src/ol/format/xmlformat.js new file mode 100644 index 0000000000..28f1051273 --- /dev/null +++ b/src/ol/format/xmlformat.js @@ -0,0 +1,45 @@ +goog.provide('ol.format.XML'); + +goog.require('goog.asserts'); +goog.require('ol.xml'); + + + +/** + * @constructor + */ +ol.format.XML = function() { +}; + + +/** + * @param {Document|Node|string} source Source. + * @return {Object} + */ +ol.format.XML.prototype.read = function(source) { + if (ol.xml.isDocument(source)) { + return this.readFromDocument(/** @type {Document} */ (source)); + } else if (ol.xml.isNode(source)) { + return this.readFromNode(/** @type {Node} */ (source)); + } else if (goog.isString(source)) { + var doc = ol.xml.load(source); + return this.readFromDocument(doc); + } else { + goog.asserts.fail(); + return null; + } +}; + + +/** + * @param {Document} doc Document. + * @return {Object} + */ +ol.format.XML.prototype.readFromDocument = goog.abstractMethod; + + +/** + * @param {Node} node Node. + * @return {Object} + */ +ol.format.XML.prototype.readFromNode = goog.abstractMethod;