Optimize Validator and Filter Performance

This commit is contained in:
Shadowghost
2026-01-31 19:19:26 +01:00
parent 694db80d4c
commit 2789532aa8
17 changed files with 2077 additions and 92 deletions

View File

@@ -723,5 +723,12 @@ namespace MediaBrowser.Controller.Library
/// <param name="toChildId">The child ID to re-route to.</param>
/// <returns>Number of references updated.</returns>
int RerouteLinkedChildReferences(Guid fromChildId, Guid toChildId);
/// <summary>
/// Gets legacy query filters for filtering UI.
/// </summary>
/// <param name="query">The query filter.</param>
/// <returns>Aggregated filter values.</returns>
QueryFiltersLegacy GetQueryFiltersLegacy(InternalItemsQuery query);
}
}

View File

@@ -218,6 +218,13 @@ public interface IItemRepository
/// <returns>List of parent IDs that reference the child.</returns>
IReadOnlyList<Guid> GetManualLinkedParentIds(Guid childId);
/// <summary>
/// Gets legacy query filters (Years, Genres, Tags, OfficialRatings) aggregated directly from the database.
/// </summary>
/// <param name="filter">The query filter.</param>
/// <returns>Aggregated filter values.</returns>
QueryFiltersLegacy GetQueryFiltersLegacy(InternalItemsQuery filter);
/// <summary>
/// Updates LinkedChildren references from one child to another, preserving SortOrder.
/// Handles duplicates: if parent already references toChildId, removes the old reference instead.