diff options
Diffstat (limited to 'MediaBrowser.Api/UserLibrary/GameGenresService.cs')
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/GameGenresService.cs | 29 |
1 files changed, 8 insertions, 21 deletions
diff --git a/MediaBrowser.Api/UserLibrary/GameGenresService.cs b/MediaBrowser.Api/UserLibrary/GameGenresService.cs index 58237f80f..a0883f98c 100644 --- a/MediaBrowser.Api/UserLibrary/GameGenresService.cs +++ b/MediaBrowser.Api/UserLibrary/GameGenresService.cs @@ -9,16 +9,13 @@ using ServiceStack; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Api.UserLibrary { [Route("/GameGenres", "GET", Summary = "Gets all Game genres from a given item, folder, or the entire library")] public class GetGameGenres : GetItemsByName { - public GetGameGenres() - { - MediaTypes = MediaType.Game; - } } [Route("/GameGenres/{Name}", "GET", Summary = "Gets a Game genre, by name")] @@ -87,11 +84,16 @@ namespace MediaBrowser.Api.UserLibrary /// <returns>System.Object.</returns> public object Get(GetGameGenres request) { - var result = GetResult(request); + var result = GetResultSlim(request); return ToOptimizedSerializedResultUsingCache(result); } + protected override QueryResult<Tuple<BaseItem, ItemCounts>> GetItems(GetItemsByName request, InternalItemsQuery query) + { + return LibraryManager.GetGameGenres(query); + } + /// <summary> /// Gets all items. /// </summary> @@ -100,22 +102,7 @@ namespace MediaBrowser.Api.UserLibrary /// <returns>IEnumerable{Tuple{System.StringFunc{System.Int32}}}.</returns> protected override IEnumerable<BaseItem> GetAllItems(GetItemsByName request, IEnumerable<BaseItem> items) { - return items - .SelectMany(i => i.Genres) - .DistinctNames() - .Select(name => - { - try - { - return LibraryManager.GetGameGenre(name); - } - catch (Exception ex) - { - Logger.ErrorException("Error getting genre {0}", ex, name); - return null; - } - }) - .Where(i => i != null); + throw new NotImplementedException(); } } } |
