浏览代码

Register ISubtitleManager correctly

Mark Monteiro 5 年之前
父节点
当前提交
dd5a55aeba
共有 2 个文件被更改,包括 6 次插入12 次删除
  1. 2 8
      Emby.Server.Implementations/ApplicationHost.cs
  2. 4 4
      MediaBrowser.Providers/Subtitles/SubtitleManager.cs

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

@@ -121,7 +121,6 @@ namespace Emby.Server.Implementations
         private SqliteUserRepository _userRepository;
         private SqliteUserRepository _userRepository;
         private SqliteDisplayPreferencesRepository _displayPreferencesRepository;
         private SqliteDisplayPreferencesRepository _displayPreferencesRepository;
         private ISessionManager _sessionManager;
         private ISessionManager _sessionManager;
-        private INotificationManager _notificationManager;
         private IHttpServer _httpServer;
         private IHttpServer _httpServer;
 
 
         /// <summary>
         /// <summary>
@@ -283,10 +282,6 @@ namespace Emby.Server.Implementations
 
 
         internal SqliteItemRepository ItemRepository { get; set; }
         internal SqliteItemRepository ItemRepository { get; set; }
 
 
-        
-
-        private ISubtitleManager SubtitleManager { get; set; }
-
         private IDeviceManager DeviceManager { get; set; }
         private IDeviceManager DeviceManager { get; set; }
 
 
         private IAuthenticationRepository AuthenticationRepository { get; set; }
         private IAuthenticationRepository AuthenticationRepository { get; set; }
@@ -748,8 +743,7 @@ namespace Emby.Server.Implementations
             MediaSourceManager = new MediaSourceManager(ItemRepository, ApplicationPaths, LocalizationManager, UserManager, LibraryManager, LoggerFactory, JsonSerializer, FileSystemManager, UserDataManager, () => MediaEncoder);
             MediaSourceManager = new MediaSourceManager(ItemRepository, ApplicationPaths, LocalizationManager, UserManager, LibraryManager, LoggerFactory, JsonSerializer, FileSystemManager, UserDataManager, () => MediaEncoder);
             serviceCollection.AddSingleton(MediaSourceManager);
             serviceCollection.AddSingleton(MediaSourceManager);
 
 
-            SubtitleManager = new SubtitleManager(LoggerFactory, FileSystemManager, LibraryMonitor, MediaSourceManager, LocalizationManager);
-            serviceCollection.AddSingleton(SubtitleManager);
+            serviceCollection.AddSingleton<ISubtitleManager, SubtitleManager>();
 
 
             serviceCollection.AddSingleton<IProviderManager, ProviderManager>();
             serviceCollection.AddSingleton<IProviderManager, ProviderManager>();
 
 
@@ -1012,7 +1006,7 @@ namespace Emby.Server.Implementations
 
 
             Resolve<ILiveTvManager>().AddParts(GetExports<ILiveTvService>(), GetExports<ITunerHost>(), GetExports<IListingsProvider>());
             Resolve<ILiveTvManager>().AddParts(GetExports<ILiveTvService>(), GetExports<ITunerHost>(), GetExports<IListingsProvider>());
 
 
-            SubtitleManager.AddParts(GetExports<ISubtitleProvider>());
+            Resolve<ISubtitleManager>().AddParts(GetExports<ISubtitleProvider>());
 
 
             Resolve<IChannelManager>().AddParts(GetExports<IChannel>());
             Resolve<IChannelManager>().AddParts(GetExports<IChannel>());
 
 

+ 4 - 4
MediaBrowser.Providers/Subtitles/SubtitleManager.cs

@@ -25,22 +25,22 @@ namespace MediaBrowser.Providers.Subtitles
 {
 {
     public class SubtitleManager : ISubtitleManager
     public class SubtitleManager : ISubtitleManager
     {
     {
-        private ISubtitleProvider[] _subtitleProviders;
         private readonly ILogger _logger;
         private readonly ILogger _logger;
         private readonly IFileSystem _fileSystem;
         private readonly IFileSystem _fileSystem;
         private readonly ILibraryMonitor _monitor;
         private readonly ILibraryMonitor _monitor;
         private readonly IMediaSourceManager _mediaSourceManager;
         private readonly IMediaSourceManager _mediaSourceManager;
+        private readonly ILocalizationManager _localization;
 
 
-        private ILocalizationManager _localization;
+        private ISubtitleProvider[] _subtitleProviders;
 
 
         public SubtitleManager(
         public SubtitleManager(
-            ILoggerFactory loggerFactory,
+            ILogger<SubtitleManager> logger,
             IFileSystem fileSystem,
             IFileSystem fileSystem,
             ILibraryMonitor monitor,
             ILibraryMonitor monitor,
             IMediaSourceManager mediaSourceManager,
             IMediaSourceManager mediaSourceManager,
             ILocalizationManager localizationManager)
             ILocalizationManager localizationManager)
         {
         {
-            _logger = loggerFactory.CreateLogger(nameof(SubtitleManager));
+            _logger = logger;
             _fileSystem = fileSystem;
             _fileSystem = fileSystem;
             _monitor = monitor;
             _monitor = monitor;
             _mediaSourceManager = mediaSourceManager;
             _mediaSourceManager = mediaSourceManager;