1
0
mirror of https://github.com/Radarr/Radarr.git synced 2026-04-24 22:35:49 -04:00

New: Use ASP.NET Core instead of Nancy

This commit is contained in:
ta264
2021-10-21 21:04:19 +01:00
committed by Qstick
parent c14ef7bee7
commit 2d53ec24f8
160 changed files with 2866 additions and 3657 deletions
@@ -1,41 +1,33 @@
using System.Collections.Generic;
using System.Linq;
using Microsoft.AspNetCore.Mvc;
using NzbDrone.Core.Languages;
using NzbDrone.Core.MediaFiles.MovieImport.Manual;
using NzbDrone.Core.Qualities;
using Radarr.Api.V3.Movies;
using Radarr.Http;
using Radarr.Http.Extensions;
namespace Radarr.Api.V3.ManualImport
{
public class ManualImportModule : RadarrRestModule<ManualImportResource>
[V3ApiController]
public class ManualImportController : Controller
{
private readonly IManualImportService _manualImportService;
public ManualImportModule(IManualImportService manualImportService)
: base("/manualimport")
public ManualImportController(IManualImportService manualImportService)
{
_manualImportService = manualImportService;
GetResourceAll = GetMediaFiles;
Post("/", x => ReprocessItems());
}
private List<ManualImportResource> GetMediaFiles()
[HttpGet]
public List<ManualImportResource> GetMediaFiles(string folder, string downloadId, int? movieId, bool filterExistingFiles = true)
{
var folder = (string)Request.Query.folder;
var downloadId = (string)Request.Query.downloadId;
var filterExistingFiles = Request.GetBooleanQueryParameter("filterExistingFiles", true);
var movieId = Request.GetNullableIntegerQueryParameter("movieId", null);
return _manualImportService.GetMediaFiles(folder, downloadId, movieId, filterExistingFiles).ToResource().Select(AddQualityWeight).ToList();
}
private object ReprocessItems()
[HttpPost]
public object ReprocessItems([FromBody] List<ManualImportReprocessResource> items)
{
var items = Request.Body.FromJson<List<ManualImportReprocessResource>>();
foreach (var item in items)
{
var processedItem = _manualImportService.ReprocessItem(item.Path, item.DownloadId, item.MovieId, item.Quality, item.Languages);