jellyfin/Emby.Dlna/Didl/Filter.cs

30 lines
672 B
C#
Raw Normal View History

#pragma warning disable CS1591
using System;
2016-10-29 22:22:20 +00:00
2016-10-29 22:34:54 +00:00
namespace Emby.Dlna.Didl
2016-10-29 22:22:20 +00:00
{
public class Filter
{
2017-08-24 19:52:19 +00:00
private readonly string[] _fields;
2016-10-29 22:22:20 +00:00
private readonly bool _all;
public Filter()
: this("*")
{
}
public Filter(string filter)
{
2020-01-09 16:07:13 +00:00
_all = string.Equals(filter, "*", StringComparison.OrdinalIgnoreCase);
2016-10-29 22:22:20 +00:00
_fields = (filter ?? string.Empty).Split(',', StringSplitOptions.RemoveEmptyEntries);
2016-10-29 22:22:20 +00:00
}
public bool Contains(string field)
{
2020-08-20 19:04:57 +00:00
return _all || Array.Exists(_fields, x => x.Equals(field, StringComparison.OrdinalIgnoreCase));
2016-10-29 22:22:20 +00:00
}
}
}