private async Task OnAddCommandExecuteAsync()
        {
            var logFilterGroup = new LogFilterGroup();

            if (await _uiVisualizerService.ShowDialogAsync <LogFilterGroupEditorViewModel>(logFilterGroup) ?? false)
            {
                FilterGroups.Add(logFilterGroup);
                await SaveFilterGroupsAsync();

                Updated.SafeInvoke(this);
            }
        }
        public LogFilterGroupEditorViewModel(LogFilterGroup logFilterGroup, IMessageService messageService,
                                             IUIVisualizerService uiVisualizerService)
        {
            Argument.IsNotNull(() => logFilterGroup);
            Argument.IsNotNull(() => messageService);
            Argument.IsNotNull(() => uiVisualizerService);

            _messageService      = messageService;
            _uiVisualizerService = uiVisualizerService;
            LogFilterGroup       = logFilterGroup;

            AddCommand    = new TaskCommand(OnAddCommandExecuteAsync);
            EditCommand   = new TaskCommand(OnEditCommandExecuteAsync, OnEditCommandCanExecute);
            RemoveCommand = new TaskCommand(OnRemoveCommandExecuteAsync, OnRemoveCommandCanExecute);
        }
Example #3
0
        protected virtual List <LogFilterGroup> CreateRuntimeFilterGroups()
        {
            var filterGroups = new List <LogFilterGroup>();

            var methodTimerFilterGroup = new LogFilterGroup
            {
                Name      = "Method timings",
                IsRuntime = true,
                IsEnabled = true
            };

            methodTimerFilterGroup.LogFilters.Add(new LogFilter
            {
                Name            = "Exclude anything but method timer",
                Action          = LogFilterAction.Exclude,
                ExpressionType  = LogFilterExpressionType.NotContains,
                ExpressionValue = "METHODTIMER",
                Target          = LogFilterTarget.LogMessage
            });

            filterGroups.Add(methodTimerFilterGroup);

            return(filterGroups);
        }