private void CleanUpCachedTask(DownloadTaskInfo cachedTask)
	    {
            downloadTasks.Remove(cachedTask.Task.TaskIdentifier);
            cachedTask.Task.Dispose();
	        cachedTask = null;
	    }
		private void OnError(DownloadTaskInfo taskInfo, NSError error)
		{
			OnFileDownloadFailed(taskInfo.Index, error);
		    CleanUpCachedTask(taskInfo);
		}