You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
recyclarr/src/Recyclarr.ServarrApi/CustomFormat/CustomFormatApiService.cs

38 lines
1.1 KiB

using Flurl.Http;
using Recyclarr.TrashGuide.CustomFormat;
namespace Recyclarr.ServarrApi.CustomFormat;
public class CustomFormatApiService(IServarrRequestBuilder service) : ICustomFormatApiService
{
private IFlurlRequest Request(params object[] path)
{
return service.Request(["customformat", ..path]);
}
public async Task<IList<CustomFormatData>> GetCustomFormats(CancellationToken ct)
{
return await Request()
.GetJsonAsync<IList<CustomFormatData>>(cancellationToken: ct);
}
public async Task<CustomFormatData?> CreateCustomFormat(CustomFormatData cf, CancellationToken ct)
{
return await Request()
.PostJsonAsync(cf, cancellationToken: ct)
.ReceiveJson<CustomFormatData>();
}
public async Task UpdateCustomFormat(CustomFormatData cf, CancellationToken ct)
{
await Request(cf.Id)
.PutJsonAsync(cf, cancellationToken: ct);
}
public async Task DeleteCustomFormat(int customFormatId, CancellationToken ct)
{
await Request(customFormatId)
.DeleteAsync(cancellationToken: ct);
}
}