aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Persistence/IPeopleRepository.cs
diff options
context:
space:
mode:
authorCody Robibero <cody@robibe.ro>2026-08-07 21:43:21 -0400
committerGitHub <noreply@github.com>2026-08-07 21:43:21 -0400
commit247ee406a986933d6b006a55605bb1881588f35d (patch)
tree07203c8d1af51845fb830b53ed9ce6f86fae1a99 /MediaBrowser.Controller/Persistence/IPeopleRepository.cs
parent2218f2931c5ae2f2c7c676d321c9d6803f066782 (diff)
parentd6da6906a4b3426f05c5bf4ffe8bab4b2bc78ce8 (diff)
Merge pull request #17571 from obiwantoby/perf/batch-people-dto
Batch people lookups when building item DTOs
Diffstat (limited to 'MediaBrowser.Controller/Persistence/IPeopleRepository.cs')
-rw-r--r--MediaBrowser.Controller/Persistence/IPeopleRepository.cs7
1 files changed, 7 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Persistence/IPeopleRepository.cs b/MediaBrowser.Controller/Persistence/IPeopleRepository.cs
index e2833dc722..9811241d31 100644
--- a/MediaBrowser.Controller/Persistence/IPeopleRepository.cs
+++ b/MediaBrowser.Controller/Persistence/IPeopleRepository.cs
@@ -40,4 +40,11 @@ public interface IPeopleRepository
/// <param name="personTypes">The person types to include (e.g. "Actor", "Director").</param>
/// <returns>A dictionary mapping each item ID to its distinct people names, ordered by cast list order. Items with no matching people are omitted.</returns>
IReadOnlyDictionary<Guid, IReadOnlyList<string>> GetPeopleNamesByItems(IReadOnlyList<Guid> itemIds, IReadOnlyList<string> personTypes);
+
+ /// <summary>
+ /// Gets the people for multiple items in a single query, keyed by item id.
+ /// </summary>
+ /// <param name="itemIds">The item IDs to get people for.</param>
+ /// <returns>A dictionary mapping each item ID to its people (with role, type and sort order), ordered by cast list order. Items with no people are omitted.</returns>
+ IReadOnlyDictionary<Guid, IReadOnlyList<PersonInfo>> GetPeopleByItems(IReadOnlyList<Guid> itemIds);
}