Ejemplo n.º 1
0
        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;

        }
Ejemplo n.º 2
0
 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");
 }
Ejemplo n.º 5
0
 public void visitCSF_metricIpInName(CSF_metricIpInName metric)
 {
     throw new Exception("Merging does not do void visit");
 }