public static PingCastleReportCollection <T> LoadXmls(string Xmls, DateTime maxfiltervalue) { var output = new PingCastleReportCollection <T>(); int files = 0; foreach (string filename in Directory.GetFiles(Xmls, PingCastleFactory.GetFilePatternForLoad <T>(), SearchOption.AllDirectories)) { try { files++; T data = DataHelper <T> .LoadXml(filename); // taking the more recent report if (data.GenerationDate > maxfiltervalue) { Trace.WriteLine("File " + filename + " ignored because generation date " + data.GenerationDate.ToString("u") + " is after the consolidation date " + maxfiltervalue.ToString("u")); continue; } output.Add(data); } catch (Exception ex) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Unable to load the file " + filename + " (" + ex.Message + ")"); Console.ResetColor(); Trace.WriteLine("Unable to load the file " + filename + " (" + ex.Message + ")"); Trace.WriteLine(ex.StackTrace); } } Console.WriteLine("Reports loaded: " + output.Count + " - on a total of " + files + " valid files"); output.EnrichInformation(); return(output); }
public static PingCastleReportCollection <HealthcheckData> TransformReportsToDemo(PingCastleReportCollection <HealthcheckData> consolidation) { string rotKey = GenerateRandomRotKey(); var output = new PingCastleReportCollection <HealthcheckData>(); foreach (HealthcheckData data in consolidation) { HealthcheckData demoreport = TransformReportToDemo(rotKey, data); output.Add(demoreport); } return(output); }