private void FindVersionFromSource() { // try to find the xmlns and the correct version to use. XmlReader reader = _source.GetReader(); while (!reader.EOF) { if (reader.NodeType == XmlNodeType.Element && reader.Name == "kml") { string ns = reader.GetAttribute("xmlns"); switch (ns) { case "http://earth.google.com/kml/2.0": // trick here for the google maps geocoding resultes. reader.Read(); while (!reader.EOF) { if (reader.NodeType == XmlNodeType.Element && reader.Name.ToLower() == "response") { _version = KmlVersion.Kmlv2_0_response; break; } else if (reader.NodeType == XmlNodeType.Element) { _version = KmlVersion.Kmlv2_0; break; } reader.Read(); } break; case "http://earth.google.com/kml/2.1": _version = KmlVersion.Kmlv2_1; break; } } else if (reader.NodeType == XmlNodeType.Element) { throw new XmlException("First element expected: kml!"); } // check end conditions. if (_version != KmlVersion.Unknown) { reader.Close(); reader = null; break; } reader.Read(); } }
private void FindVersionFromObject() { _version = KmlVersion.Unknown; if (_kml_object is OsmSharp.Xml.Kml.v2_0.kml) { _version = KmlVersion.Kmlv2_0; } else if (_kml_object is OsmSharp.Xml.Kml.v2_0_response.kml) { _version = KmlVersion.Kmlv2_0_response; } else if (_kml_object is OsmSharp.Xml.Kml.v2_1.KmlType) { _version = KmlVersion.Kmlv2_1; } }
private void FindVersionFromSource() { XmlReader reader = this._source.GetReader(); while (!reader.EOF) { if (reader.NodeType == XmlNodeType.Element && reader.Name == "kml") { string attribute = reader.GetAttribute("xmlns"); if (!(attribute == "http://earth.google.com/kml/2.0")) { if (attribute == "http://earth.google.com/kml/2.1") { this._version = KmlVersion.Kmlv2_1; } } else { reader.Read(); while (!reader.EOF) { if (reader.NodeType == XmlNodeType.Element && reader.Name.ToLower() == "response") { this._version = KmlVersion.Kmlv2_0_response; break; } if (reader.NodeType == XmlNodeType.Element) { this._version = KmlVersion.Kmlv2_0; break; } reader.Read(); } } } else if (reader.NodeType == XmlNodeType.Element) { throw new XmlException("First element expected: kml!"); } if (this._version != KmlVersion.Unknown) { break; } reader.Read(); } }
private void FindVersionFromObject() { this._version = KmlVersion.Unknown; if (this._kml_object is OsmSharp.IO.Xml.Kml.v2_0.kml) { this._version = KmlVersion.Kmlv2_0; } else if (this._kml_object is OsmSharp.IO.Xml.Kml.v2_0_response.kml) { this._version = KmlVersion.Kmlv2_0_response; } else { if (!(this._kml_object is KmlType)) { return; } this._version = KmlVersion.Kmlv2_1; } }
/// <summary> /// Creates a new kml document based on an xml source. /// </summary> /// <param name="source"></param> public KmlDocument(IXmlSource source) { _source = source; _version = KmlVersion.Unknown; }
private void FindVersionFromObject() { _version = KmlVersion.Unknown; if (_kml_object is OsmSharp.Tools.Xml.Kml.v2_0.kml) { _version = KmlVersion.Kmlv2_0; } else if (_kml_object is OsmSharp.Tools.Xml.Kml.v2_0_response.kml) { _version = KmlVersion.Kmlv2_0_response; } else if (_kml_object is OsmSharp.Tools.Xml.Kml.v2_1.KmlType) { _version = KmlVersion.Kmlv2_1; } }
public KmlDocument(IXmlSource source) { this._source = source; this._version = KmlVersion.Unknown; }