예제 #1
0
        public void RemoveTraceLine(CLogTraceLineInformation traceLine)
        {
            AreDirty = true;
            ChangesList.Add("Removed : " + traceLine.TraceID);
            ModuleUniqueness.Remove(traceLine);

            EventBundlesV2.Remove(traceLine.TraceID);
        }
예제 #2
0
        public CLogDecodedTraceLine FindBundle(string uid)
        {
            string name = uid.Split(':')[1];

            if (!EventBundlesV2.ContainsKey(name))
            {
                return(null);
            }

            return(EventBundlesV2[name]);
        }
예제 #3
0
 private void MergeHot()
 {
     //
     // Merge in hot values
     //
     foreach (var hot in HotEventBundles)
     {
         CLogDecodedTraceLine old;
         if (EventBundlesV2.TryGetValue(hot.Key, out old))
         {
             foreach (var x in hot.Value.ModuleProperites)
             {
                 if (!old.ModuleProperites.ContainsKey(x.Key))
                 {
                     old.ModuleProperites[x.Key] = x.Value;
                     AreDirty = true;
                 }
                 else
                 {
                     foreach (var y in hot.Value.ModuleProperites[x.Key])
                     {
                         if (!old.ModuleProperites[x.Key].ContainsKey(y.Key))
                         {
                             old.ModuleProperites[x.Key][y.Key] = y.Value;
                             AreDirty = true;
                         }
                         else if (!old.ModuleProperites[x.Key][y.Key].Equals(y.Value))
                         {
                             old.ModuleProperites[x.Key][y.Key] = y.Value;
                             AreDirty = true;
                         }
                     }
                 }
             }
         }
         else
         {
             EventBundlesV2[hot.Key] = hot.Value;
             ChangesList.Add("Added New Event: " + hot.Key);
             AreDirty = true;
         }
     }
 }