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