using System.Collections.Generic; using Microsoft.AspNetCore.Mvc; using NzbDrone.Core.Extras.Files; using NzbDrone.Core.Extras.Metadata.Files; using NzbDrone.Core.Extras.Others; using NzbDrone.Core.Extras.Subtitles; using Radarr.Http; namespace Radarr.Api.V4.ExtraFiles { [V4ApiController("extrafile")] public class ExtraFileController : Controller { private readonly IExtraFileService _subtitleFileService; private readonly IExtraFileService _metadataFileService; private readonly IExtraFileService _otherFileService; public ExtraFileController(IExtraFileService subtitleFileService, IExtraFileService metadataFileService, IExtraFileService otherExtraFileService) { _subtitleFileService = subtitleFileService; _metadataFileService = metadataFileService; _otherFileService = otherExtraFileService; } [HttpGet] public List GetFiles(int movieId) { var extraFiles = new List(); List subtitleFiles = _subtitleFileService.GetFilesByMovie(movieId); List metadataFiles = _metadataFileService.GetFilesByMovie(movieId); List otherExtraFiles = _otherFileService.GetFilesByMovie(movieId); extraFiles.AddRange(subtitleFiles.ToResource()); extraFiles.AddRange(metadataFiles.ToResource()); extraFiles.AddRange(otherExtraFiles.ToResource()); return extraFiles; } } }