using System; using System.IO; using System.Threading.Tasks; using Wabbajack.Common; using Wabbajack.Lib.Downloaders; namespace Wabbajack.Lib { public class ManuallyDownloadNexusFile : AUserIntervention { public NexusDownloader.State State { get; } public override string ShortDescription { get; } public override string ExtendedDescription { get; } private TaskCompletionSource _tcs = new TaskCompletionSource(); public Task Task => _tcs.Task; private ManuallyDownloadNexusFile(NexusDownloader.State state) { State = state; } public static async Task Create(NexusDownloader.State state) { var result = new ManuallyDownloadNexusFile(state); return result; } public override void Cancel() { _tcs.SetCanceled(); } public void Resume(Uri s) { _tcs.SetResult(s); } } }