func parse()

in sdk/core/AzureCore/Source/Pipeline/Policies/ContentDecodePolicy.swift [241:255]


    func parse(xml data: Data) throws -> AnyObject {
        let parser = XMLParser(data: data)
        parser.delegate = xmlParser
        _ = parser.parse()
        var jsonData: Data?
        if let dictObj = xmlParser.xmlTree?.dictionary {
            jsonData = try JSONSerialization.data(withJSONObject: dictObj, options: [])
        } else if let arrayObj = xmlParser.xmlTree?.array {
            jsonData = try JSONSerialization.data(withJSONObject: arrayObj, options: [])
        }
        guard let finalJson = jsonData else {
            throw AzureError.client("Unable to convert XML to JSON", nil)
        }
        return try JSONSerialization.jsonObject(with: finalJson, options: []) as AnyObject
    }