/// <summary>
        /// Method for XMLParsing
        /// </summary>
        /// <param name="responseString"></param>
        private CompanyDetails XmlParse(string responseString)
        {
            XmlDocument responseDocument = new XmlDocument();

            responseDocument.LoadXml(responseString);

            XmlNodeList nameList    = responseDocument.GetElementsByTagName(_mCname);
            XmlNodeList addressList = responseDocument.GetElementsByTagName(_mCaddress);
            XmlNodeList pageToken   = responseDocument.GetElementsByTagName(_nextPageToken);

            Thread.Sleep(3000);

            if (pageToken.Count != 0)
            {
                _token = pageToken[pageToken.Count - 1].InnerText;
            }
            else
            {
                _token = null;
            }

            var companyDetails = new CompanyDetails
            {
                Names     = new List <string>(),
                Addresses = new List <string>(),
            };

            foreach (XmlNode CompName in nameList)
            {
                companyDetails.Names.Add(CompName.InnerText);
            }

            foreach (XmlNode CompAddress in addressList)
            {
                companyDetails.Addresses.Add(CompAddress.InnerText);
            }
            return(companyDetails);
        }
        /// <summary>
        /// Method for validation and Calling GetResponseViaGoogleApi
        /// </summary>
        /// <param name="location"></param>
        /// <returns>response</returns>
        public CompanyDetails GetCompanies(string location)
        {
            var companies = new CompanyDetails
            {
                Names     = new List <string>(),
                Addresses = new List <string>(),
            };

            if (location.Equals(null))
            {
                return(null);
            }

            CallApiEntity callApiObject = new CallApiEntity();

            while (_token != null)
            {
                string response        = callApiObject.GetResponseViaGoogleApi(location, _token);
                var    resultCompanies = XmlParse(response);
                companies.Names.AddRange(resultCompanies.Names);
                companies.Addresses.AddRange(resultCompanies.Addresses);
            }
            return(companies);
        }