private void StartNextUpload() { _curTransfer = null; if (_files.Count < 1) { _isRunning = false; _reset.Set(); return; } foreach (FileTransfer ft in _files) { if (ft.Progress < 100) { _curTransfer = ft; break; } } if (_curTransfer != null) { _curTransfer.Status = FileTransferStatus.InProgress; _wc.UploadFileAsync(new Uri(_uploadLocation), _curTransfer.FullPath); } else { Thread.Sleep(300); } }
private void OnFileDequeued(FileTransfer Transfer) { if (Transfer.Status == FileTransferStatus.InProgress) { _wc.CancelAsync(); } else { _files.Remove(Transfer); } }
public void DequeueFileTransfer(FileTransfer Transfer) { _entryDispatcher.Invoke(DispatcherPriority.Normal, _fileDequeuedEvent, Transfer); }
private void OnFileEnqueued(FileTransfer Transfer) { Transfer.Status = FileTransferStatus.Queued; _files.Add(Transfer); _uploadThread.Start(_entryDispatcher); }
public void AddTransfer(FileTransfer Transfer) { _transfers.Add(Transfer); Transfer.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(Transfer_PropertyChanged); StartTransfer(); }