using System;
using System.Diagnostics.CodeAnalysis;
using System.IO;
using Emby.Naming.Common;
using Emby.Naming.Video;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Resolvers;
using MediaBrowser.Model.Entities;
using Microsoft.Extensions.Logging;
using static Emby.Naming.Video.ExtraRuleResolver;
namespace Emby.Server.Implementations.Library.Resolvers
{
    /// 
    /// Resolves a Path into a Video or Video subclass.
    /// 
    internal class ExtraResolver
    {
        private readonly NamingOptions _namingOptions;
        private readonly IItemResolver[] _trailerResolvers;
        private readonly IItemResolver[] _videoResolvers;
        /// 
        /// Initializes a new instance of the  class.
        /// 
        /// The logger.
        /// An instance of .
        public ExtraResolver(ILogger logger, NamingOptions namingOptions)
        {
            _namingOptions = namingOptions;
            _trailerResolvers = new IItemResolver[] { new GenericVideoResolver(logger, namingOptions) };
            _videoResolvers = new IItemResolver[] { new GenericVideoResolver