public XmlResultv2 ConvertIATI(string org, string country)
{
string activitiesURL;
IParserIATI parserIATI;
XmlResultv2 returnResult2 = null;
XmlResultv1 returnResult1 = null;
try
{
activitiesURL = "http://datastore.iatistandard.org/api/1/access/activity.xml?recipient-country=" + country + "&reporting-org=" + org + "&stream=True";
//Parser v2.01
parserIATI = new ParserIATIv2();
returnResult2 = (XmlResultv2)parserIATI.ParseIATIXML(activitiesURL);
var iatiactivityArray = returnResult2?.iatiactivities?.iatiactivity;
if (iatiactivityArray != null && iatiactivityArray.n()[0].AnyAttr.n()[0].Value.StartsWith("1.0"))
{
//Parser v1.05
parserIATI = new ParserIATIv1();
returnResult1 = (XmlResultv1)parserIATI.ParseIATIXML(activitiesURL);
//Conversion
ConvertIATIv2 convertIATIv2 = new ConvertIATIv2();
returnResult2 = convertIATIv2.ConvertIATI105to201XML(returnResult1, returnResult2);
}
}
catch (Exception ex)
{
returnResult2.n().Value = ex.Message;
}
return returnResult2;
//return Newtonsoft.Json.JsonConvert.SerializeObject(returnResult2);
}