Exemplo n.º 1
0
        public RawLoggerViewModel(ILogInterceptor logIntercetptor)
        {

            _interceptor = logIntercetptor;
            _Logs = new ObservableCollection<LogMessageViewModel>();
            Commands = new ObservableCollection<AggregateLogMessageViewModel>();
            Handlers = new ObservableCollection<AggregateLogMessageViewModel>();
            AggregatedLogs = new ObservableCollection<OpTypeLoggerViewModel>();
            CvsLogs = new CollectionViewSource();
            CvsLogs.Source = _Logs;
            CvsLogs.Filter += CvsLogsFilter;
            Logs = CvsLogs.View;
            _interceptor.LogIntercepted += LogIntercepted;

            PropertyChangedObserver.Monitor(this)
                .HandleChangesOf(vm => vm.LevelFilter, EvaluateFilter)
                .HandleChangesOf(vm => vm.MainFilter, EvaluateFilter);

            SpecificLoggers = new ObservableCollection<SpecificLoggerViewModel>();
            var specificLoggersOption = Properties.Settings.Default.SpecificLoggerList;
            if (!String.IsNullOrWhiteSpace(specificLoggersOption)) 
            {
                var specifiLoggerList = specificLoggersOption.Split(',', ';');
                foreach (var sl in specifiLoggerList)
                {
                    SpecificLoggers.Add(new SpecificLoggerViewModel(sl, _Logs));
                }
            }
            SpecificLoggers.CollectionChanged += SpecificLoggersCollectionChanged;
            Root = new LoggerViewModel("root");
        }
Exemplo n.º 2
0
        public RawLoggerViewModel(ILogInterceptor logIntercetptor)
        {
            _interceptor    = logIntercetptor;
            _Logs           = new ObservableCollection <LogMessageViewModel>();
            Commands        = new ObservableCollection <AggregateLogMessageViewModel>();
            Handlers        = new ObservableCollection <AggregateLogMessageViewModel>();
            AggregatedLogs  = new ObservableCollection <OpTypeLoggerViewModel>();
            CvsLogs         = new CollectionViewSource();
            CvsLogs.Source  = _Logs;
            CvsLogs.Filter += CvsLogsFilter;
            Logs            = CvsLogs.View;
            _interceptor.LogIntercepted += LogIntercepted;

            PropertyChangedObserver.Monitor(this)
            .HandleChangesOf(vm => vm.LevelFilter, EvaluateFilter)
            .HandleChangesOf(vm => vm.MainFilter, EvaluateFilter);

            SpecificLoggers = new ObservableCollection <SpecificLoggerViewModel>();
            var specificLoggersOption = Properties.Settings.Default.SpecificLoggerList;

            if (!String.IsNullOrWhiteSpace(specificLoggersOption))
            {
                var specifiLoggerList = specificLoggersOption.Split(',', ';');
                foreach (var sl in specifiLoggerList)
                {
                    SpecificLoggers.Add(new SpecificLoggerViewModel(sl, _Logs));
                }
            }
            SpecificLoggers.CollectionChanged += SpecificLoggersCollectionChanged;
            Root = new LoggerViewModel("root");
        }
Exemplo n.º 3
0
 public void ParseLogger(String[] loggerParts, Int32 level) 
 {
     if (level == LoggerLevel) 
     {
         LoggerCount++;
         return;
     } 
     //do I have a child logger for this name?
     String name = loggerParts.Take(level + 1).Aggregate((s1, s2) => s1 + "." + s2);
     var cvm = Childs.SingleOrDefault(vm => vm.LoggerPrefix.Equals(name));
     if (cvm == null) 
     {
         cvm = new LoggerViewModel(name);
         Childs.Add(cvm);
     }
     cvm.ParseLogger(loggerParts, level + 1);
 }
Exemplo n.º 4
0
        public void ParseLogger(String[] loggerParts, Int32 level)
        {
            if (level == LoggerLevel)
            {
                LoggerCount++;
                return;
            }
            //do I have a child logger for this name?
            String name = loggerParts.Take(level + 1).Aggregate((s1, s2) => s1 + "." + s2);
            var    cvm  = Childs.SingleOrDefault(vm => vm.LoggerPrefix.Equals(name));

            if (cvm == null)
            {
                cvm = new LoggerViewModel(name);
                Childs.Add(cvm);
            }
            cvm.ParseLogger(loggerParts, level + 1);
        }