OF-DL/OF DL/CLI/SpectreProgressReporter.cs

15 lines
454 B
C#

using OF_DL.Services;
using Spectre.Console;
namespace OF_DL.CLI;
/// <summary>
/// Implementation of IProgressReporter that uses Spectre.Console's ProgressTask for CLI output.
/// </summary>
public class SpectreProgressReporter(ProgressTask task) : IProgressReporter
{
private readonly ProgressTask _task = task ?? throw new ArgumentNullException(nameof(task));
public void ReportProgress(long increment) => _task.Increment(increment);
}