From 97bc7ec37891a4e2ea924d565c8ec98cc53601a8 Mon Sep 17 00:00:00 2001 From: LukePulverenti Luke Pulverenti luke pulverenti Date: Tue, 28 Aug 2012 08:39:23 -0400 Subject: Added error handling for both IBN and providers --- MediaBrowser.Controller/Library/ItemController.cs | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) (limited to 'MediaBrowser.Controller/Library/ItemController.cs') diff --git a/MediaBrowser.Controller/Library/ItemController.cs b/MediaBrowser.Controller/Library/ItemController.cs index fdc2276d0..26468c656 100644 --- a/MediaBrowser.Controller/Library/ItemController.cs +++ b/MediaBrowser.Controller/Library/ItemController.cs @@ -204,9 +204,7 @@ namespace MediaBrowser.Controller.Library /// public Task GetPerson(string name) { - string path = Path.Combine(Kernel.Instance.ApplicationPaths.PeoplePath, name); - - return GetImagesByNameItem(path, name); + return GetImagesByNameItem(Kernel.Instance.ApplicationPaths.PeoplePath, name); } /// @@ -214,9 +212,7 @@ namespace MediaBrowser.Controller.Library /// public Task GetStudio(string name) { - string path = Path.Combine(Kernel.Instance.ApplicationPaths.StudioPath, name); - - return GetImagesByNameItem(path, name); + return GetImagesByNameItem(Kernel.Instance.ApplicationPaths.StudioPath, name); } /// @@ -224,9 +220,7 @@ namespace MediaBrowser.Controller.Library /// public Task GetGenre(string name) { - string path = Path.Combine(Kernel.Instance.ApplicationPaths.GenrePath, name); - - return GetImagesByNameItem(path, name); + return GetImagesByNameItem(Kernel.Instance.ApplicationPaths.GenrePath, name); } /// @@ -234,12 +228,10 @@ namespace MediaBrowser.Controller.Library /// public Task GetYear(int value) { - string path = Path.Combine(Kernel.Instance.ApplicationPaths.YearPath, value.ToString()); - - return GetImagesByNameItem(path, value.ToString()); + return GetImagesByNameItem(Kernel.Instance.ApplicationPaths.YearPath, value.ToString()); } - private ConcurrentDictionary ImagesByNameItemCache = new ConcurrentDictionary(); + private ConcurrentDictionary ImagesByNameItemCache = new ConcurrentDictionary(StringComparer.OrdinalIgnoreCase); /// /// Generically retrieves an IBN item @@ -247,7 +239,9 @@ namespace MediaBrowser.Controller.Library private Task GetImagesByNameItem(string path, string name) where T : BaseEntity, new() { - string key = path.ToLower(); + name = FileData.GetValidFilename(name); + + string key = Path.Combine(path, name); // Look for it in the cache, if it's not there, create it if (!ImagesByNameItemCache.ContainsKey(key)) -- cgit v1.2.3