using System.Xml; using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Extensions; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Parsers { /// /// Nfo parser for seasons. /// public class SeasonNfoParser : BaseNfoParser { /// /// Initializes a new instance of the class. /// /// Instance of the interface. /// Instance of the interface. /// Instance of the interface. /// Instance of the interface. /// Instance of the interface. /// Instance of the interface. public SeasonNfoParser( ILogger logger, IConfigurationManager config, IProviderManager providerManager, IUserManager userManager, IUserDataManager userDataManager, IDirectoryService directoryService) : base(logger, config, providerManager, userManager, userDataManager, directoryService) { } /// protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult itemResult) { var item = itemResult.Item; switch (reader.Name) { case "seasonnumber": if (reader.TryReadInt(out var seasonNumber)) { item.IndexNumber = seasonNumber; } break; case "seasonname": item.Name = reader.ReadNormalizedString(); break; default: base.FetchDataFromXmlNode(reader, itemResult); break; } } } }