parseXml method
Return an Map object for the given the path of XML plist format string.
Implementation
Map parseXml(String xml) {
Iterable<XmlElement> elements;
try {
var doc = XmlDocument.parse(xml);
elements = doc.rootElement.children.where(_isElement).cast<XmlElement>();
} catch (e) {
throw XmlParserException(e.toString());
}
if (elements.isEmpty) {
throw NotFoundException('Not found plist elements');
}
if (elements.first.localName == 'array') {
// array
return _handleArray(elements.first).asMap();
} else {
// dictionary
return _handleDict(elements.first);
}
}