/// <summary> /// Filters the update. /// </summary> private void FilterUpdate( ) { List <AppLibraryApp> filteredApps = new List <AppLibraryApp>( ); foreach (var app in AppLibraryApps) { FilterObject applicationFilterObject = ApplicationFilters.FirstOrDefault(f => f.Value.ToString( ) == app.Application); FilterObject versionFilterObject = VersionFilters.FirstOrDefault(f => f.Value.ToString( ) == app.Version); FilterObject publisherFilterObject = PublisherFilters.FirstOrDefault(f => f.Value.ToString( ) == app.Publisher); FilterObject publisherUrlFilterObject = PublisherUrlFilters.FirstOrDefault(f => f.Value.ToString( ) == app.PublisherUrl); if ((applicationFilterObject == null || applicationFilterObject.IsFiltered) && (versionFilterObject == null || versionFilterObject.IsFiltered) && (publisherFilterObject == null || publisherFilterObject.IsFiltered) && (publisherUrlFilterObject == null || publisherUrlFilterObject.IsFiltered)) { filteredApps.Add(app); } } FilteredAppLibraryApps = filteredApps; }
public void Update() { var filters = new List <ICreateFilterExpressions>(); if (LevelFilter > SystemEventLevel.Trace) { filters.Add(CreateGreaterThanOrEqualToFilter("Level", LevelFilter)); } if (ProcessFilters.Any()) { filters.Add(new OrElseFilter(FilterDefinition.Empty, ProcessFilters.Select(pid => CreateEqualToFilter("ProcessId", pid)))); } if (ApplicationFilters.Any()) { filters.Add(new OrElseFilter(FilterDefinition.Empty, ApplicationFilters.Select(name => CreateEqualToFilter("ProcessName", name)))); } if (SourceFilters.Any()) { filters.Add(new OrElseFilter(FilterDefinition.Empty, SourceFilters.Select(CreateTextFilter))); } if (UsernameFilters.Any()) { filters.Add(new OrElseFilter(FilterDefinition.Empty, UsernameFilters.Select(CreateTextFilter))); } if (MessageFilters.Any()) { filters.Add(new OrElseFilter(FilterDefinition.Empty, MessageFilters.Select(CreateTextFilter))); } dynamicFilter = new StaticFilterExpression(systemEvent, new AndAlsoFilter(FilterDefinition.Empty, filters).CreateExpression(filterParameters)); }