private Response Remove(int id) { var pendingRelease = _pendingReleaseService.FindPendingQueueItem(id); if (pendingRelease != null) { _pendingReleaseService.RemovePendingQueueItem(id); return(new object().AsResponse()); } var trackedDownload = GetTrackedDownload(id); if (trackedDownload == null) { throw new NotFoundException(); } var downloadClient = _downloadClientProvider.Get(trackedDownload.DownloadClient); if (downloadClient == null) { throw new BadRequestException(); } downloadClient.RemoveItem(trackedDownload.DownloadItem.DownloadId, true); return(new object().AsResponse()); }
private Response Remove(int id) { var blacklist = false; var blacklistQuery = Request.Query.blacklist; if (blacklistQuery.HasValue) { blacklist = Convert.ToBoolean(blacklistQuery.Value); } var pendingRelease = _pendingReleaseService.FindPendingQueueItem(id); if (pendingRelease != null) { _pendingReleaseService.RemovePendingQueueItem(id); return(new object().AsResponse()); } var trackedDownload = GetTrackedDownload(id); if (trackedDownload == null) { throw new NotFoundException(); } var downloadClient = _downloadClientProvider.Get(trackedDownload.DownloadClient); if (downloadClient == null) { throw new BadRequestException(); } downloadClient.RemoveItem(trackedDownload.DownloadItem.DownloadId, true); if (blacklist) { _failedDownloadService.MarkAsFailed(trackedDownload.DownloadItem.DownloadId); } return(new object().AsResponse()); }