New: Bypass archived history for failed downloads in SABnzbd

(cherry picked from commit c99d81e79ba5e6ecec01ddd942440d8a48a1c23b)
pull/4596/head
Mark McDowall 2 months ago committed by Bogdan
parent ce2bb5be1f
commit 98a90e2f8f

@ -203,11 +203,11 @@ namespace NzbDrone.Core.Download.Clients.Sabnzbd
DeleteItemData(item); DeleteItemData(item);
} }
_proxy.RemoveFrom("history", item.DownloadId, deleteData, Settings); _proxy.RemoveFromHistory(item.DownloadId, deleteData, item.Status == DownloadItemStatus.Failed, Settings);
} }
else else
{ {
_proxy.RemoveFrom("queue", item.DownloadId, deleteData, Settings); _proxy.RemoveFromQueue(item.DownloadId, deleteData, Settings);
} }
} }

@ -14,7 +14,8 @@ namespace NzbDrone.Core.Download.Clients.Sabnzbd
{ {
string GetBaseUrl(SabnzbdSettings settings, string relativePath = null); string GetBaseUrl(SabnzbdSettings settings, string relativePath = null);
SabnzbdAddResponse DownloadNzb(byte[] nzbData, string filename, string category, int priority, SabnzbdSettings settings); SabnzbdAddResponse DownloadNzb(byte[] nzbData, string filename, string category, int priority, SabnzbdSettings settings);
void RemoveFrom(string source, string id, bool deleteData, SabnzbdSettings settings); void RemoveFromQueue(string id, bool deleteData, SabnzbdSettings settings);
void RemoveFromHistory(string id, bool deleteData, bool deletePermanently, SabnzbdSettings settings);
string GetVersion(SabnzbdSettings settings); string GetVersion(SabnzbdSettings settings);
SabnzbdConfig GetConfig(SabnzbdSettings settings); SabnzbdConfig GetConfig(SabnzbdSettings settings);
SabnzbdFullStatus GetFullStatus(SabnzbdSettings settings); SabnzbdFullStatus GetFullStatus(SabnzbdSettings settings);
@ -60,12 +61,23 @@ namespace NzbDrone.Core.Download.Clients.Sabnzbd
return response; return response;
} }
public void RemoveFrom(string source, string id, bool deleteData, SabnzbdSettings settings) public void RemoveFromQueue(string id, bool deleteData, SabnzbdSettings settings)
{ {
var request = BuildRequest(source, settings); var request = BuildRequest("queue", settings);
request.AddQueryParam("name", "delete");
request.AddQueryParam("del_files", deleteData ? 1 : 0);
request.AddQueryParam("value", id);
ProcessRequest(request, settings);
}
public void RemoveFromHistory(string id, bool deleteData, bool deletePermanently, SabnzbdSettings settings)
{
var request = BuildRequest("history", settings);
request.AddQueryParam("name", "delete"); request.AddQueryParam("name", "delete");
request.AddQueryParam("del_files", deleteData ? 1 : 0); request.AddQueryParam("del_files", deleteData ? 1 : 0);
request.AddQueryParam("value", id); request.AddQueryParam("value", id);
request.AddQueryParam("archive", deletePermanently ? 0 : 1);
ProcessRequest(request, settings); ProcessRequest(request, settings);
} }

Loading…
Cancel
Save