From 47fc7c6aeeb6d4304a03d1ec83489f9702feea51 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Thu, 18 May 2017 17:05:47 -0400 Subject: add GenreItems property --- .../Library/LibraryManager.cs | 33 ++++++++++++++++++++-- 1 file changed, 30 insertions(+), 3 deletions(-) (limited to 'Emby.Server.Implementations/Library') diff --git a/Emby.Server.Implementations/Library/LibraryManager.cs b/Emby.Server.Implementations/Library/LibraryManager.cs index 3c94f9784..c8151ec86 100644 --- a/Emby.Server.Implementations/Library/LibraryManager.cs +++ b/Emby.Server.Implementations/Library/LibraryManager.cs @@ -895,6 +895,26 @@ namespace Emby.Server.Implementations.Library return CreateItemByName(Studio.GetPath, name); } + public Guid GetStudioId(string name) + { + return GetItemByNameId(Studio.GetPath, name); + } + + public Guid GetGenreId(string name) + { + return GetItemByNameId(Genre.GetPath, name); + } + + public Guid GetMusicGenreId(string name) + { + return GetItemByNameId(MusicGenre.GetPath, name); + } + + public Guid GetGameGenreId(string name) + { + return GetItemByNameId(GameGenre.GetPath, name); + } + /// /// Gets a Genre /// @@ -974,14 +994,13 @@ namespace Emby.Server.Implementations.Library } } - var path = getPathFn(name); - var forceCaseInsensitiveId = ConfigurationManager.Configuration.EnableNormalizedItemByNameIds; - var id = GetNewItemIdInternal(path, typeof(T), forceCaseInsensitiveId); + var id = GetItemByNameId(getPathFn, name); var item = GetItemById(id) as T; if (item == null) { + var path = getPathFn(name); item = new T { Name = name, @@ -998,6 +1017,14 @@ namespace Emby.Server.Implementations.Library return item; } + private Guid GetItemByNameId(Func getPathFn, string name) + where T : BaseItem, new() + { + var path = getPathFn(name); + var forceCaseInsensitiveId = ConfigurationManager.Configuration.EnableNormalizedItemByNameIds; + return GetNewItemIdInternal(path, typeof(T), forceCaseInsensitiveId); + } + public IEnumerable GetAlbumArtists(IEnumerable items) { var names = items -- cgit v1.2.3