public virtual void SetTagFilter(string tagsToFilter, string modeOfFiltering) { TagFilterMode filterMode; if (string.IsNullOrWhiteSpace(modeOfFiltering)) { filterMode = TagFilterMode.Undefined; } else { filterMode = TagFilterMode.Get(modeOfFiltering); } if (filterMode == TagFilterMode.CustomInclusive || filterMode == TagFilterMode.CustomExclusive) { if (string.IsNullOrWhiteSpace(tagsToFilter)) { throw new ArgumentException($"Tag list cannot be null when filter mode is set to '{filterMode}'"); } } TagFilter tagFilter = TagFilter.Create(filterMode); if (!string.IsNullOrWhiteSpace(tagsToFilter)) { foreach (var tag in tagsToFilter.Split(',')) { tagFilter.AddTag(tag); } } _tagFilter = tagFilter; }
internal static TagFilter Create(TagFilterMode filteringMode) { return(new TagFilter { _mode = filteringMode }); }