| | | 1 | | #pragma warning disable SA1313 // Parameter names should begin with lower-case letter |
| | | 2 | | |
| | | 3 | | using System.Collections.Generic; |
| | | 4 | | using Jellyfin.Database.Implementations.Entities; |
| | | 5 | | |
| | | 6 | | namespace Jellyfin.Database.Implementations.MatchCriteria; |
| | | 7 | | |
| | | 8 | | /// <summary> |
| | | 9 | | /// Matches folders containing descendants with a specific media stream type and language. |
| | | 10 | | /// </summary> |
| | | 11 | | /// <param name="StreamType">The type of media stream to match (Audio, Subtitle, etc.).</param> |
| | | 12 | | /// <param name="Language">List of languages to match.</param> |
| | | 13 | | /// <param name="IsExternal">If not null, filters by internal (false) or external (true) streams. Only applicable to sub |
| | 0 | 14 | | public sealed record HasMediaStreamType( |
| | 0 | 15 | | MediaStreamTypeEntity StreamType, |
| | 0 | 16 | | IReadOnlyCollection<string> Language, |
| | 0 | 17 | | bool? IsExternal = null) : FolderMatchCriteria |
| | | 18 | | { |
| | | 19 | | /// <summary> |
| | | 20 | | /// Initializes a new instance of the <see cref="HasMediaStreamType"/> class. |
| | | 21 | | /// </summary> |
| | | 22 | | /// <param name="StreamType">The type of media stream to match (Audio, Subtitle, etc.).</param> |
| | | 23 | | /// <param name="Language">The language to match.</param> |
| | | 24 | | /// <param name="IsExternal">If not null, filters by internal (false) or external (true) streams. Only applicable to |
| | | 25 | | public HasMediaStreamType( |
| | | 26 | | MediaStreamTypeEntity StreamType, |
| | | 27 | | string Language, |
| | 0 | 28 | | bool? IsExternal = null) : this(StreamType, [Language], IsExternal) |
| | | 29 | | { |
| | 0 | 30 | | } |
| | | 31 | | } |