Ver Fonte

Merge pull request #4651 from crobibero/iso_manager

Remove IIsoMounter and IsoMounter
Joshua M. Boniface há 4 anos atrás
pai
commit
670f7cacc3

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

@@ -533,8 +533,6 @@ namespace Emby.Server.Implementations
 
             ServiceCollection.AddSingleton(NetManager);
 
-            ServiceCollection.AddSingleton<IIsoManager, IsoManager>();
-
             ServiceCollection.AddSingleton<ITaskManager, TaskManager>();
 
             ServiceCollection.AddSingleton(_xmlSerializer);
@@ -824,8 +822,6 @@ namespace Emby.Server.Implementations
             Resolve<IMediaSourceManager>().AddParts(GetExports<IMediaSourceProvider>());
 
             Resolve<INotificationManager>().AddParts(GetExports<INotificationService>(), GetExports<INotificationTypeFactory>());
-
-            Resolve<IIsoManager>().AddParts(GetExports<IIsoMounter>());
         }
 
         /// <summary>

+ 0 - 67
Emby.Server.Implementations/IO/IsoManager.cs

@@ -1,67 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Globalization;
-using System.Linq;
-using System.Threading;
-using System.Threading.Tasks;
-using MediaBrowser.Model.IO;
-
-namespace Emby.Server.Implementations.IO
-{
-    /// <summary>
-    /// Class IsoManager.
-    /// </summary>
-    public class IsoManager : IIsoManager
-    {
-        /// <summary>
-        /// The _mounters.
-        /// </summary>
-        private readonly List<IIsoMounter> _mounters = new List<IIsoMounter>();
-
-        /// <summary>
-        /// Mounts the specified iso path.
-        /// </summary>
-        /// <param name="isoPath">The iso path.</param>
-        /// <param name="cancellationToken">The cancellation token.</param>
-        /// <returns><see creaf="IsoMount" />.</returns>
-        public Task<IIsoMount> Mount(string isoPath, CancellationToken cancellationToken)
-        {
-            if (string.IsNullOrEmpty(isoPath))
-            {
-                throw new ArgumentNullException(nameof(isoPath));
-            }
-
-            var mounter = _mounters.FirstOrDefault(i => i.CanMount(isoPath));
-
-            if (mounter == null)
-            {
-                throw new ArgumentException(
-                    string.Format(
-                        CultureInfo.InvariantCulture,
-                        "No mounters are able to mount {0}",
-                        isoPath));
-            }
-
-            return mounter.Mount(isoPath, cancellationToken);
-        }
-
-        /// <summary>
-        /// Determines whether this instance can mount the specified path.
-        /// </summary>
-        /// <param name="path">The path.</param>
-        /// <returns><c>true</c> if this instance can mount the specified path; otherwise, <c>false</c>.</returns>
-        public bool CanMount(string path)
-        {
-            return _mounters.Any(i => i.CanMount(path));
-        }
-
-        /// <summary>
-        /// Adds the parts.
-        /// </summary>
-        /// <param name="mounters">The mounters.</param>
-        public void AddParts(IEnumerable<IIsoMounter> mounters)
-        {
-            _mounters.AddRange(mounters);
-        }
-    }
-}

+ 0 - 5
Jellyfin.Api/Helpers/TranscodingJobHelper.cs

@@ -12,7 +12,6 @@ using Jellyfin.Api.Models.PlaybackDtos;
 using Jellyfin.Api.Models.StreamingDtos;
 using Jellyfin.Data.Enums;
 using MediaBrowser.Common.Configuration;
-using MediaBrowser.Common.Extensions;
 using MediaBrowser.Controller.Configuration;
 using MediaBrowser.Controller.Library;
 using MediaBrowser.Controller.MediaEncoding;
@@ -46,7 +45,6 @@ namespace Jellyfin.Api.Helpers
         private readonly IAuthorizationContext _authorizationContext;
         private readonly EncodingHelper _encodingHelper;
         private readonly IFileSystem _fileSystem;
-        private readonly IIsoManager _isoManager;
         private readonly ILogger<TranscodingJobHelper> _logger;
         private readonly IMediaEncoder _mediaEncoder;
         private readonly IMediaSourceManager _mediaSourceManager;
@@ -64,7 +62,6 @@ namespace Jellyfin.Api.Helpers
         /// <param name="serverConfigurationManager">Instance of the <see cref="IServerConfigurationManager"/> interface.</param>
         /// <param name="sessionManager">Instance of the <see cref="ISessionManager"/> interface.</param>
         /// <param name="authorizationContext">Instance of the <see cref="IAuthorizationContext"/> interface.</param>
-        /// <param name="isoManager">Instance of the <see cref="IIsoManager"/> interface.</param>
         /// <param name="subtitleEncoder">Instance of the <see cref="ISubtitleEncoder"/> interface.</param>
         /// <param name="configuration">Instance of the <see cref="IConfiguration"/> interface.</param>
         /// <param name="loggerFactory">Instance of the <see cref="ILoggerFactory"/> interface.</param>
@@ -76,7 +73,6 @@ namespace Jellyfin.Api.Helpers
             IServerConfigurationManager serverConfigurationManager,
             ISessionManager sessionManager,
             IAuthorizationContext authorizationContext,
-            IIsoManager isoManager,
             ISubtitleEncoder subtitleEncoder,
             IConfiguration configuration,
             ILoggerFactory loggerFactory)
@@ -88,7 +84,6 @@ namespace Jellyfin.Api.Helpers
             _serverConfigurationManager = serverConfigurationManager;
             _sessionManager = sessionManager;
             _authorizationContext = authorizationContext;
-            _isoManager = isoManager;
             _loggerFactory = loggerFactory;
             _encodingHelper = new EncodingHelper(mediaEncoder, fileSystem, subtitleEncoder, configuration);
 

+ 1 - 1
MediaBrowser.Controller/MediaEncoding/IMediaEncoder.cs

@@ -117,6 +117,6 @@ namespace MediaBrowser.Controller.MediaEncoding
 
         void UpdateEncoderPath(string path, string pathType);
 
-        IEnumerable<string> GetPrimaryPlaylistVobFiles(string path, IIsoMount isoMount, uint? titleNumber);
+        IEnumerable<string> GetPrimaryPlaylistVobFiles(string path, uint? titleNumber);
     }
 }

+ 2 - 4
MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs

@@ -949,16 +949,14 @@ namespace MediaBrowser.MediaEncoding.Encoder
         }
 
         /// <inheritdoc />
-        public IEnumerable<string> GetPrimaryPlaylistVobFiles(string path, IIsoMount isoMount, uint? titleNumber)
+        public IEnumerable<string> GetPrimaryPlaylistVobFiles(string path, uint? titleNumber)
         {
             // min size 300 mb
             const long MinPlayableSize = 314572800;
 
-            var root = isoMount != null ? isoMount.MountedPath : path;
-
             // Try to eliminate menus and intros by skipping all files at the front of the list that are less than the minimum size
             // Once we reach a file that is at least the minimum, return all subsequent ones
-            var allVobs = _fileSystem.GetFiles(root, true)
+            var allVobs = _fileSystem.GetFiles(path, true)
                 .Where(file => string.Equals(file.Extension, ".vob", StringComparison.OrdinalIgnoreCase))
                 .OrderBy(i => i.FullName)
                 .ToList();

+ 0 - 35
MediaBrowser.Model/IO/IIsoManager.cs

@@ -1,35 +0,0 @@
-#pragma warning disable CS1591
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Threading;
-using System.Threading.Tasks;
-
-namespace MediaBrowser.Model.IO
-{
-    public interface IIsoManager
-    {
-        /// <summary>
-        /// Mounts the specified iso path.
-        /// </summary>
-        /// <param name="isoPath">The iso path.</param>
-        /// <param name="cancellationToken">The cancellation token.</param>
-        /// <returns>IsoMount.</returns>
-        /// <exception cref="IOException">Unable to create mount.</exception>
-        Task<IIsoMount> Mount(string isoPath, CancellationToken cancellationToken);
-
-        /// <summary>
-        /// Determines whether this instance can mount the specified path.
-        /// </summary>
-        /// <param name="path">The path.</param>
-        /// <returns><c>true</c> if this instance can mount the specified path; otherwise, <c>false</c>.</returns>
-        bool CanMount(string path);
-
-        /// <summary>
-        /// Adds the parts.
-        /// </summary>
-        /// <param name="mounters">The mounters.</param>
-        void AddParts(IEnumerable<IIsoMounter> mounters);
-    }
-}

+ 0 - 22
MediaBrowser.Model/IO/IIsoMount.cs

@@ -1,22 +0,0 @@
-using System;
-
-namespace MediaBrowser.Model.IO
-{
-    /// <summary>
-    /// Interface IIsoMount.
-    /// </summary>
-    public interface IIsoMount : IDisposable
-    {
-        /// <summary>
-        /// Gets the iso path.
-        /// </summary>
-        /// <value>The iso path.</value>
-        string IsoPath { get; }
-
-        /// <summary>
-        /// Gets the mounted path.
-        /// </summary>
-        /// <value>The mounted path.</value>
-        string MountedPath { get; }
-    }
-}

+ 0 - 35
MediaBrowser.Model/IO/IIsoMounter.cs

@@ -1,35 +0,0 @@
-#pragma warning disable CS1591
-
-using System;
-using System.IO;
-using System.Threading;
-using System.Threading.Tasks;
-
-namespace MediaBrowser.Model.IO
-{
-    public interface IIsoMounter
-    {
-        /// <summary>
-        /// Gets the name.
-        /// </summary>
-        /// <value>The name.</value>
-        string Name { get; }
-
-        /// <summary>
-        /// Mounts the specified iso path.
-        /// </summary>
-        /// <param name="isoPath">The iso path.</param>
-        /// <param name="cancellationToken">The cancellation token.</param>
-        /// <returns>IsoMount.</returns>
-        /// <exception cref="ArgumentNullException">isoPath</exception>
-        /// <exception cref="IOException">Unable to create mount.</exception>
-        Task<IIsoMount> Mount(string isoPath, CancellationToken cancellationToken);
-
-        /// <summary>
-        /// Determines whether this instance can mount the specified path.
-        /// </summary>
-        /// <param name="path">The path.</param>
-        /// <returns><c>true</c> if this instance can mount the specified path; otherwise, <c>false</c>.</returns>
-        bool CanMount(string path);
-    }
-}

+ 1 - 1
MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs

@@ -619,7 +619,7 @@ namespace MediaBrowser.Providers.MediaInfo
                 item.RunTimeTicks = GetRuntime(primaryTitle);
             }
 
-            return _mediaEncoder.GetPrimaryPlaylistVobFiles(item.Path, null, titleNumber)
+            return _mediaEncoder.GetPrimaryPlaylistVobFiles(item.Path, titleNumber)
                 .Select(Path.GetFileName)
                 .ToArray();
         }