aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Persistence/IPeopleRepository.cs
diff options
context:
space:
mode:
authorShadowghost <Ghost_of_Stone@web.de>2026-05-30 19:07:18 +0200
committerShadowghost <Ghost_of_Stone@web.de>2026-05-30 19:09:11 +0200
commita479e145dc1b31c0babd27994122dde0dbc6e9cb (patch)
tree8ccdb724ec610ea0ccbf5510b3b388a0c0e5c682 /MediaBrowser.Controller/Persistence/IPeopleRepository.cs
parentcb9d6e9884d3b952321736392801743198b0ccd9 (diff)
parent99e9b2310f8a2c2a8bc630b31243df63507b1e17 (diff)
Merge remote-tracking branch 'upstream/master' into search-rebased
# Conflicts: # Emby.Server.Implementations/Library/LibraryManager.cs # Jellyfin.Server.Implementations/Item/PeopleRepository.cs # MediaBrowser.Controller/Library/ILibraryManager.cs # MediaBrowser.Controller/Persistence/IPeopleRepository.cs
Diffstat (limited to 'MediaBrowser.Controller/Persistence/IPeopleRepository.cs')
-rw-r--r--MediaBrowser.Controller/Persistence/IPeopleRepository.cs11
1 files changed, 5 insertions, 6 deletions
diff --git a/MediaBrowser.Controller/Persistence/IPeopleRepository.cs b/MediaBrowser.Controller/Persistence/IPeopleRepository.cs
index 3a3b2bfb1f..7474130ec4 100644
--- a/MediaBrowser.Controller/Persistence/IPeopleRepository.cs
+++ b/MediaBrowser.Controller/Persistence/IPeopleRepository.cs
@@ -34,12 +34,11 @@ public interface IPeopleRepository
IReadOnlyList<string> GetPeopleNames(InternalPeopleQuery filter);
/// <summary>
- /// Gets the people names per item for a batch of item IDs, preserving per-item list order.
- /// One database round-trip for the whole batch; grouped by item id in memory.
- /// Items with no people are omitted from the returned dictionary.
+ /// Gets distinct people names for multiple items efficiently by querying from the mapping table.
/// </summary>
/// <param name="itemIds">The item IDs to get people for.</param>
- /// <param name="personTypes">Optional person types to include (e.g. "Actor", "Director"). Empty for all.</param>
- /// <returns>Dictionary keyed by item id; values are the per-item people names.</returns>
- IReadOnlyDictionary<Guid, IReadOnlyList<string>> GetPeopleNamesByItem(IReadOnlyList<Guid> itemIds, IReadOnlyList<string> personTypes);
+ /// <param name="personTypes">The person types to include (e.g. "Actor", "Director").</param>
+ /// <param name="limit">Maximum number of names to return.</param>
+ /// <returns>The distinct people names.</returns>
+ IReadOnlyList<string> GetPeopleNamesByItems(IReadOnlyList<Guid> itemIds, IReadOnlyList<string> personTypes, int limit);
}