Example #1
0
 public ModelsCreate(LogInfo logInfo, Writer <LogInfo> writerLogInfo,
                     Writer <IpAddressCompany> writerIpAddress, IpAddressCompany ipAddressCompany, InfoAboutFile infoAboutFile)
 {
     this.infoAboutFile    = infoAboutFile;
     this.ipAddressCompany = ipAddressCompany;
     this.logInfo          = logInfo;
     this.writerLogInfo    = writerLogInfo;
     this.writerIpAddress  = writerIpAddress;
 }
Example #2
0
        private IpAddressCompany GetOwner(string content, string item, IpAddressCompany ipAddressCompany)
        {
            XmlDocument xmlDocument = new XmlDocument();

            xmlDocument.LoadXml(content);
            var orgName = xmlDocument.InnerText;

            ipAddressCompany.IpAddress = item;
            ipAddressCompany.Company   = orgName;
            return(ipAddressCompany);
        }
Example #3
0
        static void Main(string[] args)
        {
            const string pathToLogFile = @"../../LogIsHere/tariscope.access.log";

            List <string> ipList       = new List <string>();
            List <string> fileNameList = new List <string>();

            LogInfo                   logInfo          = new LogInfo();
            IpAddressCompany          ipAddressCompany = new IpAddressCompany();
            InfoAboutFile             infoAboutFile    = new InfoAboutFile();
            Writer <LogInfo>          writerLogInfo    = new Writer <LogInfo>(new LogFileContext());
            Writer <IpAddressCompany> writerIpAddress  = new Writer <IpAddressCompany>(new LogFileContext());
            ModelsCreate <LogInfo>    create           = new ModelsCreate <LogInfo>(logInfo, writerLogInfo, writerIpAddress, ipAddressCompany, infoAboutFile);

            create.CreatModel(pathToLogFile);
        }
Example #4
0
        private async Task GetOwnersIpsAsync(List <string> list, Writer <IpAddressCompany> writerIpAddress, IpAddressCompany ipAddressCompany)
        {
            Stopwatch sw = Stopwatch.StartNew();

            foreach (var item in list)
            {
                HttpClient client   = new HttpClient();
                var        response = await client.GetAsync(string.Format("http://ip-api.com/xml/{0}?fields=org", item));

                response.EnsureSuccessStatusCode();
                var content = await response.Content.ReadAsStringAsync();

                writerIpAddress.WriteToDb(GetOwner(content, item, ipAddressCompany));
                Thread.Sleep(400);
            }
            sw.Stop();
            Console.WriteLine("record IpAddress is done");
        }