public async void DownloadRejected(DownloadRejected rejected) { Console.WriteLine("[Downloadanager] DownloadRejected"); Console.WriteLine("[Downloadanager] DownloadRejected Id : {0}", rejected.Id); Console.WriteLine("[Downloadanager] DownloadRejected Reason : {0}", rejected.Reason); Download download; bool found = _repo.TryById(rejected.Id, out download); if (!found) { var error = new DownloadError { Id = rejected.Id, Error = ErrorEnum.DownloadRejected_IdentifierNotFound }; await _bus.SendAsync <DownloadError> (error); return; } bool paused = download.TryPause(); if (!paused) { await _bus.SendAsync <DownloadError> (new DownloadError { Id = download.Id, State = download.State, Error = ErrorEnum.DownloadRejected_InvalidState }); return; } _repo.Update(download); }
private void DownloadError_Received(DownloadError error) { Console.WriteLine("[Downloader] DownloadError"); Console.WriteLine("[Downloader] DownloadError Error : {0}", error.Error); Console.WriteLine("[Downloader] DownloadError Description : {0}", error.Description); Console.WriteLine("[Downloader] DownloadError (State : {0})", error.State); }
public void DownloadError(DownloadError error) { Console.WriteLine("[Downloadanager] DownloadError"); Console.WriteLine("[Downloadanager] DownloadError Id : {0}", error.Id); Console.WriteLine("[Downloadanager] DownloadError Error : {0}", error.Error); Console.WriteLine("[Downloadanager] DownloadError Description : {0}", error.Description); Console.WriteLine("[Downloadanager] DownloadError State : {0}", error.State); }
public async void FinishedDownload(FinishedDownload finished) { Console.WriteLine("[Downloadanager] FinishedDownload"); Console.WriteLine("[Downloadanager] FinishedDownload Id : {0}", finished.Id); Console.WriteLine("[Downloadanager] FinishedDownload Location : {0}", finished.Location); Download download; bool found = _repo.TryById(finished.Id, out download); if (!found) { var error = new DownloadError { Id = finished.Id, Error = ErrorEnum.FinishedDownload_IdentifierNotFound }; await _bus.SendAsync <DownloadError> (error); return; } bool progressed = download.TryFinish(finished.Location); if (!progressed) { await _bus.SendAsync <DownloadError> (new DownloadError { Id = download.Id, State = download.State, Error = ErrorEnum.FinishedDownload_InvalidState }); return; } _repo.Update(download); await _bus.SendAsync <NotifyProgress> (new NotifyProgress { Url = download.Url, Download = download }); await _bus.SendAsync <NotifyFinish> (new NotifyFinish { Url = download.Url, Download = download, FileLock = finished.FileLock }); }
public async void TaskError(TaskError error) { Console.WriteLine("[Downloadanager] TaskError"); Console.WriteLine("[Downloadanager] TaskError Id : {0}", error.Id); Console.WriteLine("[Downloadanager] TaskError Error : {0}", error.Error); Console.WriteLine("[Downloadanager] TaskError Description : {0}", error.Description); Console.WriteLine("[Downloadanager] TaskError StatusCode : {0}", error.StatusCode); Download download; bool found = _repo.TryById(error.Id, out download); if (!found) { var invalididentifier = new DownloadError { Id = error.Id, Error = ErrorEnum.TaskError_IdentifierNotFound }; await _bus.SendAsync <DownloadError> (invalididentifier); return; } bool failed = download.TryFail(error.StatusCode, error.Error, error.Description); if (!failed) { await _bus.SendAsync <DownloadError> (new DownloadError { Id = download.Id, State = download.State, Error = ErrorEnum.TaskError_InvalidState }); return; } _repo.Update(download); await _bus.SendAsync <NotifyProgress> (new NotifyProgress { Url = download.Url, Download = download }); }
public async void TaskError(TaskError error) { Console.WriteLine("[Downloadanager] TaskError"); Console.WriteLine("[Downloadanager] TaskError Id : {0}", error.Id); Console.WriteLine("[Downloadanager] TaskError Error : {0}", error.Error); Console.WriteLine("[Downloadanager] TaskError Description : {0}", error.Description); Console.WriteLine("[Downloadanager] TaskError StatusCode : {0}", error.StatusCode); Download download; bool found = _repo.TryById(error.Id, out download); if (!found) { var invalididentifier = new DownloadError { Id = error.Id, Error = ErrorEnum.TaskError_IdentifierNotFound }; await _bus.SendAsync<DownloadError> (invalididentifier); return; } bool failed = download.TryFail (error.StatusCode, error.Error, error.Description); if (!failed) { await _bus.SendAsync<DownloadError> (new DownloadError { Id = download.Id, State = download.State, Error = ErrorEnum.TaskError_InvalidState }); return; } _repo.Update (download); await _bus.SendAsync<NotifyProgress> (new NotifyProgress { Url = download.Url, Download = download }); }
public async void DownloadRejected(DownloadRejected rejected) { Console.WriteLine("[Downloadanager] DownloadRejected"); Console.WriteLine("[Downloadanager] DownloadRejected Id : {0}", rejected.Id); Console.WriteLine("[Downloadanager] DownloadRejected Reason : {0}", rejected.Reason); Download download; bool found = _repo.TryById(rejected.Id, out download); if (!found) { var error = new DownloadError { Id = rejected.Id, Error = ErrorEnum.DownloadRejected_IdentifierNotFound }; await _bus.SendAsync<DownloadError> (error); return; } bool paused = download.TryPause (); if (!paused) { await _bus.SendAsync<DownloadError> (new DownloadError { Id = download.Id, State = download.State, Error = ErrorEnum.DownloadRejected_InvalidState }); return; } _repo.Update (download); }
public async void FinishedDownload (FinishedDownload finished) { Console.WriteLine("[Downloadanager] FinishedDownload"); Console.WriteLine("[Downloadanager] FinishedDownload Id : {0}", finished.Id); Console.WriteLine("[Downloadanager] FinishedDownload Location : {0}", finished.Location); Download download; bool found = _repo.TryById(finished.Id, out download); if (!found) { var error = new DownloadError { Id = finished.Id, Error = ErrorEnum.FinishedDownload_IdentifierNotFound }; await _bus.SendAsync<DownloadError> (error); return; } bool progressed = download.TryFinish (finished.Location); if (!progressed) { await _bus.SendAsync<DownloadError> (new DownloadError { Id = download.Id, State = download.State, Error = ErrorEnum.FinishedDownload_InvalidState }); return; } _repo.Update (download); await _bus.SendAsync<NotifyProgress> (new NotifyProgress { Url = download.Url, Download = download }); await _bus.SendAsync<NotifyFinish> (new NotifyFinish { Url = download.Url, Download = download, FileLock = finished.FileLock }); }