EAImvertor.EAImvertorJob.getReport C# (CSharp) 메소드

getReport() 개인적인 메소드

private getReport ( string reportURL, System.DateTime startTimeStamp = default(DateTime) ) : XmlDocument
reportURL string
startTimeStamp System.DateTime
리턴 System.Xml.XmlDocument
        private XmlDocument getReport(string reportURL, DateTime startTimeStamp = default(DateTime))
        {
            //initialize startDateTime it was not passed as parameter
            if (startTimeStamp == default(DateTime)) startTimeStamp = DateTime.Now;
            var client = settings.getHttpClient();
            //we try for 5 seconds
            if ((DateTime.Now - startTimeStamp).Seconds < 5)
            {
                var response = client.GetAsync(reportURL).Result;
                if (response.IsSuccessStatusCode)
                {
                   	StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result);
                    string responseText = reader.ReadToEnd();
                    XmlDocument xmlResponse = new XmlDocument();
                    xmlResponse.LoadXml(responseText);
                    return xmlResponse;
                }
                else
                {
                    //not successful, wait for half a second to try again
                    Thread.Sleep(500);
                    return getReport(reportURL,startTimeStamp);
                }
            }
            else
            {
                //timedout
                return null;
            }
        }