Răsfoiți Sursa

Use depencency injection for ISubtitleProvider

Patrick Barron 2 ani în urmă
părinte
comite
4f81f4daaa

+ 0 - 2
Emby.Server.Implementations/ApplicationHost.cs

@@ -728,8 +728,6 @@ namespace Emby.Server.Implementations
 
             Resolve<ILiveTvManager>().AddParts(GetExports<ILiveTvService>(), GetExports<ITunerHost>(), GetExports<IListingsProvider>());
 
-            Resolve<ISubtitleManager>().AddParts(GetExports<ISubtitleProvider>());
-
             Resolve<IChannelManager>().AddParts(GetExports<IChannel>());
 
             Resolve<IMediaSourceManager>().AddParts(GetExports<IMediaSourceProvider>());

+ 0 - 6
MediaBrowser.Controller/Subtitles/ISubtitleManager.cs

@@ -19,12 +19,6 @@ namespace MediaBrowser.Controller.Subtitles
         /// </summary>
         event EventHandler<SubtitleDownloadFailureEventArgs> SubtitleDownloadFailure;
 
-        /// <summary>
-        /// Adds the parts.
-        /// </summary>
-        /// <param name="subtitleProviders">The subtitle providers.</param>
-        void AddParts(IEnumerable<ISubtitleProvider> subtitleProviders);
-
         /// <summary>
         /// Searches the subtitles.
         /// </summary>

+ 6 - 10
MediaBrowser.Providers/Subtitles/SubtitleManager.cs

@@ -35,33 +35,29 @@ namespace MediaBrowser.Providers.Subtitles
         private readonly IMediaSourceManager _mediaSourceManager;
         private readonly ILocalizationManager _localization;
 
-        private ISubtitleProvider[] _subtitleProviders;
+        private readonly ISubtitleProvider[] _subtitleProviders;
 
         public SubtitleManager(
             ILogger<SubtitleManager> logger,
             IFileSystem fileSystem,
             ILibraryMonitor monitor,
             IMediaSourceManager mediaSourceManager,
-            ILocalizationManager localizationManager)
+            ILocalizationManager localizationManager,
+            IEnumerable<ISubtitleProvider> subtitleProviders)
         {
             _logger = logger;
             _fileSystem = fileSystem;
             _monitor = monitor;
             _mediaSourceManager = mediaSourceManager;
             _localization = localizationManager;
-        }
-
-        /// <inheritdoc />
-        public event EventHandler<SubtitleDownloadFailureEventArgs> SubtitleDownloadFailure;
-
-        /// <inheritdoc />
-        public void AddParts(IEnumerable<ISubtitleProvider> subtitleProviders)
-        {
             _subtitleProviders = subtitleProviders
                 .OrderBy(i => i is IHasOrder hasOrder ? hasOrder.Order : 0)
                 .ToArray();
         }
 
+        /// <inheritdoc />
+        public event EventHandler<SubtitleDownloadFailureEventArgs> SubtitleDownloadFailure;
+
         /// <inheritdoc />
         public async Task<RemoteSubtitleInfo[]> SearchSubtitles(SubtitleSearchRequest request, CancellationToken cancellationToken)
         {