diff options
| author | Stephen <snazy2000@btinternet.com> | 2014-06-30 06:20:24 +0100 |
|---|---|---|
| committer | Stephen <snazy2000@btinternet.com> | 2014-06-30 06:20:24 +0100 |
| commit | 2a9e4778124de3103bd4a50f806a3694b57d3c6a (patch) | |
| tree | 0275788f3b9706b26441edf48a0b4975cc02ee5d /MediaBrowser.Providers/Chapters/ChapterManager.cs | |
| parent | 608ebf4829e7e394170bb2dec8a33c83600e9c08 (diff) | |
| parent | 62d98551edf421ba50f2eadf95d6c3d1fb1d20ae (diff) | |
Merge pull request #1 from MediaBrowser/master
update
Diffstat (limited to 'MediaBrowser.Providers/Chapters/ChapterManager.cs')
| -rw-r--r-- | MediaBrowser.Providers/Chapters/ChapterManager.cs | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/MediaBrowser.Providers/Chapters/ChapterManager.cs b/MediaBrowser.Providers/Chapters/ChapterManager.cs index 5f8664bec..6e2cd77eb 100644 --- a/MediaBrowser.Providers/Chapters/ChapterManager.cs +++ b/MediaBrowser.Providers/Chapters/ChapterManager.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Chapters; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; @@ -8,6 +9,7 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Chapters; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Logging; using System; @@ -192,8 +194,10 @@ namespace MediaBrowser.Providers.Chapters if (!includeDisabledProviders) { + var options = GetConfiguration(); + providers = providers - .Where(i => !_config.Configuration.ChapterOptions.DisabledFetchers.Contains(i.Name)) + .Where(i => !options.DisabledFetchers.Contains(i.Name)) .ToArray(); } @@ -224,8 +228,10 @@ namespace MediaBrowser.Providers.Chapters private int GetConfiguredOrder(IChapterProvider provider) { + var options = GetConfiguration(); + // See if there's a user-defined order - var index = Array.IndexOf(_config.Configuration.ChapterOptions.FetcherOrder, provider.Name); + var index = Array.IndexOf(options.FetcherOrder, provider.Name); if (index != -1) { @@ -257,5 +263,25 @@ namespace MediaBrowser.Providers.Chapters { return _itemRepo.SaveChapters(new Guid(itemId), chapters, cancellationToken); } + + public ChapterOptions GetConfiguration() + { + return _config.GetConfiguration<ChapterOptions>("chapters"); + } + } + + public class ChapterConfigurationStore : IConfigurationFactory + { + public IEnumerable<ConfigurationStore> GetConfigurations() + { + return new List<ConfigurationStore> + { + new ConfigurationStore + { + Key = "chapters", + ConfigurationType = typeof (ChapterOptions) + } + }; + } } } |
