private CSF_metric correctMetric(CSF_metric metric) { string strMetric = metric.Metric; CSF_metric toReturn = metric; switch (strMetric) { case "CSF_HighDataDiffPeers" : toReturn = new CSF_metricHighDataDiffPeers(strMetric, metric.RawValues); break; case "CSF_ProtocolUPnP": toReturn = new CSF_metricProtocolUPnP(strMetric, metric.Sinners); break; case "CSF_LocalPeerDiscovery": toReturn = new CSF_metricLocalPeerDiscovery(strMetric, metric.Sinners); break; case "CSF_KnownTrackers": toReturn = new CSF_metricKnownTrackers(strMetric, metric.RawValues); break; case "CSF_IpInName": toReturn = new CSF_metricIpInName(strMetric, metric.RawValues); break; case "CSF_HighUpload": toReturn = new CSF_metricHighUpload(strMetric, metric.RawValues); break; case "CSF_HighDownload": toReturn = new CSF_metricHighDownload(strMetric, metric.RawValues); break; default: System.Console.WriteLine("\n\nNOT FOUND!!!\n\n" + strMetric + "\n\n"); break; } return toReturn; }
public bool visitWithBoolCSF_metricIpInName(CSF_metricIpInName metric) { if (this.sameType(metric)) { this.mergeIpInName(metric); return(true); } else { return(false); } }
public void visitCSF_metricIpInName(CSF_metricIpInName metric) { Dictionary <string, Hashtable> sinnerList = metric.RawValues; if (DEBUG.METRIC) { Console.ForegroundColor = ConsoleColor.DarkMagenta; System.Console.WriteLine(metric.Metric); Console.ResetColor(); } //We do register if a connection happens only once or more often, but we ignore that.. foreach (KeyValuePair <string, Hashtable> sourceEntry in sinnerList) { double metricValue = percentage(minimumIpInName, maximumIpInName, sourceEntry.Value.Count); if (metricValue > 0) { if (DEBUG.METRIC) { System.Console.WriteLine(sourceEntry.Key + " talked to " + sourceEntry.Value.Count + " domestic IPs"); } this.addEntry(sourceEntry.Key, metric.Metric, metricValue); } } }
public bool visitWithBoolCSF_metricIpInName(CSF_metricIpInName metric) { throw new Exception("Merging does not do bool visit"); }
public void visitCSF_metricIpInName(CSF_metricIpInName metric) { throw new Exception("Merging does not do void visit"); }