# all files / ol/format/ xmlformat.js

81.25% Statements 13/16
66.67% Branches 4/6
100% Functions 2/2
81.25% Lines 13/16

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    491×

    1×
    1×

    1×

    1×
    6×
    1×
    5×

    5×
    5×
    5×

    1×

    1×
     goog.provide('ol.format.XML');

    goog.require('goog.asserts');
    goog.require('ol.xml');

    /**
     * @classdesc
     * Generic format for reading non-feature XML data
     *
     * @constructor
     * @struct
     */
    ol.format.XML = function() {
    };

    /**
     * @param {Document|Node|string} source Source.
     * @return {Object} The parsed result.
     */
    ol.format.XML.prototype.read = function(source) {
      if (ol.xml.isDocument(source)) {
        return this.readFromDocument(/** @type {Document} */ (source));
      } else Iif (ol.xml.isNode(source)) {
        return this.readFromNode(/** @type {Node} */ (source));
      } else Eif (typeof source === 'string') {
        var doc = ol.xml.parse(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;