mirror of
https://github.com/Radarr/Radarr
synced 2026-04-14 22:22:38 +02:00
37 lines
No EOL
1.2 KiB
C#
37 lines
No EOL
1.2 KiB
C#
using System.Collections.Generic;
|
|
using NzbDrone.Api.ClientSchema;
|
|
using NzbDrone.Core.Download;
|
|
using Omu.ValueInjecter;
|
|
|
|
namespace NzbDrone.Api.DownloadClient
|
|
{
|
|
public class DownloadClientSchemaModule : NzbDroneRestModule<DownloadClientResource>
|
|
{
|
|
private readonly IDownloadClientFactory _downloadClientFactory;
|
|
|
|
public DownloadClientSchemaModule(IDownloadClientFactory downloadClientFactory)
|
|
: base("downloadclient/schema")
|
|
{
|
|
_downloadClientFactory = downloadClientFactory;
|
|
GetResourceAll = GetSchema;
|
|
}
|
|
|
|
private List<DownloadClientResource> GetSchema()
|
|
{
|
|
var downloadClients = _downloadClientFactory.Templates();
|
|
|
|
var result = new List<DownloadClientResource>(downloadClients.Count);
|
|
|
|
foreach (var downloadClient in downloadClients)
|
|
{
|
|
var downloadClientResource = new DownloadClientResource();
|
|
downloadClientResource.InjectFrom(downloadClient);
|
|
downloadClientResource.Fields = SchemaBuilder.ToSchema(downloadClient.Settings);
|
|
|
|
result.Add(downloadClientResource);
|
|
}
|
|
|
|
return result;
|
|
}
|
|
}
|
|
} |