private ISet <MediaInstance> GetFilteredMedia(SearchMediaData searchMedia, DbSet <MediaInstance> mediaInstances) { var privateMediaFilter = new PrivateMediaFilter(searchMedia.UserId); var filteredMedia = privateMediaFilter.Filter(mediaInstances.ToList().AsReadOnly()) .ToHashSet(); return(filteredMedia); }
private IFilter <MediaInstance> ConstructFilter(SearchMediaData searchMediaData, IGraph <Tag> tagGraph) { var tagFilter = new TagFilter(searchMediaData.IncludedTags, searchMediaData.ExcludedTags, tagGraph); var timeRangeFilter = new TimeRangeFilter(searchMediaData.TimeRangeStart, searchMediaData.TimeRangeEnd); var privateMediaFilter = new PrivateMediaFilter(searchMediaData.UserId); var filterChain = new FilterChain <MediaInstance>(tagFilter, timeRangeFilter, privateMediaFilter); return(filterChain); }