Example #1
0
 public IEnumerable <string> Trace(string address, int maxHops = 30)
 {
     foreach (var line in tracer.GetOutputAndAdresses(address, maxHops))
     {
         Console.WriteLine(line);
         var gotIp = tracer.TryParseIP(line, out var parsedAddress);
         if (!gotIp)
         {
             Program.Log.Info($"Line \"{line}\" did not match");
             continue;
         }
         Program.Log.Info($"Got \"{parsedAddress}\" from \"{line}\"");
         var requestForInfoResult = infoProvider.GetAdressInfo(parsedAddress);
         if (requestForInfoResult.IsSuccess)
         {
             yield return(requestForInfoResult.Value.ToString());
         }
         else
         {
             yield return(requestForInfoResult.Error);
         }
     }
 }