public CDownload(CDownloaderManager manager, DDownloadEventListener downloadEventListener, string url, string targetfilename, DDownloadProgressListener progresseventlistener) { Progress = 0; DownloadManager = manager; DownloadEventListener = downloadEventListener; ProgressEventListener = progresseventlistener; URL = url; FullFileName = targetfilename; FileName = Utils.GetFileNameFromURL(FullFileName); DownloadStatus = EDownloadStatus.none; Downloading = false; }
public CDownload AddDownload(DDownloadEventListener downloadEventListener , string url, string targetfilename, DDownloadProgressListener progresseventlistener) { //url = url.ToLower(); //targetfilename = targetfilename.ToLower(); lock (this) { CDownload download = GetDownloadByFileName(targetfilename); if (download != null) { return(null); } download = new CDownload(this, downloadEventListener, url , targetfilename, progresseventlistener); AllDownloads.Add(download); AllDownloadsByFileName[targetfilename] = download; if (RunningDownloads.Count == 0) { download.StartDownload(); } return(download); } }