| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | using System.IO;using System.Threading.Tasks;using System.Xml;using MediaBrowser.Controller.Configuration;using MediaBrowser.Controller.Entities;using MediaBrowser.Controller.Entities.Movies;using MediaBrowser.Controller.Library;using MediaBrowser.Model.IO;using Microsoft.Extensions.Logging;namespace MediaBrowser.LocalMetadata.Savers{    /// <summary>    /// Box set xml saver.    /// </summary>    public class BoxSetXmlSaver : BaseXmlSaver    {        /// <summary>        /// Initializes a new instance of the <see cref="BoxSetXmlSaver"/> class.        /// </summary>        /// <param name="fileSystem">Instance of the <see cref="IFileSystem"/> interface.</param>        /// <param name="configurationManager">Instance of the <see cref="IServerConfigurationManager"/> interface.</param>        /// <param name="libraryManager">Instance of the <see cref="ILibraryManager"/> interface.</param>        /// <param name="logger">Instance of the <see cref="ILogger{BoxSetXmlSaver}"/> interface.</param>        public BoxSetXmlSaver(IFileSystem fileSystem, IServerConfigurationManager configurationManager, ILibraryManager libraryManager, ILogger<BoxSetXmlSaver> logger)            : base(fileSystem, configurationManager, libraryManager, logger)        {        }        /// <inheritdoc />        public override bool IsEnabledFor(BaseItem item, ItemUpdateType updateType)        {            if (!item.SupportsLocalMetadata)            {                return false;            }            return item is BoxSet && updateType >= ItemUpdateType.MetadataDownload;        }        /// <inheritdoc />        protected override Task WriteCustomElementsAsync(BaseItem item, XmlWriter writer)            => Task.CompletedTask;        /// <inheritdoc />        protected override string GetLocalSavePath(BaseItem item)        {            return Path.Combine(item.Path, "collection.xml");        }    }}
 |