diff options
| author | Shadowghost <Ghost_of_Stone@web.de> | 2026-01-18 14:59:57 +0100 |
|---|---|---|
| committer | Shadowghost <Ghost_of_Stone@web.de> | 2026-01-18 19:48:46 +0100 |
| commit | 2086ac7dd2f64f286ea3c88a53cc0860f28454f8 (patch) | |
| tree | 0c2b8c3571d6b554942a4c6e59e987ad886ccbca /src/Jellyfin.Database/Jellyfin.Database.Implementations/IDescendantQueryProvider.cs | |
| parent | 4a1012fd227be096d9cb79d68b55257e1e8dcaff (diff) | |
Don't use raw SQL
Diffstat (limited to 'src/Jellyfin.Database/Jellyfin.Database.Implementations/IDescendantQueryProvider.cs')
| -rw-r--r-- | src/Jellyfin.Database/Jellyfin.Database.Implementations/IDescendantQueryProvider.cs | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/src/Jellyfin.Database/Jellyfin.Database.Implementations/IDescendantQueryProvider.cs b/src/Jellyfin.Database/Jellyfin.Database.Implementations/IDescendantQueryProvider.cs deleted file mode 100644 index 9e3d510b9c..0000000000 --- a/src/Jellyfin.Database/Jellyfin.Database.Implementations/IDescendantQueryProvider.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System; -using System.Linq; -using Jellyfin.Database.Implementations.MatchCriteria; - -namespace Jellyfin.Database.Implementations; - -/// <summary> -/// Provider interface for descendant queries using recursive CTEs. -/// Each database provider implements this with provider-specific SQL. -/// </summary> -public interface IDescendantQueryProvider -{ - /// <summary> - /// Gets a queryable of all descendant IDs for a parent item. - /// Uses recursive CTE to traverse AncestorIds and LinkedChildren infinitely. - /// </summary> - /// <param name="context">Database context.</param> - /// <param name="parentId">Parent item ID.</param> - /// <returns>Queryable of descendant item IDs.</returns> - IQueryable<Guid> GetAllDescendantIds(JellyfinDbContext context, Guid parentId); - - /// <summary> - /// Gets a queryable of all folder IDs that have any descendant matching the specified criteria. - /// Uses recursive CTE for infinite depth traversal. Can be used in LINQ .Contains() expressions. - /// </summary> - /// <param name="context">Database context.</param> - /// <param name="criteria">The matching criteria to apply.</param> - /// <returns>Queryable of folder IDs.</returns> - IQueryable<Guid> GetFolderIdsMatching(JellyfinDbContext context, FolderMatchCriteria criteria); -} |
