2017-09-04 02:20:56 +00:00
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using Lidarr.Http;
|
|
|
|
|
using Lidarr.Http.Extensions;
|
2020-01-03 12:49:24 +00:00
|
|
|
|
using Nancy;
|
|
|
|
|
using NzbDrone.Core.Qualities;
|
2017-09-04 02:20:56 +00:00
|
|
|
|
|
2017-10-31 01:28:29 +00:00
|
|
|
|
namespace Lidarr.Api.V1.Qualities
|
2017-09-04 02:20:56 +00:00
|
|
|
|
{
|
|
|
|
|
public class QualityDefinitionModule : LidarrRestModule<QualityDefinitionResource>
|
|
|
|
|
{
|
|
|
|
|
private readonly IQualityDefinitionService _qualityDefinitionService;
|
|
|
|
|
|
|
|
|
|
public QualityDefinitionModule(IQualityDefinitionService qualityDefinitionService)
|
|
|
|
|
{
|
|
|
|
|
_qualityDefinitionService = qualityDefinitionService;
|
|
|
|
|
|
|
|
|
|
GetResourceAll = GetAll;
|
|
|
|
|
GetResourceById = GetById;
|
|
|
|
|
UpdateResource = Update;
|
2020-01-03 12:49:24 +00:00
|
|
|
|
Put("/update", d => UpdateMany());
|
2017-09-04 02:20:56 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void Update(QualityDefinitionResource resource)
|
|
|
|
|
{
|
|
|
|
|
var model = resource.ToModel();
|
|
|
|
|
_qualityDefinitionService.Update(model);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private QualityDefinitionResource GetById(int id)
|
|
|
|
|
{
|
|
|
|
|
return _qualityDefinitionService.GetById(id).ToResource();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private List<QualityDefinitionResource> GetAll()
|
|
|
|
|
{
|
|
|
|
|
return _qualityDefinitionService.All().ToResource();
|
|
|
|
|
}
|
|
|
|
|
|
2019-09-12 20:32:51 +00:00
|
|
|
|
private object UpdateMany()
|
2017-09-04 02:20:56 +00:00
|
|
|
|
{
|
|
|
|
|
//Read from request
|
|
|
|
|
var qualityDefinitions = Request.Body.FromJson<List<QualityDefinitionResource>>()
|
|
|
|
|
.ToModel()
|
|
|
|
|
.ToList();
|
|
|
|
|
|
|
|
|
|
_qualityDefinitionService.UpdateMany(qualityDefinitions);
|
|
|
|
|
|
2019-09-12 20:32:51 +00:00
|
|
|
|
return ResponseWithCode(_qualityDefinitionService.All()
|
2020-01-03 12:49:24 +00:00
|
|
|
|
.ToResource(),
|
|
|
|
|
HttpStatusCode.Accepted);
|
2017-09-04 02:20:56 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2020-01-03 12:49:24 +00:00
|
|
|
|
}
|