aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.Transport/Web/StandardFileDownloader.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/Tango.Transport/Web/StandardFileDownloader.cs')
-rw-r--r--Software/Visual_Studio/Tango.Transport/Web/StandardFileDownloader.cs78
1 files changed, 0 insertions, 78 deletions
diff --git a/Software/Visual_Studio/Tango.Transport/Web/StandardFileDownloader.cs b/Software/Visual_Studio/Tango.Transport/Web/StandardFileDownloader.cs
deleted file mode 100644
index 1b62fc023..000000000
--- a/Software/Visual_Studio/Tango.Transport/Web/StandardFileDownloader.cs
+++ /dev/null
@@ -1,78 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Net;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Tango.Transport.Web
-{
- public class StandardFileDownloader : IWebFileDownloader
- {
- private WebClient _client;
- private TaskCompletionSource<object> _completionSource;
-
- public String Address { get; private set; }
-
- public String FileName { get; private set; }
-
- public event EventHandler<WebFileDownloaderProgressEventArgs> Progress;
-
- public StandardFileDownloader(String address, String fileName)
- {
- Address = address;
- FileName = fileName;
- _client = new WebClient();
- _client.Proxy = null;
- _client.DownloadProgressChanged += _client_DownloadProgressChanged;
- _client.DownloadFileCompleted += _client_DownloadFileCompleted;
-
- _completionSource = new TaskCompletionSource<object>();
- }
-
- private void _client_DownloadFileCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
- {
- if (e.Error != null)
- {
- _completionSource.SetException(e.Error);
- }
- else
- {
- _completionSource.SetResult(true);
- }
- }
-
- public Task Download()
- {
- _client.DownloadFileAsync(new Uri(Address), FileName);
- return _completionSource.Task;
- }
-
- private void _client_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
- {
- Progress?.Invoke(this, new WebFileDownloaderProgressEventArgs()
- {
- Current = e.BytesReceived,
- Total = e.TotalBytesToReceive,
- });
- }
-
- public Task<long> GetFileSize()
- {
- return Task.Factory.StartNew<long>(() =>
- {
- using (var client = new WebClient())
- {
- client.OpenRead(Address);
- Int64 bytes_total = Convert.ToInt64(client.ResponseHeaders["Content-Length"]);
- return bytes_total;
- }
- });
- }
-
- public void Dispose()
- {
- _client.Dispose();
- }
- }
-}