Files
VDownload/VDownload.Core/EventArgs/DownloadTaskStatusChangedEventArgs.cs

62 lines
1.7 KiB
C#
Raw Normal View History

2022-05-15 22:13:47 +02:00
using System;
using VDownload.Core.Enums;
namespace VDownload.Core.EventArgs
{
public class DownloadTaskStatusChangedEventArgs : System.EventArgs
{
#region CONSTRUCTORS
public DownloadTaskStatusChangedEventArgs(DownloadTaskStatus status)
{
Status = status;
}
public DownloadTaskStatusChangedEventArgs(DownloadTaskStatus status, DateTime scheduledFor)
{
Status = status;
ScheduledFor = scheduledFor;
}
public DownloadTaskStatusChangedEventArgs(DownloadTaskStatus status, double progress)
{
Status = status;
if (Status == DownloadTaskStatus.Downloading)
{
DownloadingProgress = progress;
}
else if (Status == DownloadTaskStatus.Processing)
{
ProcessingProgress = progress;
}
}
public DownloadTaskStatusChangedEventArgs(DownloadTaskStatus status, TimeSpan elapsedTime)
{
Status = status;
ElapsedTime = elapsedTime;
}
public DownloadTaskStatusChangedEventArgs(DownloadTaskStatus status, Exception exception)
{
Status = status;
Exception = exception;
}
#endregion
#region PROPERTIES
public DownloadTaskStatus Status { get; private set; }
public DateTime ScheduledFor { get; private set; }
public double DownloadingProgress { get; private set; }
public double ProcessingProgress { get; private set; }
public TimeSpan ElapsedTime { get; private set; }
public Exception Exception { get; private set; }
#endregion
}
}