using Recyclarr.TrashLib.Repo; using Recyclarr.TrashLib.Services.CustomFormat.Guide; using Recyclarr.TrashLib.Services.CustomFormat.Models; using Recyclarr.TrashLib.Services.QualitySize; using Recyclarr.TrashLib.Services.QualitySize.Guide; namespace Recyclarr.TrashLib.Services.Radarr; public class LocalRepoRadarrGuideService : RadarrGuideService { private readonly IRepoPathsFactory _pathsFactory; private readonly ICustomFormatLoader _cfLoader; private readonly QualitySizeGuideParser _parser; public LocalRepoRadarrGuideService(IRepoPathsFactory pathsFactory, ILogger log, ICustomFormatLoader cfLoader) { _pathsFactory = pathsFactory; _cfLoader = cfLoader; _parser = new QualitySizeGuideParser(log); } public override ICollection GetQualities() { return _parser.GetQualities(_pathsFactory.Create().RadarrQualityPaths); } public override ICollection GetCustomFormatData() { var paths = _pathsFactory.Create(); return _cfLoader.LoadAllCustomFormatsAtPaths( paths.RadarrCustomFormatPaths, paths.RadarrCollectionOfCustomFormats); } }