From a7de7df1dab845a1083dd4c844fa17a578abfd4b Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Thu, 8 Aug 2013 16:18:05 -0400 Subject: [PATCH] fixed people task --- MediaBrowser.Api/AlbumsService.cs | 2 +- MediaBrowser.Api/GamesService.cs | 2 +- MediaBrowser.Api/MoviesService.cs | 2 +- MediaBrowser.Api/SimilarItemsHelper.cs | 4 ++-- MediaBrowser.Api/TrailersService.cs | 2 +- MediaBrowser.Api/TvShowsService.cs | 2 +- .../Library/LibraryManager.cs | 9 +++++---- 7 files changed, 12 insertions(+), 11 deletions(-) diff --git a/MediaBrowser.Api/AlbumsService.cs b/MediaBrowser.Api/AlbumsService.cs index 2b68e432e1..c1a476e09b 100644 --- a/MediaBrowser.Api/AlbumsService.cs +++ b/MediaBrowser.Api/AlbumsService.cs @@ -46,7 +46,7 @@ namespace MediaBrowser.Api /// System.Object. public object Get(GetSimilarAlbums request) { - var result = SimilarItemsHelper.GetSimilarItems(_userManager, + var result = SimilarItemsHelper.GetSimilarItemsResult(_userManager, _itemRepo, _libraryManager, _userDataRepository, diff --git a/MediaBrowser.Api/GamesService.cs b/MediaBrowser.Api/GamesService.cs index 4529a9c535..0073397dd2 100644 --- a/MediaBrowser.Api/GamesService.cs +++ b/MediaBrowser.Api/GamesService.cs @@ -57,7 +57,7 @@ namespace MediaBrowser.Api /// System.Object. public object Get(GetSimilarGames request) { - var result = SimilarItemsHelper.GetSimilarItems(_userManager, + var result = SimilarItemsHelper.GetSimilarItemsResult(_userManager, _itemRepo, _libraryManager, _userDataRepository, diff --git a/MediaBrowser.Api/MoviesService.cs b/MediaBrowser.Api/MoviesService.cs index fe9f4cef10..166a843dc4 100644 --- a/MediaBrowser.Api/MoviesService.cs +++ b/MediaBrowser.Api/MoviesService.cs @@ -64,7 +64,7 @@ namespace MediaBrowser.Api /// System.Object. public object Get(GetSimilarMovies request) { - var result = SimilarItemsHelper.GetSimilarItems(_userManager, + var result = SimilarItemsHelper.GetSimilarItemsResult(_userManager, _itemRepo, _libraryManager, _userDataRepository, diff --git a/MediaBrowser.Api/SimilarItemsHelper.cs b/MediaBrowser.Api/SimilarItemsHelper.cs index fd49af8dee..5f5d6a2f3f 100644 --- a/MediaBrowser.Api/SimilarItemsHelper.cs +++ b/MediaBrowser.Api/SimilarItemsHelper.cs @@ -89,7 +89,7 @@ namespace MediaBrowser.Api /// The include in search. /// The get similarity score. /// ItemsResult. - internal static ItemsResult GetSimilarItems(IUserManager userManager, IItemRepository itemRepository, ILibraryManager libraryManager, IUserDataRepository userDataRepository, ILogger logger, BaseGetSimilarItems request, Func includeInSearch, Func getSimilarityScore) + internal static ItemsResult GetSimilarItemsResult(IUserManager userManager, IItemRepository itemRepository, ILibraryManager libraryManager, IUserDataRepository userDataRepository, ILogger logger, BaseGetSimilarItems request, Func includeInSearch, Func getSimilarityScore) { var user = request.UserId.HasValue ? userManager.GetUserById(request.UserId.Value) : null; @@ -125,7 +125,7 @@ namespace MediaBrowser.Api /// The include in search. /// The get similarity score. /// IEnumerable{BaseItem}. - private static IEnumerable GetSimilaritems(BaseItem item, IEnumerable inputItems, Func includeInSearch, Func getSimilarityScore) + internal static IEnumerable GetSimilaritems(BaseItem item, IEnumerable inputItems, Func includeInSearch, Func getSimilarityScore) { inputItems = inputItems.Where(includeInSearch); diff --git a/MediaBrowser.Api/TrailersService.cs b/MediaBrowser.Api/TrailersService.cs index 777aced076..96eb5b6c0f 100644 --- a/MediaBrowser.Api/TrailersService.cs +++ b/MediaBrowser.Api/TrailersService.cs @@ -57,7 +57,7 @@ namespace MediaBrowser.Api /// System.Object. public object Get(GetSimilarTrailers request) { - var result = SimilarItemsHelper.GetSimilarItems(_userManager, + var result = SimilarItemsHelper.GetSimilarItemsResult(_userManager, _itemRepo, _libraryManager, _userDataRepository, diff --git a/MediaBrowser.Api/TvShowsService.cs b/MediaBrowser.Api/TvShowsService.cs index f5d3c99912..4d277dc38f 100644 --- a/MediaBrowser.Api/TvShowsService.cs +++ b/MediaBrowser.Api/TvShowsService.cs @@ -123,7 +123,7 @@ namespace MediaBrowser.Api /// System.Object. public object Get(GetSimilarShows request) { - var result = SimilarItemsHelper.GetSimilarItems(_userManager, + var result = SimilarItemsHelper.GetSimilarItemsResult(_userManager, _itemRepo, _libraryManager, _userDataRepository, diff --git a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs index e06107b636..58c89141f5 100644 --- a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs +++ b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs @@ -376,14 +376,15 @@ namespace MediaBrowser.Server.Implementations.Library // Get all user collection folders // Skip BasePluginFolders because we already got them from RootFolder.RecursiveChildren - var userFolders = - userRootFolders.SelectMany(i => i.Children) + var userFolders = userRootFolders.SelectMany(i => i.Children) .Where(i => !(i is BasePluginFolder)) .ToList(); items.AddRange(userFolders); - return new ConcurrentDictionary(items.ToDictionary(i => i.Id)); + var disctinctItems = items.DistinctBy(i => i.Id).ToList(); + + return new ConcurrentDictionary(disctinctItems.ToDictionary(i => i.Id)); } /// @@ -846,7 +847,7 @@ namespace MediaBrowser.Server.Implementations.Library var tasks = new List(); - var includedPersonTypes = new[] { PersonType.Actor, PersonType.Director, PersonType.GuestStar, PersonType.Writer, PersonType.Director, PersonType.Producer } + var includedPersonTypes = new[] { PersonType.Actor, PersonType.Director, PersonType.GuestStar, PersonType.Writer, PersonType.Producer } .ToDictionary(i => i, StringComparer.OrdinalIgnoreCase); var people = RootFolder.RecursiveChildren